[PATCH] D82780: [AArch64][SVE] Put zeroing pseudos and patterns under flag.
Paul Walker via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 1 13:32:12 PDT 2020
paulwalker-arm added inline comments.
================
Comment at: llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td:1267-1272
+ defm ASR_ZPmZ : sve_int_bin_pred_shift<0b000, "asr", "ASR_ZPZZ", AArch64asr_m1, "ASRR_ZPmZ", /*isReverseInstr*/ 0>;
+ defm LSR_ZPmZ : sve_int_bin_pred_shift<0b001, "lsr", "LSR_ZPZZ", AArch64lsr_m1, "LSRR_ZPmZ", /*isReverseInstr*/ 0>;
+ defm LSL_ZPmZ : sve_int_bin_pred_shift<0b011, "lsl", "LSL_ZPZZ", AArch64lsl_m1, "LSLR_ZPmZ", /*isReverseInstr*/ 0>;
+ defm ASRR_ZPmZ : sve_int_bin_pred_shift<0b100, "asrr", "ASRR_ZPZZ", null_frag, "ASR_ZPmZ", /*isReverseInstr*/ 1>;
+ defm LSRR_ZPmZ : sve_int_bin_pred_shift<0b101, "lsrr", "LSRR_ZPZZ", null_frag, "LSR_ZPmZ", /*isReverseInstr*/ 1>;
+ defm LSLR_ZPmZ : sve_int_bin_pred_shift<0b111, "lslr", "LSLR_ZPZZ", null_frag, "LSL_ZPmZ", /*isReverseInstr*/ 1>;
----------------
(RE: isReverseInstr) It looks like you missed reverting this part of the patch.
================
Comment at: llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td:2284-2285
+ let Predicates = [HasSVE2, UseExperimentalZeroingPseudos] in {
+ defm SQSHL_ZPZI : sve_int_bin_pred_shift_imm_left_zeroing_bhsd<null_frag>;
+ defm UQSHL_ZPZI : sve_int_bin_pred_shift_imm_left_zeroing_bhsd<null_frag>;
+ defm SRSHR_ZPZI : sve_int_bin_pred_shift_imm_right_zeroing_bhsd<int_aarch64_sve_srshr>;
----------------
Given the use of null_frag, do these entries do anything useful?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D82780/new/
https://reviews.llvm.org/D82780
More information about the llvm-commits
mailing list