[NFC][GVNSink] Pre-commit unary FNeg test to fpmath.ll
authorCameron McInally <cameron.mcinally@nyu.edu>
Thu, 27 Jun 2019 21:23:07 +0000 (21:23 +0000)
committerCameron McInally <cameron.mcinally@nyu.edu>
Thu, 27 Jun 2019 21:23:07 +0000 (21:23 +0000)
llvm-svn: 364597

llvm/test/Transforms/GVNSink/fpmath.ll [new file with mode: 0644]

diff --git a/llvm/test/Transforms/GVNSink/fpmath.ll b/llvm/test/Transforms/GVNSink/fpmath.ll
new file mode 100644 (file)
index 0000000..15d8684
--- /dev/null
@@ -0,0 +1,23 @@
+; RUN: opt -S < %s -gvn-sink | FileCheck %s
+
+; CHECK-LABEL: sink
+; CHECK: fneg
+; CHECK: = phi
+define float @sink(float %a, float %b, i1 %cmp) {
+entry:
+  br i1 %cmp, label %if.then, label %if.else
+
+if.then:
+  %sub = fsub float %a, %b
+  %neg0 = fneg float %sub
+  br label %if.end
+
+if.else:
+  %add = fadd float %a, %b
+  %neg1 = fneg float %add
+  br label %if.end
+
+if.end:
+  %phi = phi float [ %neg0, %if.then ], [ %neg1, %if.else ]
+  ret float %phi
+}