[comp.bugs.sys5] MC68020 assembler bug

da@fortune.UUCP (04/07/87)

Index: as Motorola 68020 SYSV 

Description:
	System V, R2 & R3 , Motorola 68020  assembler

	Shortsdi() in sgs/as/common/expand1.c or sgs/as/m32/expand1.c
	(wherever you find expand1.c!)
	will return a random value once enough
	span-dependent-instructions are seen.  The message
	     Table overflow: some optimizations lost (SDIs)
	appears when the limit is reached.  Improper assembly is then
	*possible*.

Repeat-By:
	(Too hard to do without modifying assembler to force bug!)
	Temporarily modify expand1.c to return S_SDI always.
	Bsr to extern is assembled wrong as 16 bit offset.
	The assembler only complains if the target is local.
Fix:
	Initialize the local variable sditype to L_SDI.
_________________________________________________________________
David Anderson                ucbvax!mtxinu!sun!hplabs!fortune!da 
Fortune Systems, Belmont California (415)598-4372 hpda!fortune!da