diff options
author | Jessica Paquette <jpaquette@apple.com> | 2017-03-17 22:26:55 +0000 |
---|---|---|
committer | Jessica Paquette <jpaquette@apple.com> | 2017-03-17 22:26:55 +0000 |
commit | ea8cc09be0ea12938387415ec97cb9b11362a6d8 (patch) | |
tree | 1e76fa4a19e25711981b19ccc227407890163612 /clang/unittests/Basic/SourceManagerTest.cpp | |
parent | f7b060bd3e80b68e2aea030cf2e37610ab1afa5e (diff) | |
download | bcm5719-llvm-ea8cc09be0ea12938387415ec97cb9b11362a6d8.tar.gz bcm5719-llvm-ea8cc09be0ea12938387415ec97cb9b11362a6d8.zip |
[Outliner] Add outliner for AArch64
This commit adds the necessary target hooks for outlining in AArch64. It also
refactors the switch statement used in `getMemOpBaseRegImmOfsWidth` into a
more general function, `getMemOpInfo`. This allows the outliner to share that
code without copying and pasting it.
The AArch64 outliner can be run using -mllvm -enable-machine-outliner, as with
the X86-64 outliner.
The test for this pass verifies that the outliner does, in fact outline
functions, fixes up the stack accesses properly, and can correctly generate a
tail call. In the future, this test should be replaced with a MIR test, so that
we can properly test immediate offset overflows in fixed-up instructions.
llvm-svn: 298162
Diffstat (limited to 'clang/unittests/Basic/SourceManagerTest.cpp')
0 files changed, 0 insertions, 0 deletions