This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: [RFA:] unconstify md_short_jump_size, md_long_jump_size (was: Re: Gas: making md_long_jump_size mutable)
- From: Ian Lance Taylor <ian at wasabisystems dot com>
- To: Hans-Peter Nilsson <hans-peter dot nilsson at axis dot com>
- Cc: binutils at sources dot redhat dot com
- Date: 03 Nov 2004 20:53:10 -0500
- Subject: Re: [RFA:] unconstify md_short_jump_size, md_long_jump_size (was: Re: Gas: making md_long_jump_size mutable)
- References: <200411030045.iA30jgri021653@ignucius.se.axis.com>
Hans-Peter Nilsson <hans-peter.nilsson@axis.com> writes:
> BTW, beware of the length of asm:s
> when using CASE_VECTOR_SHORTEN_MODE; they *really* should be set
> to max (can be done through define_asm_attributes it seems), so
> that a branch across them can never be "shortened", not set to
> some max length of a normal insn.
I'm working with Thumb code, which already completely breaks if the
code includes asms with the wrong length. The Thumb compiler depends
upon knowing the length of every instruction in order to correctly
pick which branch instruction to use, and in order to place the
constant pools.
In practice I doubt many people use asms with Thumb code, as there
isn't much the Thumb can do which gcc can not do easily enough.
Interesting stuff would probably always be done in ARM mode.
Ian