diff options
Diffstat (limited to 'llvm/test/CodeGen/AArch64/GlobalISel/legalize-ext-cse.mir')
-rw-r--r-- | llvm/test/CodeGen/AArch64/GlobalISel/legalize-ext-cse.mir | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/AArch64/GlobalISel/legalize-ext-cse.mir b/llvm/test/CodeGen/AArch64/GlobalISel/legalize-ext-cse.mir new file mode 100644 index 00000000000..92980dcfc9b --- /dev/null +++ b/llvm/test/CodeGen/AArch64/GlobalISel/legalize-ext-cse.mir @@ -0,0 +1,21 @@ +# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py +# RUN: llc -march=aarch64 -run-pass=legalizer %s -o - -enable-cse-in-legalizer=1 -O1 | FileCheck %s +--- +name: test_cse_in_legalizer +body: | + bb.0.entry: + ; CHECK-LABEL: name: test_cse_in_legalizer + ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY $x0 + ; CHECK: [[C:%[0-9]+]]:_(s32) = G_CONSTANT i32 255 + ; CHECK: [[TRUNC:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64) + ; CHECK: [[AND:%[0-9]+]]:_(s32) = G_AND [[TRUNC]], [[C]] + ; CHECK: [[COPY1:%[0-9]+]]:_(s32) = COPY [[AND]](s32) + ; CHECK: $w0 = COPY [[COPY1]](s32) + ; CHECK: $w0 = COPY [[AND]](s32) + %0:_(s64) = COPY $x0 + %1:_(s8) = G_TRUNC %0(s64) + %19:_(s32) = G_ZEXT %1(s8) + $w0 = COPY %19(s32) + %2:_(s8) = G_TRUNC %0(s64) + %20:_(s32) = G_ZEXT %2(s8) + $w0 = COPY %20(s32) |