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 the 'early-clobber' register
9 define void @test(i32 %a, i32 %b) #0 {
12 call void asm sideeffect "nop", "~{ax},~{di}"()
13 call void @foo(i32 %c)
17 attributes #0 = { optsize }
23 tracksRegLiveness: true
34 liveins: [ '%edi', '%esi' ]
36 - 'frame-setup PUSH64r undef %rax, implicit-def %rsp, implicit %rsp'
37 - CFI_INSTRUCTION .cfi_def_cfa_offset 16
39 - '%ecx = ADD32rr killed %ecx, killed %esi, implicit-def dead %eflags'
40 # CHECK: INLINEASM $nop, 1, 12, implicit-def dead early-clobber %ax, 12, implicit-def dead early-clobber %di
41 - 'INLINEASM $nop, 1, 12, implicit-def dead early-clobber %ax, 12, implicit-def dead early-clobber %di'
42 - '%edi = COPY killed %ecx'
43 - 'CALL64pcrel32 @foo, csr_64, implicit %rsp, implicit %edi, implicit-def %rsp'
44 - '%rax = POP64r implicit-def %rsp, implicit %rsp'