brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.2 KiB · ea7bb09 Raw
47 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=i386-unknown-linux-musl -verify-machineinstrs -run-pass=regallocfast -o -  %s | FileCheck %s3# RUN: llc -mtriple=i386-unknown-linux-musl -verify-machineinstrs -passes=regallocfast -o -  %s | FileCheck %s4 5# Make sure this case doesn't assert or try to assign $ecx to %1 on6# SHRD32rrCL7 8---9name:            foo10tracksRegLiveness: true11body:             |12  bb.0:13    ; CHECK-LABEL: name: foo14    ; CHECK: renamable $eax = IMPLICIT_DEF15    ; CHECK: renamable $edx = MOVZX32rm8 renamable $eax, 1, $noreg, 0, $noreg :: (load (s8) from `ptr undef` + 20, align 4, basealign 16)16    ; CHECK: dead renamable $ecx = MOV32rm renamable $eax, 1, $noreg, 0, $noreg :: (load (s32) from `ptr undef` + 12, basealign 16)17    ; CHECK: renamable $al = MOV8rm killed renamable $eax, 1, $noreg, 0, $noreg :: (load (s8) from `ptr undef`, align 4)18    ; CHECK: dead renamable $ecx = COPY renamable $edx19    ; CHECK: dead renamable $ecx = COPY renamable $edx20    ; CHECK: dead renamable $ecx = COPY renamable $edx21    ; CHECK: renamable $esi = IMPLICIT_DEF22    ; CHECK: renamable $ecx = IMPLICIT_DEF23    ; CHECK: renamable $ecx = CMOV32rr renamable $ecx, killed renamable $esi, 2, implicit undef $eflags24    ; CHECK: renamable $cl = MOV8ri -12825    ; CHECK: $cl = IMPLICIT_DEF26    ; CHECK: renamable $eax = COPY renamable $edx27    ; CHECK: dead renamable $eax = SHRD32rrCL renamable $eax, killed renamable $edx, implicit-def dead $eflags, implicit killed $cl28    ; CHECK: RET3229    %0:gr32 = IMPLICIT_DEF30    %1:gr32 = MOVZX32rm8 %0, 1, $noreg, 0, $noreg :: (load (s8) from `ptr undef` + 20, align 4, basealign 16)31    %2:gr32 = MOV32rm %0, 1, $noreg, 0, $noreg :: (load (s32) from `ptr undef` + 12, basealign 16)32    %3:gr8 = MOV8rm %0, 1, $noreg, 0, $noreg :: (load (s8) from `ptr undef`, align 4)33    %4:gr32 = COPY %134    %5:gr32 = COPY %135    %6:gr32 = COPY %136    %7:gr32 = IMPLICIT_DEF37    %8:gr32 = IMPLICIT_DEF38    %8:gr32 = CMOV32rr %8, killed %7, 2, implicit undef $eflags39    %9:gr8 = MOV8ri -12840    %9:gr8 = COPY %341    $cl = IMPLICIT_DEF42    %8:gr32 = COPY %143    %8:gr32 = SHRD32rrCL %8, %1, implicit-def dead $eflags, implicit $cl44    RET3245 46...47