Ping.
https://gcc.gnu.org/ml/gcc-patches/2019-05/msg00594.html
Thanks,
Kyrill
On 5/13/19 12:18 PM, Kyrill Tkachov wrote:
Hi Richard,
On 5/9/19 9:06 AM, Richard Sandiford wrote:
Kyrill Tkachov <kyrylo.tkac...@foss.arm.com> writes:
+;; Helper expander for aarch64_<su>abd<mode>_3 to save the callers
+;; the hassle of constructing the other arm of the MINUS.
+(define_expand "<su>abd<mode>_3"
+ [(use (match_operand:VDQ_BHSI 0 "register_operand"))
+ (USMAX:VDQ_BHSI (match_operand:VDQ_BHSI 1 "register_operand")
+ (match_operand:VDQ_BHSI 2 "register_operand"))]
+ "TARGET_SIMD"
+ {
+ rtx other_arm
+ = gen_rtx_<MAX_OPP> (<MODE>mode, operands[1], operands[2]);
+ emit_insn (gen_aarch64_<su>abd<mode>_3 (operands[0], operands[1],
+ operands[2], other_arm));
Should be indented to the innermost "(" instead.
LGTM otherwise, but an AArch6 maintainer should have the final say.
Thanks.
After your recent r271107 I've updated the patch and this helper
pattern is no longer necessary.
This version is shorter and has been bootstrapped and tested on
aarch64-none-linux-gnu.
Thanks,
Kyrill
2019-13-05 Kyrylo Tkachov <kyrylo.tkac...@arm.com>
* config/aarch64/iterators.md (MAX_OPP): New code attr.
* config/aarch64/aarch64-simd.md (*aarch64_<su>abd<mode>_3):
Rename to...
(aarch64_<su>abd<mode>_3): ... This.
(<sur>sadv16qi): Add TARGET_DOTPROD expansion.
2019-13-05 Kyrylo Tkachov <kyrylo.tkac...@arm.com>
* gcc.target/aarch64/ssadv16qi.c: Add +nodotprod to pragma.
* gcc.target/aarch64/usadv16qi.c: Likewise.
* gcc.target/aarch64/ssadv16qi-dotprod.c: New test.
* gcc.target/aarch64/usadv16qi-dotprod.c: Likewise.
Thanks,
Richard