[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: (no subject)
From: |
Nick Clifton |
Subject: |
Re: (no subject) |
Date: |
07 Dec 2001 12:04:29 +0000 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/21.1 |
Hi Shrini,
> arm assembler bug report.
Which version of the assembler ?
> system: sun sparc 5.8
>
> Recently I hit across a problem with the 'asarm' assembler. I get this
> error:
>
> /var/tmp/cct7aq7h.s: Assembler messages
> /var/tmp/cct7aq7h.s: 3381: Error: invalid constant after fixup
>
> I need some help to understand what this error message stands
> for.
A strict interpretation of the messages is that the assembler has
evaluated a "fixup" structure and generated an value which is too big
for the immediate field of an ARM instruction. A "fixup" structure is
created when the assembler encounters a place in the input files where
it cannot immediately compute the relevant bytes to emit into the
output stream. The assembler saves these structures in a list and
then once all the input files have been read (and all the symbols have
been located) it tries to resolve the fixups.
> It definitely has to do with some boundary alignment problem for
> the ADR instructions. The code compiles if I add some NOP
> instructions in the code at particular points.
Do you have a small example that reproduces this problem ?
The most probable reason is that you are using instructions which are
putting constants into the literal pool, but that you do not have a
.litorg directive at a suitable place to dump the literal pool.
Cheers
Nick
- (no subject), TeresaByrne, 2001/12/05
- (no subject), Shrinivas Samant, 2001/12/06
- Re: (no subject),
Nick Clifton <=
- (no subject), jcoleman, 2001/12/07
- (no subject), kcoleman, 2001/12/07
- (no subject), Rimgaudas Laucius, 2001/12/13
- (no subject), Anna Sirko, 2001/12/13
- (no subject), Anna Sirko, 2001/12/13
- (no subject), mailer . daemon, 2001/12/13
- (no subject), dale ranta, 2001/12/19
- (no subject), ̸ad, 2001/12/28