[TableGen] Split DAGISelMatcherOpt FactorNodes into 2 functions. NFC (#125330)
[llvm-project.git] / llvm / test / CodeGen / PowerPC / alloca-oversized.ll
blobc4b9cda2460449640da7a648a21c7f8f299932ae
1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 3
2 ; RUN: llc < %s -mcpu=ppc -mtriple=powerpc-ibm-aix-xcoff | FileCheck %s
3 define void @test_oversized(ptr %dst, i32 %cond) {
4 ; CHECK-LABEL: test_oversized:
5 ; CHECK:       # %bb.0: # %entry
6 ; CHECK-NEXT:    stw 31, -4(1)
7 ; CHECK-NEXT:    stwu 1, -80(1)
8 ; CHECK-NEXT:    cmplwi 4, 0
9 ; CHECK-NEXT:    mr 31, 1
10 ; CHECK-NEXT:    beq 0, L..BB0_2
11 ; CHECK-NEXT:  # %bb.1: # %if.then
12 ; CHECK-NEXT:    li 4, 0
13 ; CHECK-NEXT:    addi 5, 31, 80
14 ; CHECK-NEXT:    stwux 5, 1, 4
15 ; CHECK-NEXT:    addi 4, 1, 32
16 ; CHECK-NEXT:    b L..BB0_3
17 ; CHECK-NEXT:  L..BB0_2:
18 ; CHECK-NEXT:    addi 4, 31, 44
19 ; CHECK-NEXT:  L..BB0_3: # %if.end
20 ; CHECK-NEXT:    stw 4, 0(3)
21 ; CHECK-NEXT:    lwz 1, 0(1)
22 ; CHECK-NEXT:    lwz 31, -4(1)
23 ; CHECK-NEXT:    blr
24 entry:
25   %0 = alloca [8 x i32], i32 1, align 4
26   %tobool = icmp ne i32 %cond, 0
27   br i1 %tobool, label %if.then, label %if.end
29 if.then:
30   %vla1 = alloca [4294967295 x i32], i32 1, align 4
31   br label %if.end
33 if.end:
34   %arr = phi ptr [%0, %entry], [%vla1, %if.then]
35   store ptr %arr, ptr %dst
36   ret void