RFA: fix SH -m2e newlib build failure of k_standard.c (regression due to store motion enabling)

Joern Rennecke joern.rennecke@superh.com
Mon Apr 7 16:22:00 GMT 2003


A latent bug in store motion has been exposed by re-enabling it.
replace_store_insn takes the SET_SRC of a pattern than can contain
a PARALLEL.  This is, among other instances, the case for SFmode
moves for the SH2E, SH3E, SH4 and SH5 SHcompact mode.

-- 
--------------------------
SuperH (UK) Ltd.
2410 Aztec West / Almondsbury / BRISTOL / BS32 4QX
T:+44 1454 465658
-------------- next part --------------
2003-04-07  J"orn Rennecke <joern.rennecke@superh.com>

	* gcse.c (replace_store_insn): Use single_set.

Index: gcse.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/gcse.c,v
retrieving revision 1.245
diff -p -r1.245 gcse.c
*** gcse.c	5 Apr 2003 15:57:40 -0000	1.245
--- gcse.c	7 Apr 2003 16:11:51 -0000
*************** replace_store_insn (reg, del, bb)
*** 7696,7702 ****
  {
    rtx insn;
  
!   insn = gen_move_insn (reg, SET_SRC (PATTERN (del)));
    insn = emit_insn_after (insn, del);
  
    if (gcse_file)
--- 7696,7702 ----
  {
    rtx insn;
  
!   insn = gen_move_insn (reg, SET_SRC (single_set (del)));
    insn = emit_insn_after (insn, del);
  
    if (gcse_file)


More information about the Gcc-patches mailing list