aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain/gcc/patches/4.6-linaro/030-gcc_bug_48403.patch
blob: 69569de7637547dc4b1158c22b4ae162746a046d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
--- a/gcc/haifa-sched.c
+++ b/gcc/haifa-sched.c
@@ -4654,10 +4654,12 @@ schedule_block (basic_block *target_bb)
 
 	  if (recog_memoized (insn) >= 0)
 	    {
+	      memcpy (temp_state, curr_state, dfa_state_size);
 	      cost = state_transition (curr_state, insn);
 	      if (sched_pressure != SCHED_PRESSURE_WEIGHTED)
 		gcc_assert (cost < 0);
-	      cycle_issued_insns++;
+	      if (memcmp (temp_state, curr_state, dfa_state_size) != 0)
+		cycle_issued_insns++;
 	      asm_p = false;
 	    }
 	  else