[all-commits] [llvm/llvm-project] f1ae96: [AArch64][GlobalISel] Fix TLS accesses clobbering ...
AE via All-commits
all-commits at lists.llvm.org
Tue Jul 21 16:01:41 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: f1ae96d9bfb807ded8019e851f2663ef18a4130c
https://github.com/llvm/llvm-project/commit/f1ae96d9bfb807ded8019e851f2663ef18a4130c
Author: Amara Emerson <amara at apple.com>
Date: 2020-07-21 (Tue, 21 Jul 2020)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/darwin-tls-call-clobber.ll
M llvm/test/CodeGen/AArch64/arm64-tls-darwin.ll
Log Message:
-----------
[AArch64][GlobalISel] Fix TLS accesses clobbering registers incorrectly.
This was happening because the BLR didn't have a use of the X0 arg register,
which would end up being re-used in high reg pressure situations.
The change also avoids hard coding the use of X0 for the sequence except to
copy the value for the call. ld64 should still be able to optimize it.
rdar://65438258
Commit: 791544422a446131ef41bb3eef1b7318e7a78c2d
https://github.com/llvm/llvm-project/commit/791544422a446131ef41bb3eef1b7318e7a78c2d
Author: Amara Emerson <amara at apple.com>
Date: 2020-07-21 (Tue, 21 Jul 2020)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
M llvm/lib/Target/AArch64/AArch64Combine.td
R llvm/test/CodeGen/AArch64/GlobalISel/combine-sext-trunc-sextload.mir
Log Message:
-----------
Revert "[AArch64][GlobalISel] Add post-legalize combine for sext_inreg(trunc(sextload)) -> copy"
This reverts commit 64eb3a4915f00cca9af4c305a9ff36209003cd7b.
It caused miscompiles with optimizations enabled. Reverting while I investigate.
Compare: https://github.com/llvm/llvm-project/compare/7a669130f70c...791544422a44
More information about the All-commits
mailing list