verify builtin optimization works like gcc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50594 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/CFrontend/libcalls.c b/test/CFrontend/libcalls.c
new file mode 100644
index 0000000..c027ea4
--- /dev/null
+++ b/test/CFrontend/libcalls.c
@@ -0,0 +1,10 @@
+// llvm-gcc -O1+ should run simplify libcalls, O0 shouldn't
+// and -fno-builtins shouldn't.
+// RUN: %llvmgcc %s -S -emit-llvm -O0 -o - | grep {call.*exp2f}
+// RUN: %llvmgcc %s -S -emit-llvm -O1 -o - | grep {call.*ldexp}
+// RUN: %llvmgcc %s -S -emit-llvm -O3 -fno-builtin -o - | grep {call.*exp2f}
+
+float t4(unsigned char x) {
+  return exp2f(x);
+}
+