* expmed.h (canonicalize_comparison): New declaration.
commit576bc6e9e0b985c73ad30bda5ceda80a739dcbee
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 16 Aug 2018 16:33:43 +0000 (16 16:33 +0000)
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 16 Aug 2018 16:33:43 +0000 (16 16:33 +0000)
treeab7980e4a0ea136a6da132a6eaa6bd5bad54c76d
parent009d78d802de7db552a83481583e2d905d40733c
* expmed.h (canonicalize_comparison): New declaration.
* expmed.c (canonicalize_comparison, equivalent_cmp_code): New function.
* expmed.c (emit_store_flag_1): Add call to canonicalize_comparison.
* optabs.c (prepare_cmp_insn): Likewise.
* rtl.h (unsigned_condition_p): New function which checks if a
comparison operator is unsigned.

* gcc.target/aarch64/imm_choice_comparison.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@263591 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/expmed.c
gcc/expmed.h
gcc/optabs.c
gcc/rtl.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/aarch64/imm_choice_comparison.c [new file with mode: 0644]