summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGen/regparm.c
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2010-03-30 22:15:11 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2010-03-30 22:15:11 +0000
commit49b85ab6e696948452a7809909aaf2757fdaaf5a (patch)
tree24136847c945b637ef5aa46354c625137c39a0d5 /clang/test/CodeGen/regparm.c
parent998d51b98f3716b5109d666243f9e0d69c9963dc (diff)
downloadbcm5719-llvm-49b85ab6e696948452a7809909aaf2757fdaaf5a.tar.gz
bcm5719-llvm-49b85ab6e696948452a7809909aaf2757fdaaf5a.zip
Remember the regparm attribute in FunctionType::ExtInfo.
Fixes PR3782. llvm-svn: 99940
Diffstat (limited to 'clang/test/CodeGen/regparm.c')
-rw-r--r--clang/test/CodeGen/regparm.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/clang/test/CodeGen/regparm.c b/clang/test/CodeGen/regparm.c
index 2b5bbfc1a36..2dd796489cc 100644
--- a/clang/test/CodeGen/regparm.c
+++ b/clang/test/CodeGen/regparm.c
@@ -8,12 +8,16 @@ typedef struct {
int ccc[200];
} foo;
+typedef void (*FType)(int, int) __attribute ((regparm (3), stdcall));
+FType bar;
+
static void FASTCALL
-reduced(char b, double c, foo* d, double e, int f) {
-}
+reduced(char b, double c, foo* d, double e, int f);
int
main(void) {
// CHECK: call void @reduced(i8 signext inreg 0, {{.*}} %struct.anon* inreg null
reduced(0, 0.0, 0, 0.0, 0);
+ // CHECK: call x86_stdcallcc void %tmp(i32 inreg 1, i32 inreg 2)
+ bar(1,2);
}
OpenPOWER on IntegriCloud