diff options
author | Bin Cheng <bin.cheng@arm.com> | 2016-08-11 10:01:03 +0000 |
---|---|---|
committer | Bin Cheng <amker@gcc.gnu.org> | 2016-08-11 10:01:03 +0000 |
commit | bb2767763e5c1c2ad2846c4c48aff4c7b00f2f4e (patch) | |
tree | 28d734dd2b5c0982616367534fb0a714a98fb21b | |
parent | 183ac6d0d295cedffd0e7971151008e9a411f345 (diff) | |
download | gcc-bb2767763e5c1c2ad2846c4c48aff4c7b00f2f4e.zip gcc-bb2767763e5c1c2ad2846c4c48aff4c7b00f2f4e.tar.gz gcc-bb2767763e5c1c2ad2846c4c48aff4c7b00f2f4e.tar.bz2 |
aarch64-simd.md (vec_cmp<mode><v_cmp_result>): Init variable explicitly, also assert on it before use.
* config/aarch64/aarch64-simd.md (vec_cmp<mode><v_cmp_result>: Init
variable explicitly, also assert on it before use.
From-SVN: r239358
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64-simd.md | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4984f50..5c618dc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2016-08-11 Bin Cheng <bin.cheng@arm.com> + + * config/aarch64/aarch64-simd.md (vec_cmp<mode><v_cmp_result>: Init + variable explicitly, also assert on it before use. + 2016-08-11 Richard Biener <rguenther@suse.de> PR tree-optimization/72772 diff --git a/gcc/config/aarch64/aarch64-simd.md b/gcc/config/aarch64/aarch64-simd.md index 37d397c..3817895 100644 --- a/gcc/config/aarch64/aarch64-simd.md +++ b/gcc/config/aarch64/aarch64-simd.md @@ -2413,7 +2413,7 @@ enum rtx_code code = GET_CODE (operands[1]); rtx tmp = gen_reg_rtx (<V_cmp_result>mode); - rtx (*comparison) (rtx, rtx, rtx); + rtx (*comparison) (rtx, rtx, rtx) = NULL; switch (code) { @@ -2495,6 +2495,7 @@ a UNLE b -> !(a GT b) a UNLT b -> !(a GE b) a NE b -> !(a EQ b) */ + gcc_assert (comparison != NULL); emit_insn (comparison (operands[0], operands[2], operands[3])); emit_insn (gen_one_cmpl<v_cmp_result>2 (operands[0], operands[0])); break; @@ -2511,6 +2512,7 @@ a LE b -> b GE a a LT b -> b GT a a EQ b -> a EQ b */ + gcc_assert (comparison != NULL); emit_insn (comparison (operands[0], operands[2], operands[3])); break; |