[PATCH] x86/Intel: fix indirect far jmp/call with operand size specified

Andreas Jaeger aj@suse.de
Fri Feb 22 16:50:00 GMT 2008


"H.J. Lu" <hjl.tools@gmail.com> writes:

> On Thu, Feb 21, 2008 at 05:49:34PM +0100, Andreas Jaeger wrote:
>> "H.J. Lu" <hjl.tools@gmail.com> writes:
>> 
>> > Hi Jan,
>> >
>> > Do you have testcases?
>> 
>> netboot fails with:
>> 
>> runtime.S86: Assembler messages:
>> runtime.S86:388: Error: suffix or operands invalid for `jmp'
>> runtime.S86:393: Error: suffix or operands invalid for `jmp'
>> runtime.S86:398: Error: suffix or operands invalid for `jmp'
>> 
>
> Can you provide a preprocessed source with command line
> options to reproduce it?

The call is:
reger:/usr/src/packages/BUILD/netboot-0.10.2/mknbi-mgl/runtime> gcc -E -nostdinc -I/usr/src/packages/BUILD/netboot-0.10.2/include -I/usr/src/packages/BUILD/netboot-0.10.2/mknbi-mgl -x assembler-with-cpp -traditional-cpp -C -P -DHAVE_CONFIG_H -D_ASSEMBLY_ -D_TARGET_   -o runtime.s86 runtime.S86
reger:/usr/src/packages/BUILD/netboot-0.10.2/mknbi-mgl/runtime> /usr/i586-suse-linux/bin/as  -o runtime.o86 runtime.s86

runtime.S86: Assembler messages:
runtime.S86:388: Error: suffix or operands invalid for `jmp'
runtime.S86:393: Error: suffix or operands invalid for `jmp'
runtime.S86:398: Error: suffix or operands invalid for `jmp'

I'm appending the runtime.s86 file.

The lines with problems are the following:

	jmp	dword ptr cs:[oldi0]    # line 388

3:	cmp	si,0x0005
	jne	4f
	pop	si			# call old interrupt 4
	jmp	dword ptr cs:[oldi4]    # line 393

4:	cmp	si,0x0004
	jne	6f
	pop	si			# call old interrupt 5
	jmp	dword ptr cs:[oldi5]    # line 398


Andreas

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: runtime.s86
URL: <https://sourceware.org/pipermail/binutils/attachments/20080222/f21f36f4/attachment.ksh>
-------------- next part --------------

-- 
 Andreas Jaeger, Director Platform/openSUSE, aj@suse.de
  SUSE LINUX Products GmbH, GF: Markus Rex, HRB 16746 (AG N?rnberg)
   Maxfeldstr. 5, 90409 N?rnberg, Germany
    GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 188 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20080222/f21f36f4/attachment.sig>


More information about the Binutils mailing list