summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-02-19 07:15:39 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-02-19 07:15:39 +0000
commitf0acf7bd4c72370ecfc358d2d007b25d1b433cbc (patch)
treeaf9ff20614cabc6de72392e70929b047021b33f3 /clang/test/CodeGen
parent5c275a94fbce930568cecc3aa3f94ae1fe78c67d (diff)
downloadbcm5719-llvm-f0acf7bd4c72370ecfc358d2d007b25d1b433cbc.tar.gz
bcm5719-llvm-f0acf7bd4c72370ecfc358d2d007b25d1b433cbc.zip
Don't emit K&R unprototyped function definitions as varargs.
- <rdar://problem/6584606> clang/x86-64 - too many reg saves llvm-svn: 65032
Diffstat (limited to 'clang/test/CodeGen')
-rw-r--r--clang/test/CodeGen/functions.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/clang/test/CodeGen/functions.c b/clang/test/CodeGen/functions.c
index 83da64704bb..ad918263c5f 100644
--- a/clang/test/CodeGen/functions.c
+++ b/clang/test/CodeGen/functions.c
@@ -1,4 +1,5 @@
-// RUN: clang %s -emit-llvm -o -
+// RUN: clang %s -emit-llvm -o %t &&
+
int g();
int foo(int i) {
@@ -17,3 +18,14 @@ void test3(T f) {
int a(int);
int a() {return 1;}
+
+// RUN: grep 'define void @f0()' %t &&
+void f0() {}
+
+void f1();
+// RUN: grep 'call void (...)\* bitcast (void ()\* @f1' %t &&
+void f2(void) {
+ f1(1, 2, 3);
+}
+// RUN: grep 'define void @f1()' %t
+void f1() {}
OpenPOWER on IntegriCloud