diff options
author | Daniel Dunbar <daniel@zuster.org> | 2009-02-19 07:15:39 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2009-02-19 07:15:39 +0000 |
commit | f0acf7bd4c72370ecfc358d2d007b25d1b433cbc (patch) | |
tree | af9ff20614cabc6de72392e70929b047021b33f3 /clang/test/CodeGen/functions.c | |
parent | 5c275a94fbce930568cecc3aa3f94ae1fe78c67d (diff) | |
download | bcm5719-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/functions.c')
-rw-r--r-- | clang/test/CodeGen/functions.c | 14 |
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() {} |