On Tue, Jul 26, 2011 at 10:26 AM, Uros Bizjak <ubiz...@gmail.com> wrote: > On Tue, Jul 26, 2011 at 4:59 PM, H.J. Lu <hongjiu...@intel.com> wrote: > >> This patch fixes PIC with external symbol and updates >> x86_64_immediate_operand/x86_64_zext_immediate_operand/x86_64_movabs_operand >> for x32. > >> 2011-07-26 H.J. Lu <hongjiu...@intel.com> >> >> PR target/49853 >> * config/i386/i386.c (ix86_expand_move): Call convert_to_mode >> on legitimize_tls_address return if needed. Allow ptr_mode for >> symbolic operand with PIC. > > Eh... half of your patch is just an unnecessary rename of a temporary > variable. See attached patch for a cleaned-up version.
It looks good to me. Can you check it in? > Also, please use explicit DImode and SImode checks to match what > ix86_legitimate_address_p does. > >> * config/i386/predicates.md (x86_64_immediate_operand): Always >> allow the offsetted memory references for TARGET_X32. >> (x86_64_zext_immediate_operand): Likewise. >> (x86_64_movabs_operand): Don't allow nonmemory_operand for >> TARGET_X32. > > Why? It is certainly not needed for -fPIC. Please provide a separate > patch and testcase for predicates.md change. > I will submit them separately with some testcases after your patch is checked in. Thanks. -- H.J.