; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc < %s -mtriple=x86_64-- -mattr=+sse2    | FileCheck %s --check-prefixes=SSE,SSE2
; RUN: llc < %s -mtriple=x86_64-- -mattr=+sse4.1  | FileCheck %s --check-prefixes=SSE,SSE41
; RUN: llc < %s -mtriple=x86_64-- -mattr=+avx     | FileCheck %s --check-prefixes=AVX,X64-AVX1
; RUN: llc < %s -mtriple=i686--   -mattr=+avx     | FileCheck %s --check-prefixes=AVX,X86-AVX1

declare i32 @llvm.fptoui.sat.i32.f32(float)
declare i64 @llvm.fptosi.sat.i64.f64(double)

define float @trunc_unsigned_f32(float %x) #0 {
; SSE2-LABEL: trunc_unsigned_f32:
; SSE2:       # %bb.0:
; SSE2-NEXT:    cvttss2si %xmm0, %rax
; SSE2-NEXT:    movl %eax, %eax
; SSE2-NEXT:    xorps %xmm0, %xmm0
; SSE2-NEXT:    cvtsi2ss %rax, %xmm0
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_unsigned_f32:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundss $11, %xmm0, %xmm0
; SSE41-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_unsigned_f32:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vroundss $11, %xmm0, %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_unsigned_f32:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %eax
; X86-AVX1-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-AVX1-NEXT:    vroundss $11, %xmm0, %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovss %xmm0, (%esp)
; X86-AVX1-NEXT:    flds (%esp)
; X86-AVX1-NEXT:    popl %eax
; X86-AVX1-NEXT:    retl
  %i = fptoui float %x to i32
  %r = uitofp i32 %i to float
  ret float %r
}

