This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: assembler assention failure
- To: Per Bothner <per at bothner dot com>
- Subject: Re: assembler assention failure
- From: amodra at one dot net dot au
- Date: Tue, 1 May 2001 10:49:51 +0930
- Cc: gcc-bugs at gcc dot gnu dot org
- References: <m2hez6kxih.fsf@kelso.bothner.com>
On Mon, Apr 30, 2001 at 12:17:42PM -0700, Per Bothner wrote:
>
> The offending line 19119 is:
> pushl 4+_CD_gnu_kawa_slib_java-classes@GOTOFF(%ebx)
>
> I don't know enough about the i386 abi and assembler to know
> whether this is valid or not.
It's not valid to have "expr@GOTOFF" where "expr" resolves to
something other than "symbol + offset". Here you've got two
symbols, so "classes" would have to resolve to an absolute
constant. Furthermore, with the current gas implementation,
"classes" would need to be defined before the reference.
I'll remove the assert from i386_displacement and replace it
with a fatal error message, as it's clearly not some sort of
internal gas error but user input that is causing the problem.
Alan