[AArch64][SVE] Add optimization to remove redundant ptest instructions
authorBradley Smith <bradley.smith@arm.com>
Mon, 14 Dec 2020 15:31:50 +0000 (15:31 +0000)
committerBradley Smith <bradley.smith@arm.com>
Tue, 5 Jan 2021 15:28:36 +0000 (15:28 +0000)
commitc73ae747cb0c5546ac4a91a9609d5407e5b03897
tree4069405167cd9aad2da93ba8a35b8fb8423f0039
parentfec1a442e3b12fc01929b2b405d1abf7df9ab68e
[AArch64][SVE] Add optimization to remove redundant ptest instructions

Co-Authored-by: Graham Hunter <graham.hunter@arm.com>
Co-Authored-by: Paul Walker <paul.walker@arm.com>
Differential Revision: https://reviews.llvm.org/D93292
27 files changed:
llvm/lib/Target/AArch64/AArch64InstrFormats.td
llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
llvm/lib/Target/AArch64/AArch64InstrInfo.h
llvm/lib/Target/AArch64/SVEInstrFormats.td
llvm/test/CodeGen/AArch64/sve-ptest-removal-brk.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpeq.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpeq.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpge.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpgt.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmphi.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmphs.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmple.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmplo.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpls.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmplt.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-cmpne.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-whilege.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-whilegt.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-whilehi.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-whilehs.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-whilele.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-whilelo.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-whilels.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-whilelt.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-whilerw.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-ptest-removal-whilewr.mir [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-setcc.ll