[llvm] r355775 - [ARM] Generate test checks for umulo-32.ll; NFC

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Sat Mar 9 05:21:15 PST 2019


Author: nikic
Date: Sat Mar  9 05:21:15 2019
New Revision: 355775

URL: http://llvm.org/viewvc/llvm-project?rev=355775&view=rev
Log:
[ARM] Generate test checks for umulo-32.ll; NFC

The second test case is going to be changed by D59041, so generate
full baseline checks.

Modified:
    llvm/trunk/test/CodeGen/ARM/umulo-32.ll

Modified: llvm/trunk/test/CodeGen/ARM/umulo-32.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/umulo-32.ll?rev=355775&r1=355774&r2=355775&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/ARM/umulo-32.ll (original)
+++ llvm/trunk/test/CodeGen/ARM/umulo-32.ll Sat Mar  9 05:21:15 2019
@@ -1,10 +1,24 @@
-; RUN: llc < %s -mtriple=thumbv6-apple-darwin | FileCheck %s
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc < %s -mtriple=thumbv6-unknown-linux-gnu | FileCheck %s
 
 %umul.ty = type { i32, i1 }
 
 define i32 @test1(i32 %a, i1 %x) nounwind {
-; CHECK: test1:
-; CHECK: muldi3
+; CHECK-LABEL: test1:
+; CHECK:       @ %bb.0:
+; CHECK-NEXT:    push {r4, r5, r7, lr}
+; CHECK-NEXT:    mov r5, r1
+; CHECK-NEXT:    movs r2, #37
+; CHECK-NEXT:    movs r4, #0
+; CHECK-NEXT:    mov r1, r4
+; CHECK-NEXT:    mov r3, r4
+; CHECK-NEXT:    bl __muldi3
+; CHECK-NEXT:    lsls r1, r5, #31
+; CHECK-NEXT:    beq .LBB0_2
+; CHECK-NEXT:  @ %bb.1:
+; CHECK-NEXT:    mvns r0, r4
+; CHECK-NEXT:  .LBB0_2:
+; CHECK-NEXT:    pop {r4, r5, r7, pc}
   %tmp0 = tail call %umul.ty @llvm.umul.with.overflow.i32(i32 %a, i32 37)
   %tmp1 = extractvalue %umul.ty %tmp0, 0
   %tmp2 = select i1 %x, i32 -1, i32 %tmp1
@@ -14,12 +28,34 @@ define i32 @test1(i32 %a, i1 %x) nounwin
 declare %umul.ty @llvm.umul.with.overflow.i32(i32, i32) nounwind readnone
 
 define i32 @test2(i32 %argc, i8** %argv) ssp {
-; CHECK: test2:
-; CHECK: str     r0
-; CHECK: movs    r2
-; CHECK: mov     r1
-; CHECK: mov     r3
-; CHECK: muldi3
+; CHECK-LABEL: test2:
+; CHECK:       @ %bb.0:
+; CHECK-NEXT:    push {r4, lr}
+; CHECK-NEXT:    sub sp, #16
+; CHECK-NEXT:    str r0, [sp, #8]
+; CHECK-NEXT:    movs r4, #0
+; CHECK-NEXT:    str r4, [sp, #12]
+; CHECK-NEXT:    str r1, [sp, #4]
+; CHECK-NEXT:    movs r0, #10
+; CHECK-NEXT:    str r0, [sp]
+; CHECK-NEXT:    movs r2, #8
+; CHECK-NEXT:    mov r1, r4
+; CHECK-NEXT:    mov r3, r4
+; CHECK-NEXT:    bl __muldi3
+; CHECK-NEXT:    cmp r1, #0
+; CHECK-NEXT:    beq .LBB1_2
+; CHECK-NEXT:  @ %bb.1:
+; CHECK-NEXT:    movs r1, #1
+; CHECK-NEXT:  .LBB1_2:
+; CHECK-NEXT:    cmp r1, #0
+; CHECK-NEXT:    beq .LBB1_4
+; CHECK-NEXT:  @ %bb.3:
+; CHECK-NEXT:    mvns r0, r4
+; CHECK-NEXT:  .LBB1_4:
+; CHECK-NEXT:    bl _Znam
+; CHECK-NEXT:    mov r0, r4
+; CHECK-NEXT:    add sp, #16
+; CHECK-NEXT:    pop {r4, pc}
 %1 = alloca i32, align 4
 %2 = alloca i32, align 4
 %3 = alloca i8**, align 4




More information about the llvm-commits mailing list