Page MenuHomePhabricator

[NFC][AArch64] Move AArch64 MSR/MRS into a new decoder namespace
ClosedPublic

Authored by pratlucas on Nov 19 2020, 2:05 AM.

Details

Summary

This removes the general forms of the AArch64 MSR and MRS instructions
from the same decoding table that contains many more specific
instructions that supersede them. They're now in a separate decoding
table of their own, called "Fallback", which is only consulted in the
event of the main decoder table failing to produce an answer.

This should avoid decoding conflicts on future specialized instructions
in the MSR space.

Patch written by Simon Tatham.

Diff Detail

Unit TestsFailed

TimeTest
80 mslinux > Clangd Unit Tests._/ClangdTests::FindImplementations.CaptureDefintion
Note: Google Test filter = FindImplementations.CaptureDefintion [==========] Running 1 test from 1 test case. [----------] Global test environment set-up.
80 mslinux > Clangd Unit Tests._/ClangdTests::FindImplementations.Inheritance
Note: Google Test filter = FindImplementations.Inheritance [==========] Running 1 test from 1 test case. [----------] Global test environment set-up.
420 mslinux > HWAddressSanitizer-x86_64.TestCases::sizes.cpp
Script: -- : 'RUN: at line 3'; /mnt/disks/ssd0/agent/llvm-project/build/./bin/clang --driver-mode=g++ -m64 -gline-tables-only -fsanitize=hwaddress -fuse-ld=lld -mcmodel=large -mllvm -hwasan-globals -mllvm -hwasan-use-short-granules -mllvm -hwasan-instrument-landing-pads=0 -mllvm -hwasan-instrument-personality-functions /mnt/disks/ssd0/agent/llvm-project/compiler-rt/test/hwasan/TestCases/sizes.cpp -nostdlib++ -lstdc++ -o /mnt/disks/ssd0/agent/llvm-project/build/projects/compiler-rt/test/hwasan/X86_64/TestCases/Output/sizes.cpp.tmp
170 mswindows > Clangd Unit Tests._/ClangdTests_exe::FindImplementations.CaptureDefintion
Note: Google Test filter = FindImplementations.CaptureDefintion [==========] Running 1 test from 1 test case.
170 mswindows > Clangd Unit Tests._/ClangdTests_exe::FindImplementations.Inheritance
Note: Google Test filter = FindImplementations.Inheritance [==========] Running 1 test from 1 test case.

Event Timeline

pratlucas created this revision.Nov 19 2020, 2:05 AM
pratlucas requested review of this revision.Nov 19 2020, 2:05 AM
This revision is now accepted and ready to land.Nov 19 2020, 2:50 AM
This revision was landed with ongoing or failed builds.Dec 17 2020, 5:40 AM
This revision was automatically updated to reflect the committed changes.