64 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mtriple=i686--3; RUN: llc -pre-RA-sched=source < %s -mtriple=i686-unknown-linux -mcpu=corei7 | FileCheck %s --check-prefix=SOURCE-SCHED4; PR27485 6@g_73 = external dso_local global i327@g_5 = external dso_local global i328 9define i32 @func_44(i16 signext %p_46) nounwind {10; SOURCE-SCHED-LABEL: func_44:11; SOURCE-SCHED: # %bb.0: # %entry12; SOURCE-SCHED-NEXT: subl $12, %esp13; SOURCE-SCHED-NEXT: movl g_5, %eax14; SOURCE-SCHED-NEXT: sarl %eax15; SOURCE-SCHED-NEXT: xorl %ecx, %ecx16; SOURCE-SCHED-NEXT: cmpl $2, %eax17; SOURCE-SCHED-NEXT: setge %cl18; SOURCE-SCHED-NEXT: movzbl g_73, %edx19; SOURCE-SCHED-NEXT: xorl %eax, %eax20; SOURCE-SCHED-NEXT: subb {{[0-9]+}}(%esp), %al21; SOURCE-SCHED-NEXT: testb %dl, %dl22; SOURCE-SCHED-NEXT: jne .LBB0_223; SOURCE-SCHED-NEXT: # %bb.1: # %bb1124; SOURCE-SCHED-NEXT: movzbl %al, %eax25; SOURCE-SCHED-NEXT: divb %dl26; SOURCE-SCHED-NEXT: movzbl %ah, %eax27; SOURCE-SCHED-NEXT: .LBB0_2: # %bb1228; SOURCE-SCHED-NEXT: xorl %edx, %edx29; SOURCE-SCHED-NEXT: testb %al, %al30; SOURCE-SCHED-NEXT: setne %dl31; SOURCE-SCHED-NEXT: subl $4, %esp32; SOURCE-SCHED-NEXT: pushl $033; SOURCE-SCHED-NEXT: pushl %ecx34; SOURCE-SCHED-NEXT: pushl %edx35; SOURCE-SCHED-NEXT: calll func_48@PLT36; SOURCE-SCHED-NEXT: addl $28, %esp37; SOURCE-SCHED-NEXT: retl38entry:39 %0 = load i32, ptr @g_5, align 440 %1 = ashr i32 %0, 141 %2 = icmp sgt i32 %1, 142 %3 = zext i1 %2 to i3243 %4 = load i32, ptr @g_73, align 444 %5 = zext i16 %p_46 to i6445 %6 = sub i64 0, %546 %7 = trunc i64 %6 to i847 %8 = trunc i32 %4 to i848 %9 = icmp eq i8 %8, 049 br i1 %9, label %bb11, label %bb1250 51bb11:52 %10 = urem i8 %7, %853 br label %bb1254 55bb12:56 %.014.in = phi i8 [ %10, %bb11 ], [ %7, %entry ]57 %11 = icmp ne i8 %.014.in, 058 %12 = zext i1 %11 to i3259 %13 = tail call i32 (...) @func_48( i32 %12, i32 %3, i32 0 ) nounwind60 ret i32 undef61}62 63declare i32 @func_48(...)64