newlib-1.6.1 shows bug in m68k-coff-as

Alan Modra
Tue Jul 4 18:23:00 GMT 1995

This one came up when I decided to try out the latest assembler on
newlib-1.6.1.  gas was configured with
./configure --prefix=/usr --target=m68k-coff --host=i486-linux

$ cd /usr/tmp/newlib-1.6.1/newlib/libm/math

$ m68k-coff-gcc -g -pipe -O2 -DMISSING_SYSCALL_NAMES -fno-builtin
-I/usr/tmp/newlib-1.6.1/newlib/./libc/include -S k_standard.c

$ /usr/tmp/gas-950704/gas/ -o /dev/null k_standard.s
k_standard.s: Assembler messages:
k_standard.s:297: Error: Value of -784 too large for field of 1 bytes at 0x317
k_standard.s:297: Error: value out of range

An older gas works ok

$ m68k-coff-as --version
GNU assembler version 950530 (m68k-coff)

$ m68k-coff-as -o /dev/null k_standard.s

The relevant lines from k_standard.s
	.set .LI381,.+2
	move.w .L381-.LI381.b(%pc,%a1.l*2),%d0
	jmp %pc@(2,%d0:w)

If anyone wants all of k_standard.s, just ask.

More information about the Gas2 mailing list