summaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2020-02-06 18:12:11 +0100
committerHans-Peter Nilsson <hp@axis.com>2020-05-09 04:22:20 +0200
commita33649e66640b35fc69f7f7f47346614a12b12d9 (patch)
tree9fae7681a3be4ef5bc66a9aecc6908b22243b848 /gcc/ChangeLog
parentb73bf8a14dd77531d72426beec22c8e4b80a22a7 (diff)
cris: Enable "neg" to set condition codes.
While gcc seems to prefer transforming tests on the result of reversible operations, into tests on the original, it also can work with the destination, if allocated to the same register as it commonly-enough is. The re-use is easily covered in a test-case. (N.B.: the value 0x80000000 appears to be considered invalid and unimportant.) Spotted as a "microregression" in libgcc when comparing to the cc0 version. gcc: * config/cris/cris.c (cris_select_cc_mode): Return CC_NZmode for NEG too. Correct comment. * config/cris/cris.md ("<anz>neg<mode>2<setnz>"): Rename from "neg<mode>2".
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8f14fdba64a..178973f0e73 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -167,6 +167,11 @@
Handle output of CC_ZnNmode.
("*b<nzcond:code>_reversed<mode>"): Ditto.
+ * config/cris/cris.c (cris_select_cc_mode): Return CC_NZmode for
+ NEG too. Correct comment.
+ * config/cris/cris.md ("<anz>neg<mode>2<setnz>"): Rename from
+ "neg<mode>2".
+
2020-05-08 Vladimir Makarov <vmakarov@redhat.com>
* ira-color.c (update_costs_from_allocno): Remove