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]
Other format: [Raw text]

Re: [3.4-BIB] updated patch for x86_64 PIC


> On Mon, Nov 11, 2002 at 11:35:59PM +0100, Jan Hubicka wrote:
> > Hi,
> > this is updated patch I sent some time ago with some changes suggested
> > by Jakub.  It's purpose is to make the whole code more consistent so it
> > will be easier to understand I hope and it produces better code in some
> > side cases.
> 
> Shouldn't this go to 3.3, not 3.4-BIB?
I would by happy to see this in 3.3 too.
Why I marked it as 3.4-BIB was that I didn't suceeded to reproduce
compilation crash in the side corners as reload always managed to fix
the insn chain, but I guess new patch is more safe and it is thoroughly
tested, so I guess I will leave decision to the reviewer (Richard :)
> My understanding is that the patch is more about correctness in corner cases
> (though we haven't been able to come up with a testcase), not optimization
> (again, haven't seen better code generated with this
> patch, but neither worse).
I was testing this on a large file and on combine it managed to save few
instructions, but definitly nothing important.

Honza
> 
> > Tue Oct 29 23:41:46 CET 2002  Jan Hubicka  <jh@suse.cz>
> > 
> > 	* i386-protos.h (x86_64_sign_extended_value): Fix prototype.
> > 	* i386.c (x86_64_general_operand, x86_64_szext_general_operand,
> > 	x86_64_nonmemory_operand, x86_64_movabs_operand, 
> > 	x86_64_szext_nonmemory_operand, x86_64_immediate_operand,
> > 	ix86_expand_int_movcc): Update call of x86_64_sign_extended_value.
> > 	(local_symbolic_operand): Do not care the 64bit limits.
> > 	(x86_64_sign_extended_value): Remove allow_rip support.
> > 	(legitimate_pic_address_disp_p): Handle all cases allowed
> > 	with RIP addressing.
> > 	(legitimate_address_p): Use legitimate_pic_address_disp_p for PIC.
> > 	(legitimize_pic_address): Reorganize.
> > 	* i386.h (EXTRA_CONSTRAINT): Update call of x86_64_sign_extended_value.
> 
> 	Jakub


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