summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/Thumb/mvn.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/CodeGen/Thumb/mvn.ll')
-rw-r--r--llvm/test/CodeGen/Thumb/mvn.ll29
1 files changed, 29 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Thumb/mvn.ll b/llvm/test/CodeGen/Thumb/mvn.ll
index b556a5aa5a6..1e16effc259 100644
--- a/llvm/test/CodeGen/Thumb/mvn.ll
+++ b/llvm/test/CodeGen/Thumb/mvn.ll
@@ -191,3 +191,32 @@ for.cond.cleanup:
ret void
}
+
+define void @test128(i128* %a) {
+; CHECK-LABEL: test128:
+; CHECK: ldr r1, [r0, #4]
+; CHECK-NEXT: ldr r2, .LCPI8_0
+; CHECK-NEXT: eors r2, r1
+; CHECK-NEXT: str r2, [r0, #4]
+; CHECK-NEXT: ldr r1, [r0]
+; CHECK-NEXT: ldr r2, .LCPI8_1
+; CHECK-NEXT: eors r2, r1
+; CHECK-NEXT: str r2, [r0]
+; CHECK-NEXT: ldr r1, [r0, #8]
+; CHECK-NEXT: ldr r2, .LCPI8_2
+; CHECK-NEXT: eors r2, r1
+; CHECK-NEXT: str r2, [r0, #8]
+; CHECK-NEXT: bx lr
+; CHECK-NEXT: .p2align 2
+; CHECK-NEXT: .LCPI8_0:
+; CHECK-NEXT: .long 4075008415
+; CHECK-NEXT: .LCPI8_1:
+; CHECK-NEXT: .long 2080661269
+; CHECK-NEXT: .LCPI8_2:
+; CHECK-NEXT: .long 6692605
+ %x = load i128, i128* %a
+ %xn = xor i128 %x, 123456789123456789123456789
+ store i128 %xn, i128* %a
+ ret void
+}
+
OpenPOWER on IntegriCloud