]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR target/70668 (nds32-elf toolchain fails to compile on OSX)
authorChung-Ju Wu <jasonwucj@gmail.com>
Tue, 10 Jan 2017 04:23:35 +0000 (04:23 +0000)
committerChung-Ju Wu <jasonwucj@gcc.gnu.org>
Tue, 10 Jan 2017 04:23:35 +0000 (04:23 +0000)
Fix PR70668.

Backport from mainline
2016-04-28  Segher Boessenkool  <segher@kernel.crashing.org>

PR target/70668
* config/nds32/nds32.md (casesi): Don't access the operands array
out of bounds.

From-SVN: r244258

gcc/ChangeLog
gcc/config/nds32/nds32.md

index 0b0c098f33248139a232c11835f9a55b77b88ac2..13ceb88ddce7e46448f2438534def06de3be02fc 100644 (file)
@@ -1,3 +1,12 @@
+2017-01-10  Chung-Ju Wu  <jasonwucj@gmail.com>
+
+       Backport from mainline
+       2016-04-28  Segher Boessenkool  <segher@kernel.crashing.org>
+
+       PR target/70668
+       * config/nds32/nds32.md (casesi): Don't access the operands array
+       out of bounds.
+
 2017-01-09  Andreas Tobler  <andreast@gcc.gnu.org>
 
        Backport from mainline
index 64823a13a47f307cb23f32f36b9996d4151f2e54..4df5c59c27baf84f0fa7cc51a0dc64149cb58f32 100644 (file)
@@ -2289,11 +2289,9 @@ create_template:
   emit_jump_insn (gen_cbranchsi4 (test, operands[0], operands[2],
                                  operands[4]));
 
-  operands[5] = gen_reg_rtx (SImode);
-  /* Step C, D, E, and F, using another temporary register operands[5].  */
-  emit_jump_insn (gen_casesi_internal (operands[0],
-                                      operands[3],
-                                      operands[5]));
+  /* Step C, D, E, and F, using another temporary register.  */
+  rtx tmp = gen_reg_rtx (SImode);
+  emit_jump_insn (gen_casesi_internal (operands[0], operands[3], tmp));
   DONE;
 })