Hi Richard,
On 11/14/19 10:07 AM, Richard Henderson wrote:
I've put the implementation into config/arm/aarch-common.c, so
that it can be shared between the two targets. This required
a little bit of cleanup to the CC modes and constraints to get
the two targets to match up.
Changes for v2:
* Document overflow flags.
* Add "hs" and "lo" as aliases of "cs" and "cc".
* Add unsigned cmp tests to asm-flag-6.c.
Richard Sandiford has given his ack for the aarch64 side.
I'm still looking for an ack for the arm side.
The arm parts look good to me, there's not too much arm-specific stuff
that's not shared with aarch64 thankfully.
Thanks,
Kyrill
r~
Richard Henderson (6):
aarch64: Add "c" constraint
arm: Fix the "c" constraint
arm: Rename CC_NOOVmode to CC_NZmode
arm, aarch64: Add support for __GCC_ASM_FLAG_OUTPUTS__
arm: Add testsuite checks for asm-flag
aarch64: Add testsuite checks for asm-flag
gcc/config/arm/aarch-common-protos.h | 6 +
gcc/config/aarch64/aarch64-c.c | 2 +
gcc/config/aarch64/aarch64.c | 3 +
gcc/config/arm/aarch-common.c | 136 +++++++++++++
gcc/config/arm/arm-c.c | 1 +
gcc/config/arm/arm.c | 15 +-
gcc/testsuite/gcc.target/aarch64/asm-flag-1.c | 35 ++++
gcc/testsuite/gcc.target/aarch64/asm-flag-3.c | 38 ++++
gcc/testsuite/gcc.target/aarch64/asm-flag-5.c | 30 +++
gcc/testsuite/gcc.target/aarch64/asm-flag-6.c | 62 ++++++
gcc/testsuite/gcc.target/arm/asm-flag-1.c | 36 ++++
gcc/testsuite/gcc.target/arm/asm-flag-3.c | 38 ++++
gcc/testsuite/gcc.target/arm/asm-flag-5.c | 30 +++
gcc/testsuite/gcc.target/arm/asm-flag-6.c | 62 ++++++
gcc/config/aarch64/constraints.md | 4 +
gcc/config/arm/arm-modes.def | 4 +-
gcc/config/arm/arm.md | 186 +++++++++---------
gcc/config/arm/constraints.md | 5 +-
gcc/config/arm/predicates.md | 2 +-
gcc/config/arm/thumb1.md | 8 +-
gcc/config/arm/thumb2.md | 34 ++--
gcc/doc/extend.texi | 39 ++++
22 files changed, 651 insertions(+), 125 deletions(-)
create mode 100644 gcc/testsuite/gcc.target/aarch64/asm-flag-1.c
create mode 100644 gcc/testsuite/gcc.target/aarch64/asm-flag-3.c
create mode 100644 gcc/testsuite/gcc.target/aarch64/asm-flag-5.c
create mode 100644 gcc/testsuite/gcc.target/aarch64/asm-flag-6.c
create mode 100644 gcc/testsuite/gcc.target/arm/asm-flag-1.c
create mode 100644 gcc/testsuite/gcc.target/arm/asm-flag-3.c
create mode 100644 gcc/testsuite/gcc.target/arm/asm-flag-5.c
create mode 100644 gcc/testsuite/gcc.target/arm/asm-flag-6.c
--
2.17.1