diff options
author | Peter Waller <peter.waller@arm.com> | 2021-05-12 14:47:22 +0000 |
---|---|---|
committer | Peter Waller <peter.waller@arm.com> | 2021-05-20 16:22:50 +0000 |
commit | 2d574a110440597eefe1b2a8b6144e4e89c21d05 (patch) | |
tree | 7eb4e87e0ccc2f0620b44db6eabcf5be41659ea9 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | f34311c4024d07246128352241ff360173c68f87 (diff) | |
download | llvm-2d574a110440597eefe1b2a8b6144e4e89c21d05.zip llvm-2d574a110440597eefe1b2a8b6144e4e89c21d05.tar.gz llvm-2d574a110440597eefe1b2a8b6144e4e89c21d05.tar.bz2 |
[CodeGen][AArch64][SVE] Canonicalize intrinsic rdffr{ => _z}
Follow up to D101357 / 3fa6510f6.
Supersedes D102330.
Goal: Use flags setting rdffrs instead of rdffr + ptest.
Problem: RDFFR_P doesn't have have a flags setting equivalent.
Solution: in instcombine, canonicalize to RDFFR_PP at the IR level, and
rely on RDFFR_PP+PTEST => RDFFRS_PP optimization in
AArch64InstrInfo::optimizePTestInstr.
While here:
* Test that rdffr.z+ptest generates a rdffrs.
* Use update_{test,llc}_checks.py on the tests.
* Use sve attribute on functions.
Differential Revision: https://reviews.llvm.org/D102623
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions