bug in System V c compiler for 3b2

Dennis D. Jurgensen ddj at mtx5a.UUCP
Thu May 22 07:57:51 AEST 1986


*** REPLACE THIS LINE WITH YOUR MESSAGE ***

I compiled a 68000 cross-compiler on a 3b2 successfully I thought.
However when I tried to use it to compile some floating point
libraries the compiler core-dumped due to an illegal instruction.
Here is the sdb output:

Source path: .:Mcc:mip
No core image
*makety:1341 b
*Breakpoint at
makety:1341: 			if( ISUNSIGNED(pt) ){
*0x808088a6 (makety:1341+3):  	BGUB    0x11 <808088b7>	[0x11]
*0x808088a8 (makety:1341+5):  	CMPW    &0xc,0(%fp)	[0xc]
*0x808088ab (makety:1341+8):  	BLUB    0xc <808088b7>	[0xc]
*0x808088b7 (makety:1345):  	MOVWD   0x2c(%r8),%r0	[p,%r0]
*  r0/ 7           	  r1/ 0xfffffff2  	  r2/ 0x29        
  r3/ 0x80896bc0  	  r4/ 0x80896b8c  	  r5/ 4           
  r6/ 7           	  r7/ 0x72        	  r8/ 0x80896bc0  
  ap/ 0xc00205c0  	  fp/ 0xc00205f4  	  sp/ 0xc00205f8  
 psw/ 0x241f0b    	  pc/ 0x808088b7  
0x808088b7 (makety:1345):  	MOVWD   0x2c(%r8),%r0	[p,%r0]
*0x80896bc0
*Illegal Instruction (4) (sig 4)
 - core dumped
Process terminated
*

The c statement that is involved is:
	p->fpn.dval = p->tn.lval;

where fpn and tn are structures in an union and dval is a double
and lval is a long. Here is the disassembly of the c statement.

[37]	2111:  85 c8 2c 40                   MOVWD   0x2c(%r8),%r0
	2115:  a5 40 c8 14                   MOVDD   %r0,0x14(%r8)

if somebody could tell me what is wrong with the instruction,
i.e. is the opcode invalid, is the addressing mode invalid, etc.
and if so is there a fix for this problem please send mail to
{ihnp4!}[mtuxo, mtx5a, mtx5c]!ddj
Thank you in advance.
Dennis D. Jurgensen



More information about the Comp.unix.wizards mailing list