diff options
| author | Tim Northover <tnorthover@apple.com> | 2017-02-06 23:41:27 +0000 |
|---|---|---|
| committer | Tim Northover <tnorthover@apple.com> | 2017-02-06 23:41:27 +0000 |
| commit | 868332d6bf100a216dae846863daf115009049ac (patch) | |
| tree | 4e0e5d065f12d1fd6769e7361660e1d2c9f74a07 /llvm/test/CodeGen | |
| parent | 4a9dd70213f5359b5dc5b3772f81a0b1c40ee55b (diff) | |
| download | bcm5719-llvm-868332d6bf100a216dae846863daf115009049ac.tar.gz bcm5719-llvm-868332d6bf100a216dae846863daf115009049ac.zip | |
GlobalISel: legalize narrow G_SELECTS on AArch64.
Otherwise there aren't any patterns to select them.
llvm-svn: 294261
Diffstat (limited to 'llvm/test/CodeGen')
| -rw-r--r-- | llvm/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/llvm/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir b/llvm/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir index 17685fa9bf1..f06e998453d 100644 --- a/llvm/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir +++ b/llvm/test/CodeGen/AArch64/GlobalISel/legalize-simple.mir @@ -52,14 +52,24 @@ body: | bb.1.next: - ; CHECK: %7(s1) = G_SELECT %1(s1), %1, %1 - ; CHECK: %8(s8) = G_SELECT %1(s1), %2, %2 - ; CHECK: %9(s16) = G_SELECT %1(s1), %3, %3 - ; CHECK: %10(s32) = G_SELECT %1(s1), %4, %4 - ; CHECK: %11(s64) = G_SELECT %1(s1), %0, %0 + ; CHECK: [[LHS:%[0-9]+]](s32) = G_ANYEXT %1(s1) + ; CHECK: [[RHS:%[0-9]+]](s32) = G_ANYEXT %1(s1) + ; CHECK: [[RES:%[0-9]+]](s32) = G_SELECT %1(s1), [[LHS]], [[RHS]] + ; CHECK: %7(s1) = G_TRUNC [[RES]](s32) %7(s1) = G_SELECT %1, %1, %1 + + ; CHECK: [[LHS:%[0-9]+]](s32) = G_ANYEXT %2(s8) + ; CHECK: [[RHS:%[0-9]+]](s32) = G_ANYEXT %2(s8) + ; CHECK: [[RES:%[0-9]+]](s32) = G_SELECT %1(s1), [[LHS]], [[RHS]] + ; CHECK: %8(s8) = G_TRUNC [[RES]](s32) %8(s8) = G_SELECT %1, %2, %2 + + ; CHECK: [[LHS:%[0-9]+]](s32) = G_ANYEXT %3(s16) + ; CHECK: [[RHS:%[0-9]+]](s32) = G_ANYEXT %3(s16) + ; CHECK: [[RES:%[0-9]+]](s32) = G_SELECT %1(s1), [[LHS]], [[RHS]] + ; CHECK: %9(s16) = G_TRUNC [[RES]](s32) %9(s16) = G_SELECT %1, %3, %3 + %10(s32) = G_SELECT %1, %4, %4 %11(s64) = G_SELECT %1, %0, %0 |

