Re: RFC: LRA for x86/x86-64 [4/9]

2012-10-02 Thread Vladimir Makarov
On 10/01/2012 02:51 PM, Richard Sandiford wrote: Vladimir Makarov writes: +/* Return register bank of given hard regno for the current target. */ +DEFHOOK +(register_bank, + "A target hook which returns the register bank number to which the\ + register @var{hard_regno} belongs to. The smalle

Re: RFC: LRA for x86/x86-64 [4/9]

2012-10-01 Thread Jeff Law
On 09/27/2012 07:44 PM, Vladimir Makarov wrote: On 09/27/2012 08:07 PM, Joseph S. Myers wrote: On Thu, 27 Sep 2012, Vladimir Makarov wrote: Hook spill_class returns a value of enum reg_class which is defined in target-depend include file. That's what reg_class_t is for: avoiding enum reg_clas

Re: RFC: LRA for x86/x86-64 [4/9]

2012-10-01 Thread Paul_Koning
On Oct 1, 2012, at 2:51 PM, Richard Sandiford wrote: > ... > E.g. for MIPS, SImode loads and stores have a displacement range of > [-32768, 32764], but DImode loads and stores only accept [-32768, 32760]. > So the maximal displacement depends on mode, even though the instruction set > is pretty r

Re: RFC: LRA for x86/x86-64 [4/9]

2012-10-01 Thread Richard Sandiford
Thanks a lot for doing this. When you finally get to the stage of "rm reload.c reload1.c", please do it in a screen session and save the log for posterity. Vladimir Makarov writes: > +/* Return register bank of given hard regno for the current target. */ > +DEFHOOK > +(register_bank, > + "A tar

Re: RFC: LRA for x86/x86-64 [4/9]

2012-09-27 Thread Vladimir Makarov
On 09/27/2012 08:07 PM, Joseph S. Myers wrote: On Thu, 27 Sep 2012, Vladimir Makarov wrote: Hook spill_class returns a value of enum reg_class which is defined in target-depend include file. That's what reg_class_t is for: avoiding enum reg_class in hook interfaces. Ok. Thanks for pointing

Re: RFC: LRA for x86/x86-64 [4/9]

2012-09-27 Thread Joseph S. Myers
On Thu, 27 Sep 2012, Vladimir Makarov wrote: > Hook spill_class returns a value of enum reg_class which is defined in > target-depend include file. That's what reg_class_t is for: avoiding enum reg_class in hook interfaces. -- Joseph S. Myers jos...@codesourcery.com

Re: RFC: LRA for x86/x86-64 [4/9]

2012-09-27 Thread Vladimir Makarov
On 09/27/2012 07:05 PM, Joseph S. Myers wrote: On Thu, 27 Sep 2012, Vladimir Makarov wrote: * target.h: Include tm.h. That's a backward step; we'd like parts of the compiler that aren't using target macros directly not to end up including tm.h. Why do you need this? Thanks, Joseph. Ho

Re: RFC: LRA for x86/x86-64 [4/9]

2012-09-27 Thread Joseph S. Myers
On Thu, 27 Sep 2012, Vladimir Makarov wrote: > * target.h: Include tm.h. That's a backward step; we'd like parts of the compiler that aren't using target macros directly not to end up including tm.h. Why do you need this? -- Joseph S. Myers jos...@codesourcery.com

RFC: LRA for x86/x86-64 [4/9]

2012-09-27 Thread Vladimir Makarov
The following patch implements hooks (and their default values) will be used by LRA. 2012-09-27 Vladimir Makarov * target.h: Include tm.h. * targhooks.h (default_lra_p): Declare. (default_register_bank): Ditto. (default_different_addr_displacement_p): Ditto. * targhooks.