1# RUN: llc -run-pass=livevars,twoaddressinstruction -mtriple=x86_64-- -o - %s | FileCheck %s 2--- 3name: foo 4tracksRegLiveness: true 5body: | 6 bb.0: 7 liveins: $edi 8 9 %0:gr32 = COPY killed $edi 10 %1:gr32 = COPY killed %0 11 %4:gr32 = XOR32ri8 %1, 1, implicit-def dead $eflags 12 DBG_VALUE %4 13 %5:gr32 = COPY %4 14 PUSH32r killed %1, implicit-def $esp, implicit $esp 15 $eax = COPY killed %5 16 RETQ implicit killed $eax 17 18... 19 20# Verify that the DBG_VALUE instruction does not inhibit 21# TwoAddressInstructionPass::rescheduleMIBelowKill optimization 22 23# CHECK: PUSH32r %1, implicit-def $esp, implicit $esp 24# CHECK-NEXT: %2:gr32 = COPY killed %1 25# CHECK-NEXT: %2:gr32 = XOR32ri8 %2, 1, implicit-def dead $eflags 26# CHECK-NEXT: DBG_VALUE %2 27# CHECK-NEXT: %3:gr32 = COPY killed %2 28