https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86939
--- Comment #3 from Peter Bergner <bergner at gcc dot gnu.org> --- Author: bergner Date: Sat Oct 6 02:12:30 2018 New Revision: 264897 URL: https://gcc.gnu.org/viewcvs?rev=264897&root=gcc&view=rev Log: gcc/ PR rtl-optimization/86939 PR rtl-optimization/87479 * ira.h (non_conflicting_reg_copy_p): New prototype. * ira-lives.c (ignore_reg_for_conflicts): New static variable. (make_hard_regno_dead): Don't add conflicts for register ignore_reg_for_conflicts. (make_object_dead): Likewise. (non_conflicting_reg_copy_p): New function. (process_bb_node_lives): Set ignore_reg_for_conflicts for copies. Remove special conflict handling of REAL_PIC_OFFSET_TABLE_REGNUM. * lra-lives.c (ignore_reg_for_conflicts): New static variable. (make_hard_regno_dead): Don't add conflicts for register ignore_reg_for_conflicts. Remove special conflict handling of REAL_PIC_OFFSET_TABLE_REGNUM. Remove now unused argument check_pic_pseudo_p and update callers. (mark_pseudo_dead): Don't add conflicts for register ignore_reg_for_conflicts. (process_bb_lives): Set ignore_reg_for_conflicts for copies. gcc/testsuite/ PR rtl-optimization/86939 PR rtl-optimization/87479 * gcc.target/powerpc/pr86939.c: New test. * gcc/testsuite/gcc.target/i386/pr49095.c: Fix expected results. Added: trunk/gcc/testsuite/gcc.target/powerpc/pr86939.c Modified: trunk/gcc/ChangeLog trunk/gcc/ira-lives.c trunk/gcc/ira.h trunk/gcc/lra-lives.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.target/i386/pr49095.c