; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc -mtriple=i686-- -mcpu pentium4 < %s | FileCheck %s -check-prefix=SSE
; RUN: llc -mtriple=i686-- -mcpu pentium3 < %s | FileCheck %s -check-prefix=NOSSE2
; RUN: llc -mtriple=i686-- -mcpu pentium2 < %s | FileCheck %s -check-prefix=NOSSE1
; RUN: llc -mtriple=i686-- -mcpu pentium < %s | FileCheck %s -check-prefix=NOCMOV
; PR14035

define double @test1(i32 %a, i32 %b, double %x) nounwind {
; SSE-LABEL: test1:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %ebp
; SSE-NEXT:    movl %esp, %ebp
; SSE-NEXT:    andl $-8, %esp
; SSE-NEXT:    subl $8, %esp
; SSE-NEXT:    movl 8(%ebp), %eax
; SSE-NEXT:    cmpl 12(%ebp), %eax
; SSE-NEXT:    ja .LBB0_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:    jmp .LBB0_3
; SSE-NEXT:  .LBB0_1:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:  .LBB0_3:
; SSE-NEXT:    movsd %xmm0, (%esp)
; SSE-NEXT:    fldl (%esp)
; SSE-NEXT:    movl %ebp, %esp
; SSE-NEXT:    popl %ebp
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test1:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovnbe %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test1:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovnbe %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test1:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldl {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    ja .LBB0_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB0_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp ugt i32 %a, %b
  %sel = select i1 %cmp, double 99.0, double %x
  ret double %sel
}

define double @test2(i32 %a, i32 %b, double %x) nounwind {
; SSE-LABEL: test2:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %ebp
; SSE-NEXT:    movl %esp, %ebp
; SSE-NEXT:    andl $-8, %esp
; SSE-NEXT:    subl $8, %esp
; SSE-NEXT:    movl 8(%ebp), %eax
; SSE-NEXT:    cmpl 12(%ebp), %eax
; SSE-NEXT:    jae .LBB1_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:    jmp .LBB1_3
; SSE-NEXT:  .LBB1_1:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:  .LBB1_3:
; SSE-NEXT:    movsd %xmm0, (%esp)
; SSE-NEXT:    fldl (%esp)
; SSE-NEXT:    movl %ebp, %esp
; SSE-NEXT:    popl %ebp
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test2:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovnb %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test2:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovnb %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test2:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldl {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jae .LBB1_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB1_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp uge i32 %a, %b
  %sel = select i1 %cmp, double 99.0, double %x
  ret double %sel
}

define double @test3(i32 %a, i32 %b, double %x) nounwind {
; SSE-LABEL: test3:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %ebp
; SSE-NEXT:    movl %esp, %ebp
; SSE-NEXT:    andl $-8, %esp
; SSE-NEXT:    subl $8, %esp
; SSE-NEXT:    movl 8(%ebp), %eax
; SSE-NEXT:    cmpl 12(%ebp), %eax
; SSE-NEXT:    jb .LBB2_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:    jmp .LBB2_3
; SSE-NEXT:  .LBB2_1:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:  .LBB2_3:
; SSE-NEXT:    movsd %xmm0, (%esp)
; SSE-NEXT:    fldl (%esp)
; SSE-NEXT:    movl %ebp, %esp
; SSE-NEXT:    popl %ebp
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test3:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovb %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test3:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovb %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test3:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldl {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jb .LBB2_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB2_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp ult i32 %a, %b
  %sel = select i1 %cmp, double 99.0, double %x
  ret double %sel
}

define double @test4(i32 %a, i32 %b, double %x) nounwind {
; SSE-LABEL: test4:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %ebp
; SSE-NEXT:    movl %esp, %ebp
; SSE-NEXT:    andl $-8, %esp
; SSE-NEXT:    subl $8, %esp
; SSE-NEXT:    movl 8(%ebp), %eax
; SSE-NEXT:    cmpl 12(%ebp), %eax
; SSE-NEXT:    jbe .LBB3_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:    jmp .LBB3_3
; SSE-NEXT:  .LBB3_1:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:  .LBB3_3:
; SSE-NEXT:    movsd %xmm0, (%esp)
; SSE-NEXT:    fldl (%esp)
; SSE-NEXT:    movl %ebp, %esp
; SSE-NEXT:    popl %ebp
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test4:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovbe %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test4:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovbe %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test4:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldl {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jbe .LBB3_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB3_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp ule i32 %a, %b
  %sel = select i1 %cmp, double 99.0, double %x
  ret double %sel
}

define double @test5(i32 %a, i32 %b, double %x) nounwind {
; SSE-LABEL: test5:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %ebp
; SSE-NEXT:    movl %esp, %ebp
; SSE-NEXT:    andl $-8, %esp
; SSE-NEXT:    subl $8, %esp
; SSE-NEXT:    movl 8(%ebp), %eax
; SSE-NEXT:    cmpl 12(%ebp), %eax
; SSE-NEXT:    jg .LBB4_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:    jmp .LBB4_3
; SSE-NEXT:  .LBB4_1:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:  .LBB4_3:
; SSE-NEXT:    movsd %xmm0, (%esp)
; SSE-NEXT:    fldl (%esp)
; SSE-NEXT:    movl %ebp, %esp
; SSE-NEXT:    popl %ebp
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test5:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    setg %al
; NOSSE2-NEXT:    testb %al, %al
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovne %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test5:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setg %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test5:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldl {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jg .LBB4_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB4_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp sgt i32 %a, %b
  %sel = select i1 %cmp, double 99.0, double %x
  ret double %sel
}

define double @test6(i32 %a, i32 %b, double %x) nounwind {
; SSE-LABEL: test6:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %ebp
; SSE-NEXT:    movl %esp, %ebp
; SSE-NEXT:    andl $-8, %esp
; SSE-NEXT:    subl $8, %esp
; SSE-NEXT:    movl 8(%ebp), %eax
; SSE-NEXT:    cmpl 12(%ebp), %eax
; SSE-NEXT:    jge .LBB5_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:    jmp .LBB5_3
; SSE-NEXT:  .LBB5_1:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:  .LBB5_3:
; SSE-NEXT:    movsd %xmm0, (%esp)
; SSE-NEXT:    fldl (%esp)
; SSE-NEXT:    movl %ebp, %esp
; SSE-NEXT:    popl %ebp
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test6:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    setge %al
; NOSSE2-NEXT:    testb %al, %al
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovne %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test6:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setge %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test6:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldl {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jge .LBB5_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB5_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp sge i32 %a, %b
  %sel = select i1 %cmp, double 99.0, double %x
  ret double %sel
}

define double @test7(i32 %a, i32 %b, double %x) nounwind {
; SSE-LABEL: test7:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %ebp
; SSE-NEXT:    movl %esp, %ebp
; SSE-NEXT:    andl $-8, %esp
; SSE-NEXT:    subl $8, %esp
; SSE-NEXT:    movl 8(%ebp), %eax
; SSE-NEXT:    cmpl 12(%ebp), %eax
; SSE-NEXT:    jl .LBB6_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:    jmp .LBB6_3
; SSE-NEXT:  .LBB6_1:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:  .LBB6_3:
; SSE-NEXT:    movsd %xmm0, (%esp)
; SSE-NEXT:    fldl (%esp)
; SSE-NEXT:    movl %ebp, %esp
; SSE-NEXT:    popl %ebp
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test7:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    setl %al
; NOSSE2-NEXT:    testb %al, %al
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovne %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test7:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setl %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test7:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldl {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jl .LBB6_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB6_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp slt i32 %a, %b
  %sel = select i1 %cmp, double 99.0, double %x
  ret double %sel
}

define double @test8(i32 %a, i32 %b, double %x) nounwind {
; SSE-LABEL: test8:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %ebp
; SSE-NEXT:    movl %esp, %ebp
; SSE-NEXT:    andl $-8, %esp
; SSE-NEXT:    subl $8, %esp
; SSE-NEXT:    movl 8(%ebp), %eax
; SSE-NEXT:    cmpl 12(%ebp), %eax
; SSE-NEXT:    jle .LBB7_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:    jmp .LBB7_3
; SSE-NEXT:  .LBB7_1:
; SSE-NEXT:    movsd {{.*#+}} xmm0 = mem[0],zero
; SSE-NEXT:  .LBB7_3:
; SSE-NEXT:    movsd %xmm0, (%esp)
; SSE-NEXT:    fldl (%esp)
; SSE-NEXT:    movl %ebp, %esp
; SSE-NEXT:    popl %ebp
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test8:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    setle %al
; NOSSE2-NEXT:    testb %al, %al
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovne %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test8:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldl {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setle %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test8:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldl {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jle .LBB7_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB7_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp sle i32 %a, %b
  %sel = select i1 %cmp, double 99.0, double %x
  ret double %sel
}

define float @test9(i32 %a, i32 %b, float %x) nounwind {
; SSE-LABEL: test9:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %eax
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    ja .LBB8_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:    jmp .LBB8_3
; SSE-NEXT:  .LBB8_1:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:  .LBB8_3:
; SSE-NEXT:    movss %xmm0, (%esp)
; SSE-NEXT:    flds (%esp)
; SSE-NEXT:    popl %eax
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test9:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    pushl %eax
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    ja .LBB8_1
; NOSSE2-NEXT:  # %bb.2:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:    jmp .LBB8_3
; NOSSE2-NEXT:  .LBB8_1:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:  .LBB8_3:
; NOSSE2-NEXT:    movss %xmm0, (%esp)
; NOSSE2-NEXT:    flds (%esp)
; NOSSE2-NEXT:    popl %eax
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test9:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    flds {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovnbe %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test9:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    flds {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    ja .LBB8_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB8_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp ugt i32 %a, %b
  %sel = select i1 %cmp, float 99.0, float %x
  ret float %sel
}

define float @test10(i32 %a, i32 %b, float %x) nounwind {
; SSE-LABEL: test10:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %eax
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    jae .LBB9_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:    jmp .LBB9_3
; SSE-NEXT:  .LBB9_1:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:  .LBB9_3:
; SSE-NEXT:    movss %xmm0, (%esp)
; SSE-NEXT:    flds (%esp)
; SSE-NEXT:    popl %eax
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test10:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    pushl %eax
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    jae .LBB9_1
; NOSSE2-NEXT:  # %bb.2:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:    jmp .LBB9_3
; NOSSE2-NEXT:  .LBB9_1:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:  .LBB9_3:
; NOSSE2-NEXT:    movss %xmm0, (%esp)
; NOSSE2-NEXT:    flds (%esp)
; NOSSE2-NEXT:    popl %eax
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test10:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    flds {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovnb %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test10:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    flds {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jae .LBB9_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB9_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp uge i32 %a, %b
  %sel = select i1 %cmp, float 99.0, float %x
  ret float %sel
}

define float @test11(i32 %a, i32 %b, float %x) nounwind {
; SSE-LABEL: test11:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %eax
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    jb .LBB10_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:    jmp .LBB10_3
; SSE-NEXT:  .LBB10_1:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:  .LBB10_3:
; SSE-NEXT:    movss %xmm0, (%esp)
; SSE-NEXT:    flds (%esp)
; SSE-NEXT:    popl %eax
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test11:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    pushl %eax
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    jb .LBB10_1
; NOSSE2-NEXT:  # %bb.2:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:    jmp .LBB10_3
; NOSSE2-NEXT:  .LBB10_1:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:  .LBB10_3:
; NOSSE2-NEXT:    movss %xmm0, (%esp)
; NOSSE2-NEXT:    flds (%esp)
; NOSSE2-NEXT:    popl %eax
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test11:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    flds {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovb %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test11:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    flds {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jb .LBB10_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB10_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp ult i32 %a, %b
  %sel = select i1 %cmp, float 99.0, float %x
  ret float %sel
}

define float @test12(i32 %a, i32 %b, float %x) nounwind {
; SSE-LABEL: test12:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %eax
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    jbe .LBB11_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:    jmp .LBB11_3
; SSE-NEXT:  .LBB11_1:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:  .LBB11_3:
; SSE-NEXT:    movss %xmm0, (%esp)
; SSE-NEXT:    flds (%esp)
; SSE-NEXT:    popl %eax
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test12:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    pushl %eax
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    jbe .LBB11_1
; NOSSE2-NEXT:  # %bb.2:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:    jmp .LBB11_3
; NOSSE2-NEXT:  .LBB11_1:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:  .LBB11_3:
; NOSSE2-NEXT:    movss %xmm0, (%esp)
; NOSSE2-NEXT:    flds (%esp)
; NOSSE2-NEXT:    popl %eax
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test12:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    flds {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovbe %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test12:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    flds {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jbe .LBB11_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB11_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp ule i32 %a, %b
  %sel = select i1 %cmp, float 99.0, float %x
  ret float %sel
}

define float @test13(i32 %a, i32 %b, float %x) nounwind {
; SSE-LABEL: test13:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %eax
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    jg .LBB12_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:    jmp .LBB12_3
; SSE-NEXT:  .LBB12_1:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:  .LBB12_3:
; SSE-NEXT:    movss %xmm0, (%esp)
; SSE-NEXT:    flds (%esp)
; SSE-NEXT:    popl %eax
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test13:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    pushl %eax
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    jg .LBB12_1
; NOSSE2-NEXT:  # %bb.2:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:    jmp .LBB12_3
; NOSSE2-NEXT:  .LBB12_1:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:  .LBB12_3:
; NOSSE2-NEXT:    movss %xmm0, (%esp)
; NOSSE2-NEXT:    flds (%esp)
; NOSSE2-NEXT:    popl %eax
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test13:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    flds {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setg %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test13:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    flds {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jg .LBB12_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB12_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp sgt i32 %a, %b
  %sel = select i1 %cmp, float 99.0, float %x
  ret float %sel
}

define float @test14(i32 %a, i32 %b, float %x) nounwind {
; SSE-LABEL: test14:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %eax
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    jge .LBB13_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:    jmp .LBB13_3
; SSE-NEXT:  .LBB13_1:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:  .LBB13_3:
; SSE-NEXT:    movss %xmm0, (%esp)
; SSE-NEXT:    flds (%esp)
; SSE-NEXT:    popl %eax
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test14:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    pushl %eax
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    jge .LBB13_1
; NOSSE2-NEXT:  # %bb.2:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:    jmp .LBB13_3
; NOSSE2-NEXT:  .LBB13_1:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:  .LBB13_3:
; NOSSE2-NEXT:    movss %xmm0, (%esp)
; NOSSE2-NEXT:    flds (%esp)
; NOSSE2-NEXT:    popl %eax
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test14:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    flds {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setge %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test14:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    flds {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jge .LBB13_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB13_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp sge i32 %a, %b
  %sel = select i1 %cmp, float 99.0, float %x
  ret float %sel
}

define float @test15(i32 %a, i32 %b, float %x) nounwind {
; SSE-LABEL: test15:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %eax
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    jl .LBB14_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:    jmp .LBB14_3
; SSE-NEXT:  .LBB14_1:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:  .LBB14_3:
; SSE-NEXT:    movss %xmm0, (%esp)
; SSE-NEXT:    flds (%esp)
; SSE-NEXT:    popl %eax
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test15:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    pushl %eax
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    jl .LBB14_1
; NOSSE2-NEXT:  # %bb.2:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:    jmp .LBB14_3
; NOSSE2-NEXT:  .LBB14_1:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:  .LBB14_3:
; NOSSE2-NEXT:    movss %xmm0, (%esp)
; NOSSE2-NEXT:    flds (%esp)
; NOSSE2-NEXT:    popl %eax
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test15:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    flds {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setl %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test15:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    flds {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jl .LBB14_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB14_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp slt i32 %a, %b
  %sel = select i1 %cmp, float 99.0, float %x
  ret float %sel
}

define float @test16(i32 %a, i32 %b, float %x) nounwind {
; SSE-LABEL: test16:
; SSE:       # %bb.0:
; SSE-NEXT:    pushl %eax
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    jle .LBB15_1
; SSE-NEXT:  # %bb.2:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:    jmp .LBB15_3
; SSE-NEXT:  .LBB15_1:
; SSE-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; SSE-NEXT:  .LBB15_3:
; SSE-NEXT:    movss %xmm0, (%esp)
; SSE-NEXT:    flds (%esp)
; SSE-NEXT:    popl %eax
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test16:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    pushl %eax
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    jle .LBB15_1
; NOSSE2-NEXT:  # %bb.2:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:    jmp .LBB15_3
; NOSSE2-NEXT:  .LBB15_1:
; NOSSE2-NEXT:    movss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; NOSSE2-NEXT:  .LBB15_3:
; NOSSE2-NEXT:    movss %xmm0, (%esp)
; NOSSE2-NEXT:    flds (%esp)
; NOSSE2-NEXT:    popl %eax
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test16:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    flds {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setle %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test16:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    flds {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jle .LBB15_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB15_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp sle i32 %a, %b
  %sel = select i1 %cmp, float 99.0, float %x
  ret float %sel
}

define x86_fp80 @test17(i32 %a, i32 %b, x86_fp80 %x) nounwind {
; SSE-LABEL: test17:
; SSE:       # %bb.0:
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fldt {{[0-9]+}}(%esp)
; SSE-NEXT:    flds {{\.LCPI.*}}
; SSE-NEXT:    fxch %st(1)
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fcmovnbe %st(1), %st
; SSE-NEXT:    fstp %st(1)
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test17:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovnbe %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test17:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovnbe %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test17:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldt {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    ja .LBB16_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB16_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp ugt i32 %a, %b
  %sel = select i1 %cmp, x86_fp80 0xK4005C600000000000000, x86_fp80 %x
  ret x86_fp80 %sel
}

define x86_fp80 @test18(i32 %a, i32 %b, x86_fp80 %x) nounwind {
; SSE-LABEL: test18:
; SSE:       # %bb.0:
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fldt {{[0-9]+}}(%esp)
; SSE-NEXT:    flds {{\.LCPI.*}}
; SSE-NEXT:    fxch %st(1)
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fcmovnb %st(1), %st
; SSE-NEXT:    fstp %st(1)
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test18:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovnb %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test18:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovnb %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test18:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldt {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jae .LBB17_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB17_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp uge i32 %a, %b
  %sel = select i1 %cmp, x86_fp80 0xK4005C600000000000000, x86_fp80 %x
  ret x86_fp80 %sel
}

define x86_fp80 @test19(i32 %a, i32 %b, x86_fp80 %x) nounwind {
; SSE-LABEL: test19:
; SSE:       # %bb.0:
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fldt {{[0-9]+}}(%esp)
; SSE-NEXT:    flds {{\.LCPI.*}}
; SSE-NEXT:    fxch %st(1)
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fcmovb %st(1), %st
; SSE-NEXT:    fstp %st(1)
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test19:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovb %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test19:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovb %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test19:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldt {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jb .LBB18_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB18_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp ult i32 %a, %b
  %sel = select i1 %cmp, x86_fp80 0xK4005C600000000000000, x86_fp80 %x
  ret x86_fp80 %sel
}

define x86_fp80 @test20(i32 %a, i32 %b, x86_fp80 %x) nounwind {
; SSE-LABEL: test20:
; SSE:       # %bb.0:
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fldt {{[0-9]+}}(%esp)
; SSE-NEXT:    flds {{\.LCPI.*}}
; SSE-NEXT:    fxch %st(1)
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fcmovbe %st(1), %st
; SSE-NEXT:    fstp %st(1)
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test20:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovbe %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test20:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovbe %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test20:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldt {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jbe .LBB19_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB19_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp ule i32 %a, %b
  %sel = select i1 %cmp, x86_fp80 0xK4005C600000000000000, x86_fp80 %x
  ret x86_fp80 %sel
}

define x86_fp80 @test21(i32 %a, i32 %b, x86_fp80 %x) nounwind {
; SSE-LABEL: test21:
; SSE:       # %bb.0:
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fldt {{[0-9]+}}(%esp)
; SSE-NEXT:    flds {{\.LCPI.*}}
; SSE-NEXT:    fxch %st(1)
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    setg %al
; SSE-NEXT:    testb %al, %al
; SSE-NEXT:    fcmovne %st(1), %st
; SSE-NEXT:    fstp %st(1)
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test21:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    setg %al
; NOSSE2-NEXT:    testb %al, %al
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovne %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test21:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setg %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test21:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldt {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jg .LBB20_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB20_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
; We don't emit a branch for fp80, why?
  %cmp = icmp sgt i32 %a, %b
  %sel = select i1 %cmp, x86_fp80 0xK4005C600000000000000, x86_fp80 %x
  ret x86_fp80 %sel
}

define x86_fp80 @test22(i32 %a, i32 %b, x86_fp80 %x) nounwind {
; SSE-LABEL: test22:
; SSE:       # %bb.0:
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fldt {{[0-9]+}}(%esp)
; SSE-NEXT:    flds {{\.LCPI.*}}
; SSE-NEXT:    fxch %st(1)
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    setge %al
; SSE-NEXT:    testb %al, %al
; SSE-NEXT:    fcmovne %st(1), %st
; SSE-NEXT:    fstp %st(1)
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test22:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    setge %al
; NOSSE2-NEXT:    testb %al, %al
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovne %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test22:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setge %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test22:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldt {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jge .LBB21_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB21_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp sge i32 %a, %b
  %sel = select i1 %cmp, x86_fp80 0xK4005C600000000000000, x86_fp80 %x
  ret x86_fp80 %sel
}

define x86_fp80 @test23(i32 %a, i32 %b, x86_fp80 %x) nounwind {
; SSE-LABEL: test23:
; SSE:       # %bb.0:
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fldt {{[0-9]+}}(%esp)
; SSE-NEXT:    flds {{\.LCPI.*}}
; SSE-NEXT:    fxch %st(1)
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    setl %al
; SSE-NEXT:    testb %al, %al
; SSE-NEXT:    fcmovne %st(1), %st
; SSE-NEXT:    fstp %st(1)
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test23:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    setl %al
; NOSSE2-NEXT:    testb %al, %al
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovne %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test23:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setl %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test23:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldt {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jl .LBB22_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB22_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp slt i32 %a, %b
  %sel = select i1 %cmp, x86_fp80 0xK4005C600000000000000, x86_fp80 %x
  ret x86_fp80 %sel
}

define x86_fp80 @test24(i32 %a, i32 %b, x86_fp80 %x) nounwind {
; SSE-LABEL: test24:
; SSE:       # %bb.0:
; SSE-NEXT:    movl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    fldt {{[0-9]+}}(%esp)
; SSE-NEXT:    flds {{\.LCPI.*}}
; SSE-NEXT:    fxch %st(1)
; SSE-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; SSE-NEXT:    setle %al
; SSE-NEXT:    testb %al, %al
; SSE-NEXT:    fcmovne %st(1), %st
; SSE-NEXT:    fstp %st(1)
; SSE-NEXT:    retl
;
; NOSSE2-LABEL: test24:
; NOSSE2:       # %bb.0:
; NOSSE2-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE2-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE2-NEXT:    setle %al
; NOSSE2-NEXT:    testb %al, %al
; NOSSE2-NEXT:    flds {{\.LCPI.*}}
; NOSSE2-NEXT:    fxch %st(1)
; NOSSE2-NEXT:    fcmovne %st(1), %st
; NOSSE2-NEXT:    fstp %st(1)
; NOSSE2-NEXT:    retl
;
; NOSSE1-LABEL: test24:
; NOSSE1:       # %bb.0:
; NOSSE1-NEXT:    fldt {{[0-9]+}}(%esp)
; NOSSE1-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOSSE1-NEXT:    setle %al
; NOSSE1-NEXT:    testb %al, %al
; NOSSE1-NEXT:    flds {{\.LCPI.*}}
; NOSSE1-NEXT:    fxch %st(1)
; NOSSE1-NEXT:    fcmovne %st(1), %st
; NOSSE1-NEXT:    fstp %st(1)
; NOSSE1-NEXT:    retl
;
; NOCMOV-LABEL: test24:
; NOCMOV:       # %bb.0:
; NOCMOV-NEXT:    fldt {{[0-9]+}}(%esp)
; NOCMOV-NEXT:    movl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    cmpl {{[0-9]+}}(%esp), %eax
; NOCMOV-NEXT:    flds {{\.LCPI.*}}
; NOCMOV-NEXT:    jle .LBB23_2
; NOCMOV-NEXT:  # %bb.1:
; NOCMOV-NEXT:    fstp %st(0)
; NOCMOV-NEXT:    fldz
; NOCMOV-NEXT:    fxch %st(1)
; NOCMOV-NEXT:  .LBB23_2:
; NOCMOV-NEXT:    fstp %st(1)
; NOCMOV-NEXT:    retl
  %cmp = icmp sle i32 %a, %b
  %sel = select i1 %cmp, x86_fp80 0xK4005C600000000000000, x86_fp80 %x
  ret x86_fp80 %sel
}
