1# RUN: llc -march=x86-64 -start-after branch-folder -stop-after branch-folder -o /dev/null %s | FileCheck %s 2# This test ensures that the MIR parser parses register mask operands correctly. 3 4--- | 5 6 define i32 @compute(i32 %a) #0 { 7 body: 8 %c = mul i32 %a, 11 9 ret i32 %c 10 } 11 12 define i32 @foo(i32 %a) #0 { 13 entry: 14 %b = call i32 @compute(i32 %a) 15 ret i32 %b 16 } 17 18 attributes #0 = { "no-frame-pointer-elim"="false" } 19 20... 21--- 22name: compute 23body: | 24 bb.0.body: 25 %eax = IMUL32rri8 %edi, 11, implicit-def %eflags 26 RETQ %eax 27... 28--- 29# CHECK: name: foo 30name: foo 31body: | 32 bb.0.entry: 33 ; CHECK: PUSH64r %rax 34 ; CHECK-NEXT: CALL64pcrel32 @compute, csr_64, implicit %rsp, implicit %edi, implicit-def %rsp, implicit-def %eax 35 PUSH64r %rax, implicit-def %rsp, implicit %rsp 36 CALL64pcrel32 @compute, csr_64, implicit %rsp, implicit %edi, implicit-def %rsp, implicit-def %eax 37 %rdx = POP64r implicit-def %rsp, implicit %rsp 38 RETQ %eax 39... 40