diff options
Diffstat (limited to 'test/CodeGen/X86/stack-folding-fp-sse42.ll')
-rw-r--r-- | test/CodeGen/X86/stack-folding-fp-sse42.ll | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/test/CodeGen/X86/stack-folding-fp-sse42.ll b/test/CodeGen/X86/stack-folding-fp-sse42.ll index 95f0c3d3a188..63acf5f4f96f 100644 --- a/test/CodeGen/X86/stack-folding-fp-sse42.ll +++ b/test/CodeGen/X86/stack-folding-fp-sse42.ll @@ -314,7 +314,13 @@ define i64 @stack_fold_cvtsd2si64_int(<2 x double> %a0) { } declare i64 @llvm.x86.sse2.cvtsd2si64(<2 x double>) nounwind readnone -; TODO stack_fold_cvtsd2ss +define float @stack_fold_cvtsd2ss(double %a0) optsize { + ;CHECK-LABEL: stack_fold_cvtsd2ss + ;CHECK: cvtsd2ss {{-?[0-9]*}}(%rsp), {{%xmm[0-9][0-9]*}} {{.*#+}} 8-byte Folded Reload + %1 = tail call <2 x i64> asm sideeffect "nop", "=x,~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{flags}"() + %2 = fptrunc double %a0 to float + ret float %2 +} define <4 x float> @stack_fold_cvtsd2ss_int(<2 x double> %a0) optsize { ;CHECK-LABEL: stack_fold_cvtsd2ss_int |