[clang] Fix crashes when passing VLA to va_arg (#119563)
[llvm-project.git] / llvm / test / CodeGen / Mips / GlobalISel / llvm-ir / implicit_def.ll
blob7c94a5b0bb6ce584f3f229406ab92147a0b96bb1
1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc  -O0 -mtriple=mipsel-linux-gnu -global-isel  -verify-machineinstrs %s -o -| FileCheck %s -check-prefixes=MIPS32
4 declare void @f_i32(i32)
5 define void @g_i32() {
6 ; MIPS32-LABEL: g_i32:
7 ; MIPS32:       # %bb.0: # %entry
8 ; MIPS32-NEXT:    addiu $sp, $sp, -24
9 ; MIPS32-NEXT:    .cfi_def_cfa_offset 24
10 ; MIPS32-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill
11 ; MIPS32-NEXT:    .cfi_offset 31, -4
12 ; MIPS32-NEXT:    # implicit-def: $a0
13 ; MIPS32-NEXT:    jal f_i32
14 ; MIPS32-NEXT:    nop
15 ; MIPS32-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload
16 ; MIPS32-NEXT:    addiu $sp, $sp, 24
17 ; MIPS32-NEXT:    jr $ra
18 ; MIPS32-NEXT:    nop
19 entry:
20   call void @f_i32(i32 undef)
21   ret void
24 declare void @f_i64(i64)
25 define void @g_i64() {
26 ; MIPS32-LABEL: g_i64:
27 ; MIPS32:       # %bb.0: # %entry
28 ; MIPS32-NEXT:    addiu $sp, $sp, -24
29 ; MIPS32-NEXT:    .cfi_def_cfa_offset 24
30 ; MIPS32-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill
31 ; MIPS32-NEXT:    .cfi_offset 31, -4
32 ; MIPS32-NEXT:    # implicit-def: $a0
33 ; MIPS32-NEXT:    # implicit-def: $a1
34 ; MIPS32-NEXT:    jal f_i64
35 ; MIPS32-NEXT:    nop
36 ; MIPS32-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload
37 ; MIPS32-NEXT:    addiu $sp, $sp, 24
38 ; MIPS32-NEXT:    jr $ra
39 ; MIPS32-NEXT:    nop
40 entry:
41   call void @f_i64(i64 undef)
42   ret void
45 declare void @f_float(float)
46 define void @g_float() {
47 ; MIPS32-LABEL: g_float:
48 ; MIPS32:       # %bb.0: # %entry
49 ; MIPS32-NEXT:    addiu $sp, $sp, -24
50 ; MIPS32-NEXT:    .cfi_def_cfa_offset 24
51 ; MIPS32-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill
52 ; MIPS32-NEXT:    .cfi_offset 31, -4
53 ; MIPS32-NEXT:    # implicit-def: $f12
54 ; MIPS32-NEXT:    jal f_float
55 ; MIPS32-NEXT:    nop
56 ; MIPS32-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload
57 ; MIPS32-NEXT:    addiu $sp, $sp, 24
58 ; MIPS32-NEXT:    jr $ra
59 ; MIPS32-NEXT:    nop
60 entry:
61   call void @f_float(float undef)
62   ret void
65 declare void @f_double(double)
66 define void @g_double() {
67 ; MIPS32-LABEL: g_double:
68 ; MIPS32:       # %bb.0: # %entry
69 ; MIPS32-NEXT:    addiu $sp, $sp, -24
70 ; MIPS32-NEXT:    .cfi_def_cfa_offset 24
71 ; MIPS32-NEXT:    sw $ra, 20($sp) # 4-byte Folded Spill
72 ; MIPS32-NEXT:    .cfi_offset 31, -4
73 ; MIPS32-NEXT:    # implicit-def: $d6
74 ; MIPS32-NEXT:    jal f_double
75 ; MIPS32-NEXT:    nop
76 ; MIPS32-NEXT:    lw $ra, 20($sp) # 4-byte Folded Reload
77 ; MIPS32-NEXT:    addiu $sp, $sp, 24
78 ; MIPS32-NEXT:    jr $ra
79 ; MIPS32-NEXT:    nop
80 entry:
81   call void @f_double(double undef)
82   ret void