[globalisel][legalizerinfo] Add support for the Lower action in getActionDefinitionsB...
authorDaniel Sanders <daniel_l_sanders@apple.com>
Mon, 9 Apr 2018 21:10:09 +0000 (21:10 +0000)
committerDaniel Sanders <daniel_l_sanders@apple.com>
Mon, 9 Apr 2018 21:10:09 +0000 (21:10 +0000)
commit5281b02e8492e1bce75860404a7c0aeedc3fe17a
tree5131c4ba77ca9df755b7990ecdb54fb9f6d8c34d
parent97b6b1b926588c0b8c91744bdb6d073f44b93f1b
[globalisel][legalizerinfo] Add support for the Lower action in getActionDefinitionsBuilder() and use it in AArch64.

Lower is slightly odd. It often doesn't change the type but the lowerings
do use the new type to decide what code to create. Treat it like a mutation
but provide convenience functions that re-use the existing type.

Re-uses the existing tests:
test/CodeGen/AArch64/GlobalISel/legalize-rem.mir
test/CodeGen/AArch64/GlobalISel//legalize-mul.mir
test/CodeGen/AArch64/GlobalISel//legalize-cmpxchg-with-success.mir

llvm-svn: 329623
llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
llvm/lib/CodeGen/GlobalISel/LegalizeMutations.cpp
llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
llvm/lib/Target/AArch64/AArch64LegalizerInfo.cpp