[x86] add test for false dependency with AVX; NFC
authorSanjay Patel <spatel@rotateright.com>
Tue, 10 Sep 2019 20:04:10 +0000 (20:04 +0000)
committerSanjay Patel <spatel@rotateright.com>
Tue, 10 Sep 2019 20:04:10 +0000 (20:04 +0000)
Goes with D67363

llvm-svn: 371551

llvm/test/CodeGen/X86/stack-folding-fp-avx1.ll

index 2b13350..3b69f2d 100644 (file)
@@ -2868,6 +2868,21 @@ define double @stack_fold_roundsd(double %a0) optsize {
   %2 = call double @llvm.floor.f64(double %a0)
   ret double %2
 }
+
+define double @stack_fold_roundsd_minsize(double %a0) minsize {
+; CHECK-LABEL: stack_fold_roundsd_minsize:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    vmovsd %xmm0, {{[-0-9]+}}(%r{{[sb]}}p) # 8-byte Spill
+; CHECK-NEXT:    #APP
+; CHECK-NEXT:    nop
+; CHECK-NEXT:    #NO_APP
+; CHECK-NEXT:    vxorps %xmm0, %xmm0, %xmm0
+; CHECK-NEXT:    vroundsd $9, {{[-0-9]+}}(%r{{[sb]}}p), %xmm0, %xmm0 # 8-byte Folded Reload
+; CHECK-NEXT:    retq
+  %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 = call double @llvm.floor.f64(double %a0)
+  ret double %2
+}
 declare double @llvm.floor.f64(double) nounwind readnone
 
 define <2 x double> @stack_fold_roundsd_int(<2 x double> %a0, <2 x double> %a1) optsize {