Message ID | 20191114100716.28827-1-richard.henderson@linaro.org |
---|---|
Headers | show |
Series | Implement asm flag outputs for arm + aarch64 | expand |
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 >
On 11/14/19 2:08 PM, Kyrill Tkachov wrote: > 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. Yes indeed. Committed series ending in r278228. Thanks, r~