From: Wilco Dijkstra Date: Wed, 17 Feb 2016 11:52:35 +0000 (+0000) Subject: As part of the final cleanup of aarch64_internal_mov_immediate a return was accidenta... X-Git-Tag: basepoints/gcc-7~900 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1312b1ba114f41bf477db50b516f806a8e688978;p=thirdparty%2Fgcc.git As part of the final cleanup of aarch64_internal_mov_immediate a return was accidentally removed. As part of the final cleanup of aarch64_internal_mov_immediate a return was accidentally removed. This causes the 2-instruction case to fallthrough into the general case even when it found a match. An example immediate is 0xcccccccccccccccd which was using 2 instructions in GCC5 but now requires 4. Adding the return fixes the regressions. 2016-02-17 Wilco Dijkstra gcc/ * config/aarch64/aarch64.c (aarch64_internal_mov_immediate): Add missing return. From-SVN: r233490 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2178ae6095d4..607b33fa2e42 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2016-02-17 Wilco Dijkstra + + * config/aarch64/aarch64.c (aarch64_internal_mov_immediate): + Add missing return. + 2016-02-17 Eric Botcazou * config/visium/visium.c (machine_libfunc_index): New enum. diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index df7023f6c1ad..923a4b315428 100644 --- a/gcc/config/aarch64/aarch64.c +++ b/gcc/config/aarch64/aarch64.c @@ -1632,6 +1632,7 @@ aarch64_internal_mov_immediate (rtx dest, rtx imm, bool generate, emit_insn (gen_insv_immdi (dest, GEN_INT (i), GEN_INT ((val >> i) & 0xffff))); } + return 2; } }