aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorMomchil Velikov <momchil.velikov@arm.com>2020-02-07 11:38:46 +0000
committerMomchil Velikov <momchil.velikov@arm.com>2020-02-07 12:19:57 +0000
commita2531081b3855ba8c60b340c1721e91d7288cfde (patch)
tree5d16e5066e1e1e2c3452358167cde534e14bcd2e /clang/lib/Frontend/CompilerInvocation.cpp
parent6064f426a18304e16b51cc79e74c9c2d55ef5a9c (diff)
downloadllvm-a2531081b3855ba8c60b340c1721e91d7288cfde.zip
llvm-a2531081b3855ba8c60b340c1721e91d7288cfde.tar.gz
llvm-a2531081b3855ba8c60b340c1721e91d7288cfde.tar.bz2
[AArch64] Predictably disassemble system registers with the same encoding
The registers TRCEXTINSELR and TRCEXTINSELR0 are distinct registers, defined by separate extension specifications (ETM and ETE, respectively), yet they use the same encoding in MSR/MRS. When performing a system register lookup by encoding, we would essentially return a random one, depending on the number, relative position in the TableGen file, whether the TableGen records for system registers are named or not, and, if they are named, depending on record (not register!) name as well. This patch works around the issue by explictly checking for the TRCEXTINSELR/TRCEXTINSELR0 encoding and always returning TRCEXTINSELR. Differential Revision: https://reviews.llvm.org/D74074
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions