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]

gcse.c patch


This patch makes sure that the proper expander is called when gcse
creates a move insn, which is important e.g. when the move insn
pattern includes clobbers of MATCH_SCRATCHes.

Approved by Richard Henderson.  Bootstrapped on i686-pc-linux-gnu.

Mon Jul 16 18:07:07 2001  J"orn Rennecke <amylaar@redhat.com>

	* gcse.c (pre_insert_copy_insn): Use gen_move_insn instead of
	gen_rtx_SET.

Index: gcse.c
===================================================================
RCS file: /cvs/gcc/egcs/gcc/gcse.c,v
retrieving revision 1.134
diff -p -r1.134 gcse.c
*** gcse.c	2001/07/11 16:11:47	1.134
--- gcse.c	2001/07/16 17:07:31
*************** pre_insert_copy_insn (expr, insn)
*** 4927,4934 ****
    if (!set)
      abort ();
  
!   new_insn = emit_insn_after (gen_rtx_SET (VOIDmode, reg, SET_DEST (set)),
! 			      insn);
  
    /* Keep block number table up to date.  */
    set_block_for_new_insns (new_insn, bb);
--- 4927,4933 ----
    if (!set)
      abort ();
  
!   new_insn = emit_insn_after (gen_move_insn (reg, SET_DEST (set)), insn);
  
    /* Keep block number table up to date.  */
    set_block_for_new_insns (new_insn, bb);


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