summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/Hexagon/fsel.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/CodeGen/Hexagon/fsel.ll')
-rw-r--r--llvm/test/CodeGen/Hexagon/fsel.ll22
1 files changed, 22 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Hexagon/fsel.ll b/llvm/test/CodeGen/Hexagon/fsel.ll
new file mode 100644
index 00000000000..247249da50b
--- /dev/null
+++ b/llvm/test/CodeGen/Hexagon/fsel.ll
@@ -0,0 +1,22 @@
+; RUN: llc -march=hexagon -O0 < %s | FileCheck %s
+
+; CHECK-LABEL: danny:
+; CHECK: mux(p0, r1, ##1065353216)
+
+define float @danny(i32 %x, float %f) #0 {
+ %t = icmp sgt i32 %x, 0
+ %u = select i1 %t, float %f, float 1.0
+ ret float %u
+}
+
+; CHECK-LABEL: sammy:
+; CHECK: mux(p0, ##1069547520, r1)
+
+define float @sammy(i32 %x, float %f) #0 {
+ %t = icmp sgt i32 %x, 0
+ %u = select i1 %t, float 1.5, float %f
+ ret float %u
+}
+
+attributes #0 = { nounwind "target-cpu"="hexagonv5" }
+
OpenPOWER on IntegriCloud