[llvm-commits] CVS: llvm/test/C++Frontend/2007-04-11-InlineStorageClassC++.cpp 2003-11-02-WeakLinkage.cpp.tr

Dale Johannesen dalej at apple.com
Thu Apr 12 14:02:11 PDT 2007



Changes in directory llvm/test/C++Frontend:

2007-04-11-InlineStorageClassC++.cpp added (r1.1)
2003-11-02-WeakLinkage.cpp.tr updated: 1.6 -> 1.7
---
Log message:

testcases for function linkage


---
Diffs of the changes:  (+37 -1)

 2003-11-02-WeakLinkage.cpp.tr        |    1 
 2007-04-11-InlineStorageClassC++.cpp |   37 +++++++++++++++++++++++++++++++++++
 2 files changed, 37 insertions(+), 1 deletion(-)


Index: llvm/test/C++Frontend/2007-04-11-InlineStorageClassC++.cpp
diff -c /dev/null llvm/test/C++Frontend/2007-04-11-InlineStorageClassC++.cpp:1.1
*** /dev/null	Thu Apr 12 16:02:03 2007
--- llvm/test/C++Frontend/2007-04-11-InlineStorageClassC++.cpp	Thu Apr 12 16:01:53 2007
***************
*** 0 ****
--- 1,37 ----
+ // RUN: %llvmgxx %s -S -emit-llvm -O0 -o - | grep define | grep xglobWeak | grep linkonce | wc -l | grep 1
+ // RUN: %llvmgxx %s -S -emit-llvm -O0 -o - | grep define | grep xextWeak | grep linkonce | wc -l | grep 1
+ // RUN: %llvmgxx %s -S -emit-llvm -O0 -o - | grep define | grep xWeaknoinline | grep weak wc -l | grep 1
+ // RUN: %llvmgxx %s -S -emit-llvm -O0 -o - | grep define | grep xWeakextnoinline | grep weak wc -l | grep 1
+ // RUN: %llvmgxx %s -S -emit-llvm -O0 -o - | grep declare | grep xglobnoWeak | grep linkonce | wc -l | grep 1
+ // RUN: %llvmgxx %s -S -emit-llvm -O0 -o - | grep define | grep xstatnoWeak | grep internal | wc -l | grep 1
+ // RUN: %llvmgxx %s -S -emit-llvm -O0 -o - | grep define | grep xextnoWeak | grep linkonce | wc -l | grep 1
+ inline int xglobWeak(int) __attribute__((weak));
+ inline int xglobWeak (int i) {
+   return i*2;
+ }
+ inline int xextWeak(int) __attribute__((weak));
+ extern  inline int xextWeak (int i) {
+   return i*4;
+ }
+ int xWeaknoinline(int) __attribute__((weak));
+ int xWeaknoinline(int i) {
+   return i*8;
+ }
+ int xWeakextnoinline(int) __attribute__((weak));
+ extern int xWeakextnoinline(int i) {
+   return i*16;
+ }
+ inline int xglobnoWeak (int i) {
+   return i*32;
+ }
+ static inline int xstatnoWeak (int i) {
+   return i*64;
+ }
+ extern  inline int xextnoWeak (int i) {
+   return i*128;
+ }
+ int j(int y) {
+   return xglobnoWeak(y)+xstatnoWeak(y)+xextnoWeak(y)+
+         xglobWeak(y)+xextWeak(y)+
+         xWeakextnoinline(y)+xWeaknoinline(y);
+ }


Index: llvm/test/C++Frontend/2003-11-02-WeakLinkage.cpp.tr
diff -u llvm/test/C++Frontend/2003-11-02-WeakLinkage.cpp.tr:1.6 llvm/test/C++Frontend/2003-11-02-WeakLinkage.cpp.tr:1.7
--- llvm/test/C++Frontend/2003-11-02-WeakLinkage.cpp.tr:1.6	Fri Jan 26 18:23:45 2007
+++ llvm/test/C++Frontend/2003-11-02-WeakLinkage.cpp.tr	Thu Apr 12 16:01:53 2007
@@ -1,5 +1,4 @@
 // RUN: %llvmgcc -xc++ -S -o - %s | not grep weak
-// XFAIL: llvmgcc4
 // The template should compile to linkonce linkage, not weak linkage.
 
 template<class T>






More information about the llvm-commits mailing list