On Fri, Oct 10, 2014 at 9:43 AM, Evgeny Stupachenko <evstu...@gmail.com> wrote: > i386 specific part of the patch: > > 2014-10-08 Ilya Enkovich <ilya.enkov...@intel.com> > Vladimir Makarov <vmaka...@redhat.com> > * gcc/config/i386/i386.c (ix86_use_pseudo_pic_reg): New. > (ix86_init_pic_reg): New. > (ix86_select_alt_pic_regnum): Add check on pseudo register. > (ix86_save_reg): Likewise. > (ix86_expand_prologue): Remove irrelevant code.
Please mention *which* code you removed here. > (ix86_output_function_epilogue): Add check on pseudo register. > (set_pic_reg_ever_alive): New. > (legitimize_pic_address): Replace df_set_regs_ever_live with new > set_pic_reg_ever_alive. > (legitimize_tls_address): Likewise. > (ix86_pic_register_p): New check. > (ix86_delegitimize_address): Add check on pseudo register. > (ix86_expand_call): Insert move from pseudo PIC register to ABI > defined REAL_PIC_OFFSET_TABLE_REGNUM. > (TARGET_INIT_PIC_REG): New. > (TARGET_USE_PSEUDO_PIC_REG): New. > (PIC_OFFSET_TABLE_REGNUM): New check. This is not "New check", but changed one. Please mention *what* changed. - if (pic_offset_table_rtx) + if (pic_offset_table_rtx + && (!reload_completed || !ix86_use_pseudo_pic_reg ())) Hm, can you please add a comment for this change? Uros.