brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · dc2693c Raw
43 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py2; RUN: llc < %s -mtriple=i686-- -mcpu=i386 | FileCheck %s --check-prefix=BASE3; RUN: llc < %s -mtriple=i686-- -mcpu=pentiumpro | FileCheck %s --check-prefix=CMOV4; PR66795 6define float @foo(ptr %col) {7; BASE-LABEL: foo:8; BASE:       # %bb.0:9; BASE-NEXT:    movl {{[0-9]+}}(%esp), %eax10; BASE-NEXT:    flds (%eax)11; BASE-NEXT:    fld %st(0)12; BASE-NEXT:    fchs13; BASE-NEXT:    fucom %st(1)14; BASE-NEXT:    fnstsw %ax15; BASE-NEXT:    # kill: def $ah killed $ah killed $ax16; BASE-NEXT:    sahf17; BASE-NEXT:    ja .LBB0_218; BASE-NEXT:  # %bb.1:19; BASE-NEXT:    fstp %st(0)20; BASE-NEXT:    fldz21; BASE-NEXT:    fxch %st(1)22; BASE-NEXT:  .LBB0_2:23; BASE-NEXT:    fstp %st(1)24; BASE-NEXT:    retl25;26; CMOV-LABEL: foo:27; CMOV:       # %bb.0:28; CMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax29; CMOV-NEXT:    flds (%eax)30; CMOV-NEXT:    fld %st(0)31; CMOV-NEXT:    fchs32; CMOV-NEXT:    fucomi %st(1), %st33; CMOV-NEXT:    fxch %st(1)34; CMOV-NEXT:    fcmovnbe %st(1), %st35; CMOV-NEXT:    fstp %st(1)36; CMOV-NEXT:    retl37  %t = load float, ptr %col38  %t16 = fcmp olt float %t, 0.039  %t20 = fsub float -0.000000e+00, %t40  %ift = select i1 %t16, float %t20, float %t41  ret float %ift42}43