[OptTable] Fix typo VALUE => VALUES (NFCI) (#121523)
[llvm-project.git] / llvm / test / CodeGen / MIR / X86 / frame-setup-instruction-flag.mir
blob410d3e230c27c90eedb15d5b5b379ba8c0071604
1 # RUN: llc -mtriple=x86_64 -run-pass none -o - %s | FileCheck %s
2 # This test ensures that the MIR parser parses the frame setup instruction flag.
4 --- |
6   define i32 @compute(i32 %a) {
7   body:
8     %c = mul i32 %a, 11
9     ret i32 %c
10   }
12   define i32 @foo(i32 %a) {
13   entry:
14     %b = call i32 @compute(i32 %a)
15     ret i32 %b
16   }
18 ...
19 ---
20 name:            compute
21 body: |
22   bb.0.body:
23     $eax = IMUL32rri8 $edi, 11, implicit-def $eflags
24     RET64 $eax
25 ...
26 ---
27 name:            foo
28 body: |
29   bb.0.entry:
30     ; CHECK: frame-setup PUSH64r $rax
31     frame-setup PUSH64r $rax, implicit-def $rsp, implicit $rsp
32     CALL64pcrel32 @compute, csr_64, implicit $rsp, implicit $edi, implicit-def $rsp, implicit-def $eax
33     ; CHECK: $rdx = frame-destroy POP64r
34     $rdx = frame-destroy POP64r implicit-def $rsp, implicit $rsp
35     ; CHECK: $rdx = frame-setup frame-destroy POP64r
36     $rdx = frame-setup frame-destroy POP64r implicit-def $rsp, implicit $rsp
37     ; CHECK: $rdx = frame-setup frame-destroy POP64r
38     $rdx = frame-destroy frame-setup POP64r implicit-def $rsp, implicit $rsp
39     RET64 $eax
40 ...