This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: literal pool support


It's been rumoured that Richard Henderson said:
> 
> On Wed, Jul 07, 1999 at 06:22:52PM -0400, David Edelsohn wrote:
> > The choice of branch instructions would be based solely on
> > instruction length 

Choice of the branch instruction needs to depend not on the distance
of branch itself, but whether the branch and the target are both within 
4K of the last base register reload.

> > without creating an additional "length"-like
> > attribute. 
> 
> you don't need to create additional length attributes anyway.
> Just insert the literal pool into the rtl.

Well, I want to agree with this last, but I think I see a gotcha.
If we are to keep MVS 'C LE' compatibility, then the pool needs to stay in 
the text section, and the size of the literal could be merged with the 
size of the insn itself.    But if the elf dynamic linking/pic/shared-lib
abi ends up requiring the litpool to be moved out to the data/rodata section, 
then one doesn't want to fiddle the insn sizes this way.  So now I need
to keep two different insn lnegths, one for the MVS LE back end and one 
for the ELF back end.

--linas 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]