define double @trunc_unsigned_f64(double %x) #0 {
; SSE2-LABEL: trunc_unsigned_f64:
; SSE2:       # %bb.0:
; SSE2-NEXT:    cvttsd2si %xmm0, %rax
; SSE2-NEXT:    movq %rax, %rcx
; SSE2-NEXT:    sarq $63, %rcx
; SSE2-NEXT:    subsd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
; SSE2-NEXT:    cvttsd2si %xmm0, %rdx
; SSE2-NEXT:    andq %rcx, %rdx
; SSE2-NEXT:    orq %rax, %rdx
; SSE2-NEXT:    movq %rdx, %xmm1
; SSE2-NEXT:    punpckldq {{.*#+}} xmm1 = xmm1[0],mem[0],xmm1[1],mem[1]
; SSE2-NEXT:    subpd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
; SSE2-NEXT:    movapd %xmm1, %xmm0
; SSE2-NEXT:    unpckhpd {{.*#+}} xmm0 = xmm0[1],xmm1[1]
; SSE2-NEXT:    addsd %xmm1, %xmm0
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_unsigned_f64:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundsd $11, %xmm0, %xmm0
; SSE41-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_unsigned_f64:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vroundsd $11, %xmm0, %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_unsigned_f64:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %ebp
; X86-AVX1-NEXT:    movl %esp, %ebp
; X86-AVX1-NEXT:    andl $-8, %esp
; X86-AVX1-NEXT:    subl $8, %esp
; X86-AVX1-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero
; X86-AVX1-NEXT:    vroundsd $11, %xmm0, %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovsd %xmm0, (%esp)
; X86-AVX1-NEXT:    fldl (%esp)
; X86-AVX1-NEXT:    movl %ebp, %esp
; X86-AVX1-NEXT:    popl %ebp
; X86-AVX1-NEXT:    retl
  %i = fptoui double %x to i64
  %r = uitofp i64 %i to double
  ret double %r
}

define <4 x float> @trunc_unsigned_v4f32(<4 x float> %x) #0 {
; SSE2-LABEL: trunc_unsigned_v4f32:
; SSE2:       # %bb.0:
; SSE2-NEXT:    cvttps2dq %xmm0, %xmm1
; SSE2-NEXT:    movdqa %xmm1, %xmm2
; SSE2-NEXT:    psrad $31, %xmm2
; SSE2-NEXT:    subps {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
; SSE2-NEXT:    cvttps2dq %xmm0, %xmm0
; SSE2-NEXT:    pand %xmm2, %xmm0
; SSE2-NEXT:    por %xmm1, %xmm0
; SSE2-NEXT:    movdqa {{.*#+}} xmm1 = [65535,65535,65535,65535]
; SSE2-NEXT:    pand %xmm0, %xmm1
; SSE2-NEXT:    por {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
; SSE2-NEXT:    psrld $16, %xmm0
; SSE2-NEXT:    por {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
; SSE2-NEXT:    subps {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
; SSE2-NEXT:    addps %xmm1, %xmm0
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_unsigned_v4f32:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundps $11, %xmm0, %xmm0
; SSE41-NEXT:    retq
;
; AVX-LABEL: trunc_unsigned_v4f32:
; AVX:       # %bb.0:
; AVX-NEXT:    vroundps $11, %xmm0, %xmm0
; AVX-NEXT:    ret{{[l|q]}}
  %i = fptoui <4 x float> %x to <4 x i32>
  %r = uitofp <4 x i32> %i to <4 x float>
  ret <4 x float> %r
}

define <2 x double> @trunc_unsigned_v2f64(<2 x double> %x) #0 {
; SSE2-LABEL: trunc_unsigned_v2f64:
; SSE2:       # %bb.0:
; SSE2-NEXT:    movsd {{.*#+}} xmm2 = [9.2233720368547758E+18,0.0E+0]
; SSE2-NEXT:    movapd %xmm0, %xmm1
; SSE2-NEXT:    subsd %xmm2, %xmm1
; SSE2-NEXT:    cvttsd2si %xmm1, %rax
; SSE2-NEXT:    cvttsd2si %xmm0, %rcx
; SSE2-NEXT:    movq %rcx, %rdx
; SSE2-NEXT:    sarq $63, %rdx
; SSE2-NEXT:    andq %rax, %rdx
; SSE2-NEXT:    orq %rcx, %rdx
; SSE2-NEXT:    movq %rdx, %xmm1
; SSE2-NEXT:    unpckhpd {{.*#+}} xmm0 = xmm0[1,1]
; SSE2-NEXT:    cvttsd2si %xmm0, %rax
; SSE2-NEXT:    subsd %xmm2, %xmm0
; SSE2-NEXT:    cvttsd2si %xmm0, %rcx
; SSE2-NEXT:    movq %rax, %rdx
; SSE2-NEXT:    sarq $63, %rdx
; SSE2-NEXT:    andq %rcx, %rdx
; SSE2-NEXT:    orq %rax, %rdx
; SSE2-NEXT:    movq %rdx, %xmm0
; SSE2-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm0[0]
; SSE2-NEXT:    movdqa {{.*#+}} xmm0 = [4294967295,4294967295]
; SSE2-NEXT:    pand %xmm1, %xmm0
; SSE2-NEXT:    por {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
; SSE2-NEXT:    psrlq $32, %xmm1
; SSE2-NEXT:    por {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
; SSE2-NEXT:    subpd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm1
; SSE2-NEXT:    addpd %xmm0, %xmm1
; SSE2-NEXT:    movapd %xmm1, %xmm0
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_unsigned_v2f64:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundpd $11, %xmm0, %xmm0
; SSE41-NEXT:    retq
;
; AVX-LABEL: trunc_unsigned_v2f64:
; AVX:       # %bb.0:
; AVX-NEXT:    vroundpd $11, %xmm0, %xmm0
; AVX-NEXT:    ret{{[l|q]}}
  %i = fptoui <2 x double> %x to <2 x i64>
  %r = uitofp <2 x i64> %i to <2 x double>
  ret <2 x double> %r
}

define <4 x double> @trunc_unsigned_v4f64(<4 x double> %x) #0 {
; SSE2-LABEL: trunc_unsigned_v4f64:
; SSE2:       # %bb.0:
; SSE2-NEXT:    movapd %xmm1, %xmm2
; SSE2-NEXT:    movsd {{.*#+}} xmm3 = [9.2233720368547758E+18,0.0E+0]
; SSE2-NEXT:    subsd %xmm3, %xmm1
; SSE2-NEXT:    cvttsd2si %xmm1, %rax
; SSE2-NEXT:    cvttsd2si %xmm2, %rcx
; SSE2-NEXT:    movq %rcx, %rdx
; SSE2-NEXT:    sarq $63, %rdx
; SSE2-NEXT:    andq %rax, %rdx
; SSE2-NEXT:    orq %rcx, %rdx
; SSE2-NEXT:    movq %rdx, %xmm1
; SSE2-NEXT:    unpckhpd {{.*#+}} xmm2 = xmm2[1,1]
; SSE2-NEXT:    cvttsd2si %xmm2, %rax
; SSE2-NEXT:    subsd %xmm3, %xmm2
; SSE2-NEXT:    cvttsd2si %xmm2, %rcx
; SSE2-NEXT:    movq %rax, %rdx
; SSE2-NEXT:    sarq $63, %rdx
; SSE2-NEXT:    andq %rcx, %rdx
; SSE2-NEXT:    orq %rax, %rdx
; SSE2-NEXT:    movq %rdx, %xmm2
; SSE2-NEXT:    punpcklqdq {{.*#+}} xmm1 = xmm1[0],xmm2[0]
; SSE2-NEXT:    movapd %xmm0, %xmm2
; SSE2-NEXT:    subsd %xmm3, %xmm2
; SSE2-NEXT:    cvttsd2si %xmm2, %rax
; SSE2-NEXT:    cvttsd2si %xmm0, %rcx
; SSE2-NEXT:    movq %rcx, %rdx
; SSE2-NEXT:    sarq $63, %rdx
; SSE2-NEXT:    andq %rax, %rdx
; SSE2-NEXT:    orq %rcx, %rdx
; SSE2-NEXT:    movq %rdx, %xmm2
; SSE2-NEXT:    unpckhpd {{.*#+}} xmm0 = xmm0[1,1]
; SSE2-NEXT:    cvttsd2si %xmm0, %rax
; SSE2-NEXT:    subsd %xmm3, %xmm0
; SSE2-NEXT:    cvttsd2si %xmm0, %rcx
; SSE2-NEXT:    movq %rax, %rdx
; SSE2-NEXT:    sarq $63, %rdx
; SSE2-NEXT:    andq %rcx, %rdx
; SSE2-NEXT:    orq %rax, %rdx
; SSE2-NEXT:    movq %rdx, %xmm0
; SSE2-NEXT:    punpcklqdq {{.*#+}} xmm2 = xmm2[0],xmm0[0]
; SSE2-NEXT:    movdqa {{.*#+}} xmm0 = [4294967295,4294967295]
; SSE2-NEXT:    movdqa %xmm2, %xmm3
; SSE2-NEXT:    pand %xmm0, %xmm3
; SSE2-NEXT:    movdqa {{.*#+}} xmm4 = [4841369599423283200,4841369599423283200]
; SSE2-NEXT:    por %xmm4, %xmm3
; SSE2-NEXT:    psrlq $32, %xmm2
; SSE2-NEXT:    movdqa {{.*#+}} xmm5 = [4985484787499139072,4985484787499139072]
; SSE2-NEXT:    por %xmm5, %xmm2
; SSE2-NEXT:    movapd {{.*#+}} xmm6 = [1.9342813118337666E+25,1.9342813118337666E+25]
; SSE2-NEXT:    subpd %xmm6, %xmm2
; SSE2-NEXT:    addpd %xmm3, %xmm2
; SSE2-NEXT:    pand %xmm1, %xmm0
; SSE2-NEXT:    por %xmm4, %xmm0
; SSE2-NEXT:    psrlq $32, %xmm1
; SSE2-NEXT:    por %xmm5, %xmm1
; SSE2-NEXT:    subpd %xmm6, %xmm1
; SSE2-NEXT:    addpd %xmm0, %xmm1
; SSE2-NEXT:    movapd %xmm2, %xmm0
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_unsigned_v4f64:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundpd $11, %xmm0, %xmm0
; SSE41-NEXT:    roundpd $11, %xmm1, %xmm1
; SSE41-NEXT:    retq
;
; AVX-LABEL: trunc_unsigned_v4f64:
; AVX:       # %bb.0:
; AVX-NEXT:    vroundpd $11, %ymm0, %ymm0
; AVX-NEXT:    ret{{[l|q]}}
  %i = fptoui <4 x double> %x to <4 x i64>
  %r = uitofp <4 x i64> %i to <4 x double>
  ret <4 x double> %r
}

define float @trunc_signed_f32_no_fast_math(float %x) {
; SSE-LABEL: trunc_signed_f32_no_fast_math:
; SSE:       # %bb.0:
; SSE-NEXT:    cvttps2dq %xmm0, %xmm0
; SSE-NEXT:    cvtdq2ps %xmm0, %xmm0
; SSE-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_signed_f32_no_fast_math:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vcvttps2dq %xmm0, %xmm0
; X64-AVX1-NEXT:    vcvtdq2ps %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_signed_f32_no_fast_math:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %eax
; X86-AVX1-NEXT:    .cfi_def_cfa_offset 8
; X86-AVX1-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-AVX1-NEXT:    vcvttps2dq %xmm0, %xmm0
; X86-AVX1-NEXT:    vcvtdq2ps %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovss %xmm0, (%esp)
; X86-AVX1-NEXT:    flds (%esp)
; X86-AVX1-NEXT:    popl %eax
; X86-AVX1-NEXT:    .cfi_def_cfa_offset 4
; X86-AVX1-NEXT:    retl
  %i = fptosi float %x to i32
  %r = sitofp i32 %i to float
  ret float %r
}

; Without -0.0, it is ok to use roundss if it is available.

define float @trunc_signed_f32_nsz(float %x) #0 {
; SSE2-LABEL: trunc_signed_f32_nsz:
; SSE2:       # %bb.0:
; SSE2-NEXT:    cvttps2dq %xmm0, %xmm0
; SSE2-NEXT:    cvtdq2ps %xmm0, %xmm0
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_signed_f32_nsz:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundss $11, %xmm0, %xmm0
; SSE41-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_signed_f32_nsz:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vroundss $11, %xmm0, %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_signed_f32_nsz:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %eax
; X86-AVX1-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-AVX1-NEXT:    vroundss $11, %xmm0, %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovss %xmm0, (%esp)
; X86-AVX1-NEXT:    flds (%esp)
; X86-AVX1-NEXT:    popl %eax
; X86-AVX1-NEXT:    retl
  %i = fptosi float %x to i32
  %r = sitofp i32 %i to float
  ret float %r
}

define double @trunc_signed32_f64_no_fast_math(double %x) {
; SSE-LABEL: trunc_signed32_f64_no_fast_math:
; SSE:       # %bb.0:
; SSE-NEXT:    cvttpd2dq %xmm0, %xmm0
; SSE-NEXT:    cvtdq2pd %xmm0, %xmm0
; SSE-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_signed32_f64_no_fast_math:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vcvttpd2dq %xmm0, %xmm0
; X64-AVX1-NEXT:    vcvtdq2pd %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_signed32_f64_no_fast_math:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %ebp
; X86-AVX1-NEXT:    .cfi_def_cfa_offset 8
; X86-AVX1-NEXT:    .cfi_offset %ebp, -8
; X86-AVX1-NEXT:    movl %esp, %ebp
; X86-AVX1-NEXT:    .cfi_def_cfa_register %ebp
; X86-AVX1-NEXT:    andl $-8, %esp
; X86-AVX1-NEXT:    subl $8, %esp
; X86-AVX1-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero
; X86-AVX1-NEXT:    vcvttpd2dq %xmm0, %xmm0
; X86-AVX1-NEXT:    vcvtdq2pd %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovlps %xmm0, (%esp)
; X86-AVX1-NEXT:    fldl (%esp)
; X86-AVX1-NEXT:    movl %ebp, %esp
; X86-AVX1-NEXT:    popl %ebp
; X86-AVX1-NEXT:    .cfi_def_cfa %esp, 4
; X86-AVX1-NEXT:    retl
  %i = fptosi double %x to i32
  %r = sitofp i32 %i to double
  ret double %r
}

define double @trunc_signed32_f64_nsz(double %x) #0 {
; SSE2-LABEL: trunc_signed32_f64_nsz:
; SSE2:       # %bb.0:
; SSE2-NEXT:    cvttpd2dq %xmm0, %xmm0
; SSE2-NEXT:    cvtdq2pd %xmm0, %xmm0
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_signed32_f64_nsz:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundsd $11, %xmm0, %xmm0
; SSE41-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_signed32_f64_nsz:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vroundsd $11, %xmm0, %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_signed32_f64_nsz:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %ebp
; X86-AVX1-NEXT:    movl %esp, %ebp
; X86-AVX1-NEXT:    andl $-8, %esp
; X86-AVX1-NEXT:    subl $8, %esp
; X86-AVX1-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero
; X86-AVX1-NEXT:    vroundsd $11, %xmm0, %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovsd %xmm0, (%esp)
; X86-AVX1-NEXT:    fldl (%esp)
; X86-AVX1-NEXT:    movl %ebp, %esp
; X86-AVX1-NEXT:    popl %ebp
; X86-AVX1-NEXT:    retl
  %i = fptosi double %x to i32
  %r = sitofp i32 %i to double
  ret double %r
}

define double @trunc_f32_signed32_f64_no_fast_math(float %x) {
; SSE-LABEL: trunc_f32_signed32_f64_no_fast_math:
; SSE:       # %bb.0:
; SSE-NEXT:    cvttps2dq %xmm0, %xmm0
; SSE-NEXT:    cvtdq2pd %xmm0, %xmm0
; SSE-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_f32_signed32_f64_no_fast_math:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vcvttps2dq %xmm0, %xmm0
; X64-AVX1-NEXT:    vcvtdq2pd %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_f32_signed32_f64_no_fast_math:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %ebp
; X86-AVX1-NEXT:    .cfi_def_cfa_offset 8
; X86-AVX1-NEXT:    .cfi_offset %ebp, -8
; X86-AVX1-NEXT:    movl %esp, %ebp
; X86-AVX1-NEXT:    .cfi_def_cfa_register %ebp
; X86-AVX1-NEXT:    andl $-8, %esp
; X86-AVX1-NEXT:    subl $8, %esp
; X86-AVX1-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-AVX1-NEXT:    vcvttps2dq %xmm0, %xmm0
; X86-AVX1-NEXT:    vcvtdq2pd %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovlps %xmm0, (%esp)
; X86-AVX1-NEXT:    fldl (%esp)
; X86-AVX1-NEXT:    movl %ebp, %esp
; X86-AVX1-NEXT:    popl %ebp
; X86-AVX1-NEXT:    .cfi_def_cfa %esp, 4
; X86-AVX1-NEXT:    retl
  %i = fptosi float %x to i32
  %r = sitofp i32 %i to double
  ret double %r
}

define double @trunc_f32_signed32_f64_nsz(float %x) #0 {
; SSE-LABEL: trunc_f32_signed32_f64_nsz:
; SSE:       # %bb.0:
; SSE-NEXT:    cvttps2dq %xmm0, %xmm0
; SSE-NEXT:    cvtdq2pd %xmm0, %xmm0
; SSE-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_f32_signed32_f64_nsz:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vcvttps2dq %xmm0, %xmm0
; X64-AVX1-NEXT:    vcvtdq2pd %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_f32_signed32_f64_nsz:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %ebp
; X86-AVX1-NEXT:    movl %esp, %ebp
; X86-AVX1-NEXT:    andl $-8, %esp
; X86-AVX1-NEXT:    subl $8, %esp
; X86-AVX1-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-AVX1-NEXT:    vcvttps2dq %xmm0, %xmm0
; X86-AVX1-NEXT:    vcvtdq2pd %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovlps %xmm0, (%esp)
; X86-AVX1-NEXT:    fldl (%esp)
; X86-AVX1-NEXT:    movl %ebp, %esp
; X86-AVX1-NEXT:    popl %ebp
; X86-AVX1-NEXT:    retl
  %i = fptosi float %x to i32
  %r = sitofp i32 %i to double
  ret double %r
}

define float @trunc_f64_signed32_f32_no_fast_math(double %x) {
; SSE-LABEL: trunc_f64_signed32_f32_no_fast_math:
; SSE:       # %bb.0:
; SSE-NEXT:    cvttpd2dq %xmm0, %xmm0
; SSE-NEXT:    cvtdq2ps %xmm0, %xmm0
; SSE-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_f64_signed32_f32_no_fast_math:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vcvttpd2dq %xmm0, %xmm0
; X64-AVX1-NEXT:    vcvtdq2ps %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_f64_signed32_f32_no_fast_math:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %eax
; X86-AVX1-NEXT:    .cfi_def_cfa_offset 8
; X86-AVX1-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero
; X86-AVX1-NEXT:    vcvttpd2dq %xmm0, %xmm0
; X86-AVX1-NEXT:    vcvtdq2ps %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovss %xmm0, (%esp)
; X86-AVX1-NEXT:    flds (%esp)
; X86-AVX1-NEXT:    popl %eax
; X86-AVX1-NEXT:    .cfi_def_cfa_offset 4
; X86-AVX1-NEXT:    retl
  %i = fptosi double %x to i32
  %r = sitofp i32 %i to float
  ret float %r
}

define float @trunc_f64_signed32_f32_nsz(double %x) #0 {
; SSE-LABEL: trunc_f64_signed32_f32_nsz:
; SSE:       # %bb.0:
; SSE-NEXT:    cvttpd2dq %xmm0, %xmm0
; SSE-NEXT:    cvtdq2ps %xmm0, %xmm0
; SSE-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_f64_signed32_f32_nsz:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vcvttpd2dq %xmm0, %xmm0
; X64-AVX1-NEXT:    vcvtdq2ps %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_f64_signed32_f32_nsz:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %eax
; X86-AVX1-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero
; X86-AVX1-NEXT:    vcvttpd2dq %xmm0, %xmm0
; X86-AVX1-NEXT:    vcvtdq2ps %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovss %xmm0, (%esp)
; X86-AVX1-NEXT:    flds (%esp)
; X86-AVX1-NEXT:    popl %eax
; X86-AVX1-NEXT:    retl
  %i = fptosi double %x to i32
  %r = sitofp i32 %i to float
  ret float %r
}

define double @trunc_signed_f64_no_fast_math(double %x) {
; SSE-LABEL: trunc_signed_f64_no_fast_math:
; SSE:       # %bb.0:
; SSE-NEXT:    cvttsd2si %xmm0, %rax
; SSE-NEXT:    xorps %xmm0, %xmm0
; SSE-NEXT:    cvtsi2sd %rax, %xmm0
; SSE-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_signed_f64_no_fast_math:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vcvttsd2si %xmm0, %rax
; X64-AVX1-NEXT:    vcvtsi2sd %rax, %xmm15, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_signed_f64_no_fast_math:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %ebp
; X86-AVX1-NEXT:    .cfi_def_cfa_offset 8
; X86-AVX1-NEXT:    .cfi_offset %ebp, -8
; X86-AVX1-NEXT:    movl %esp, %ebp
; X86-AVX1-NEXT:    .cfi_def_cfa_register %ebp
; X86-AVX1-NEXT:    andl $-8, %esp
; X86-AVX1-NEXT:    subl $24, %esp
; X86-AVX1-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero
; X86-AVX1-NEXT:    vmovsd %xmm0, (%esp)
; X86-AVX1-NEXT:    fldl (%esp)
; X86-AVX1-NEXT:    fisttpll (%esp)
; X86-AVX1-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero
; X86-AVX1-NEXT:    vmovlps %xmm0, {{[0-9]+}}(%esp)
; X86-AVX1-NEXT:    fildll {{[0-9]+}}(%esp)
; X86-AVX1-NEXT:    fstpl {{[0-9]+}}(%esp)
; X86-AVX1-NEXT:    fldl {{[0-9]+}}(%esp)
; X86-AVX1-NEXT:    movl %ebp, %esp
; X86-AVX1-NEXT:    popl %ebp
; X86-AVX1-NEXT:    .cfi_def_cfa %esp, 4
; X86-AVX1-NEXT:    retl
  %i = fptosi double %x to i64
  %r = sitofp i64 %i to double
  ret double %r
}

define double @trunc_signed_f64_nsz(double %x) #0 {
; SSE2-LABEL: trunc_signed_f64_nsz:
; SSE2:       # %bb.0:
; SSE2-NEXT:    cvttsd2si %xmm0, %rax
; SSE2-NEXT:    xorps %xmm0, %xmm0
; SSE2-NEXT:    cvtsi2sd %rax, %xmm0
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_signed_f64_nsz:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundsd $11, %xmm0, %xmm0
; SSE41-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_signed_f64_nsz:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vroundsd $11, %xmm0, %xmm0, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_signed_f64_nsz:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %ebp
; X86-AVX1-NEXT:    movl %esp, %ebp
; X86-AVX1-NEXT:    andl $-8, %esp
; X86-AVX1-NEXT:    subl $8, %esp
; X86-AVX1-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero
; X86-AVX1-NEXT:    vroundsd $11, %xmm0, %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovsd %xmm0, (%esp)
; X86-AVX1-NEXT:    fldl (%esp)
; X86-AVX1-NEXT:    movl %ebp, %esp
; X86-AVX1-NEXT:    popl %ebp
; X86-AVX1-NEXT:    retl
  %i = fptosi double %x to i64
  %r = sitofp i64 %i to double
  ret double %r
}

define <4 x float> @trunc_signed_v4f32_nsz(<4 x float> %x) #0 {
; SSE2-LABEL: trunc_signed_v4f32_nsz:
; SSE2:       # %bb.0:
; SSE2-NEXT:    cvttps2dq %xmm0, %xmm0
; SSE2-NEXT:    cvtdq2ps %xmm0, %xmm0
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_signed_v4f32_nsz:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundps $11, %xmm0, %xmm0
; SSE41-NEXT:    retq
;
; AVX-LABEL: trunc_signed_v4f32_nsz:
; AVX:       # %bb.0:
; AVX-NEXT:    vroundps $11, %xmm0, %xmm0
; AVX-NEXT:    ret{{[l|q]}}
  %i = fptosi <4 x float> %x to <4 x i32>
  %r = sitofp <4 x i32> %i to <4 x float>
  ret <4 x float> %r
}

define <2 x double> @trunc_signed_v2f64_nsz(<2 x double> %x) #0 {
; SSE2-LABEL: trunc_signed_v2f64_nsz:
; SSE2:       # %bb.0:
; SSE2-NEXT:    cvttsd2si %xmm0, %rax
; SSE2-NEXT:    unpckhpd {{.*#+}} xmm0 = xmm0[1,1]
; SSE2-NEXT:    cvttsd2si %xmm0, %rcx
; SSE2-NEXT:    xorps %xmm0, %xmm0
; SSE2-NEXT:    cvtsi2sd %rax, %xmm0
; SSE2-NEXT:    cvtsi2sd %rcx, %xmm1
; SSE2-NEXT:    unpcklpd {{.*#+}} xmm0 = xmm0[0],xmm1[0]
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_signed_v2f64_nsz:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundpd $11, %xmm0, %xmm0
; SSE41-NEXT:    retq
;
; AVX-LABEL: trunc_signed_v2f64_nsz:
; AVX:       # %bb.0:
; AVX-NEXT:    vroundpd $11, %xmm0, %xmm0
; AVX-NEXT:    ret{{[l|q]}}
  %i = fptosi <2 x double> %x to <2 x i64>
  %r = sitofp <2 x i64> %i to <2 x double>
  ret <2 x double> %r
}

define <4 x double> @trunc_signed_v4f64_nsz(<4 x double> %x) #0 {
; SSE2-LABEL: trunc_signed_v4f64_nsz:
; SSE2:       # %bb.0:
; SSE2-NEXT:    cvttsd2si %xmm1, %rax
; SSE2-NEXT:    unpckhpd {{.*#+}} xmm1 = xmm1[1,1]
; SSE2-NEXT:    cvttsd2si %xmm1, %rcx
; SSE2-NEXT:    cvttsd2si %xmm0, %rdx
; SSE2-NEXT:    unpckhpd {{.*#+}} xmm0 = xmm0[1,1]
; SSE2-NEXT:    cvttsd2si %xmm0, %rsi
; SSE2-NEXT:    xorps %xmm0, %xmm0
; SSE2-NEXT:    cvtsi2sd %rdx, %xmm0
; SSE2-NEXT:    xorps %xmm1, %xmm1
; SSE2-NEXT:    cvtsi2sd %rsi, %xmm1
; SSE2-NEXT:    unpcklpd {{.*#+}} xmm0 = xmm0[0],xmm1[0]
; SSE2-NEXT:    xorps %xmm1, %xmm1
; SSE2-NEXT:    cvtsi2sd %rax, %xmm1
; SSE2-NEXT:    cvtsi2sd %rcx, %xmm2
; SSE2-NEXT:    unpcklpd {{.*#+}} xmm1 = xmm1[0],xmm2[0]
; SSE2-NEXT:    retq
;
; SSE41-LABEL: trunc_signed_v4f64_nsz:
; SSE41:       # %bb.0:
; SSE41-NEXT:    roundpd $11, %xmm0, %xmm0
; SSE41-NEXT:    roundpd $11, %xmm1, %xmm1
; SSE41-NEXT:    retq
;
; AVX-LABEL: trunc_signed_v4f64_nsz:
; AVX:       # %bb.0:
; AVX-NEXT:    vroundpd $11, %ymm0, %ymm0
; AVX-NEXT:    ret{{[l|q]}}
  %i = fptosi <4 x double> %x to <4 x i64>
  %r = sitofp <4 x i64> %i to <4 x double>
  ret <4 x double> %r
}

; The FTRUNC ("round**" x86 asm) fold relies on UB in the case of overflow.
; This used to be guarded with an attribute check. That allowed existing
; code to continue working based on its assumptions that float->int
; overflow had saturating behavior.
;
; Now, we expect a front-end to use IR intrinsics if it wants to avoid this
; transform.

define float @trunc_unsigned_f32_disable_via_intrinsic(float %x) #0 {
; SSE-LABEL: trunc_unsigned_f32_disable_via_intrinsic:
; SSE:       # %bb.0:
; SSE-NEXT:    cvttss2si %xmm0, %rax
; SSE-NEXT:    xorl %ecx, %ecx
; SSE-NEXT:    xorps %xmm1, %xmm1
; SSE-NEXT:    ucomiss %xmm1, %xmm0
; SSE-NEXT:    cmovael %eax, %ecx
; SSE-NEXT:    ucomiss {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
; SSE-NEXT:    movl $-1, %eax
; SSE-NEXT:    cmovbel %ecx, %eax
; SSE-NEXT:    xorps %xmm0, %xmm0
; SSE-NEXT:    cvtsi2ss %rax, %xmm0
; SSE-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_unsigned_f32_disable_via_intrinsic:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vcvttss2si %xmm0, %rax
; X64-AVX1-NEXT:    xorl %ecx, %ecx
; X64-AVX1-NEXT:    vxorps %xmm1, %xmm1, %xmm1
; X64-AVX1-NEXT:    vucomiss %xmm1, %xmm0
; X64-AVX1-NEXT:    cmovael %eax, %ecx
; X64-AVX1-NEXT:    vucomiss {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
; X64-AVX1-NEXT:    movl $-1, %eax
; X64-AVX1-NEXT:    cmovbel %ecx, %eax
; X64-AVX1-NEXT:    vcvtsi2ss %rax, %xmm15, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_unsigned_f32_disable_via_intrinsic:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %eax
; X86-AVX1-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-AVX1-NEXT:    vcvttss2si %xmm0, %eax
; X86-AVX1-NEXT:    movl %eax, %ecx
; X86-AVX1-NEXT:    sarl $31, %ecx
; X86-AVX1-NEXT:    vsubss {{\.?LCPI[0-9]+_[0-9]+}}, %xmm0, %xmm1
; X86-AVX1-NEXT:    vcvttss2si %xmm1, %edx
; X86-AVX1-NEXT:    andl %ecx, %edx
; X86-AVX1-NEXT:    orl %eax, %edx
; X86-AVX1-NEXT:    xorl %eax, %eax
; X86-AVX1-NEXT:    vxorps %xmm1, %xmm1, %xmm1
; X86-AVX1-NEXT:    vucomiss %xmm1, %xmm0
; X86-AVX1-NEXT:    cmovael %edx, %eax
; X86-AVX1-NEXT:    vucomiss {{\.?LCPI[0-9]+_[0-9]+}}, %xmm0
; X86-AVX1-NEXT:    movl $-1, %ecx
; X86-AVX1-NEXT:    cmovbel %eax, %ecx
; X86-AVX1-NEXT:    vmovd %ecx, %xmm0
; X86-AVX1-NEXT:    vpor {{\.?LCPI[0-9]+_[0-9]+}}, %xmm0, %xmm0
; X86-AVX1-NEXT:    vsubsd {{\.?LCPI[0-9]+_[0-9]+}}, %xmm0, %xmm0
; X86-AVX1-NEXT:    vcvtsd2ss %xmm0, %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovss %xmm0, (%esp)
; X86-AVX1-NEXT:    flds (%esp)
; X86-AVX1-NEXT:    popl %eax
; X86-AVX1-NEXT:    retl
  %i = call i32 @llvm.fptoui.sat.i32.f32(float %x)
  %r = uitofp i32 %i to float
  ret float %r
}

define double @trunc_signed_f64_disable_via_intrinsic(double %x) #0 {
; SSE-LABEL: trunc_signed_f64_disable_via_intrinsic:
; SSE:       # %bb.0:
; SSE-NEXT:    cvttsd2si %xmm0, %rax
; SSE-NEXT:    ucomisd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
; SSE-NEXT:    movabsq $9223372036854775807, %rcx # imm = 0x7FFFFFFFFFFFFFFF
; SSE-NEXT:    cmovbeq %rax, %rcx
; SSE-NEXT:    xorl %eax, %eax
; SSE-NEXT:    ucomisd %xmm0, %xmm0
; SSE-NEXT:    cmovnpq %rcx, %rax
; SSE-NEXT:    xorps %xmm0, %xmm0
; SSE-NEXT:    cvtsi2sd %rax, %xmm0
; SSE-NEXT:    retq
;
; X64-AVX1-LABEL: trunc_signed_f64_disable_via_intrinsic:
; X64-AVX1:       # %bb.0:
; X64-AVX1-NEXT:    vcvttsd2si %xmm0, %rax
; X64-AVX1-NEXT:    vucomisd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %xmm0
; X64-AVX1-NEXT:    movabsq $9223372036854775807, %rcx # imm = 0x7FFFFFFFFFFFFFFF
; X64-AVX1-NEXT:    cmovbeq %rax, %rcx
; X64-AVX1-NEXT:    xorl %eax, %eax
; X64-AVX1-NEXT:    vucomisd %xmm0, %xmm0
; X64-AVX1-NEXT:    cmovnpq %rcx, %rax
; X64-AVX1-NEXT:    vcvtsi2sd %rax, %xmm15, %xmm0
; X64-AVX1-NEXT:    retq
;
; X86-AVX1-LABEL: trunc_signed_f64_disable_via_intrinsic:
; X86-AVX1:       # %bb.0:
; X86-AVX1-NEXT:    pushl %ebp
; X86-AVX1-NEXT:    movl %esp, %ebp
; X86-AVX1-NEXT:    pushl %esi
; X86-AVX1-NEXT:    andl $-8, %esp
; X86-AVX1-NEXT:    subl $32, %esp
; X86-AVX1-NEXT:    vmovsd {{.*#+}} xmm0 = mem[0],zero
; X86-AVX1-NEXT:    vmovsd %xmm0, (%esp)
; X86-AVX1-NEXT:    fldl (%esp)
; X86-AVX1-NEXT:    fisttpll (%esp)
; X86-AVX1-NEXT:    xorl %eax, %eax
; X86-AVX1-NEXT:    vucomisd {{\.?LCPI[0-9]+_[0-9]+}}, %xmm0
; X86-AVX1-NEXT:    movl $-2147483648, %ecx # imm = 0x80000000
; X86-AVX1-NEXT:    movl $0, %edx
; X86-AVX1-NEXT:    jb .LBB19_2
; X86-AVX1-NEXT:  # %bb.1:
; X86-AVX1-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-AVX1-NEXT:    movl (%esp), %edx
; X86-AVX1-NEXT:  .LBB19_2:
; X86-AVX1-NEXT:    vucomisd {{\.?LCPI[0-9]+_[0-9]+}}, %xmm0
; X86-AVX1-NEXT:    movl $-1, %esi
; X86-AVX1-NEXT:    cmovbel %edx, %esi
; X86-AVX1-NEXT:    movl $2147483647, %edx # imm = 0x7FFFFFFF
; X86-AVX1-NEXT:    cmovbel %ecx, %edx
; X86-AVX1-NEXT:    vucomisd %xmm0, %xmm0
; X86-AVX1-NEXT:    cmovpl %eax, %edx
; X86-AVX1-NEXT:    cmovpl %eax, %esi
; X86-AVX1-NEXT:    vmovd %esi, %xmm0
; X86-AVX1-NEXT:    vpinsrd $1, %edx, %xmm0, %xmm0
; X86-AVX1-NEXT:    vmovq %xmm0, {{[0-9]+}}(%esp)
; X86-AVX1-NEXT:    fildll {{[0-9]+}}(%esp)
; X86-AVX1-NEXT:    fstpl {{[0-9]+}}(%esp)
; X86-AVX1-NEXT:    fldl {{[0-9]+}}(%esp)
; X86-AVX1-NEXT:    leal -4(%ebp), %esp
; X86-AVX1-NEXT:    popl %esi
; X86-AVX1-NEXT:    popl %ebp
; X86-AVX1-NEXT:    retl
  %i = call i64 @llvm.fptosi.sat.i64.f64(double %x)
  %r = sitofp i64 %i to double
  ret double %r
}

attributes #0 = { nounwind "no-signed-zeros-fp-math"="true" }
