[llvm-commits] CVS: llvm/test/Regression/Linker/2003-05-31-LinkerRename.ll

Chris Lattner lattner at cs.uiuc.edu
Sat May 31 16:15:01 PDT 2003


Changes in directory llvm/test/Regression/Linker:

2003-05-31-LinkerRename.ll added (r1.1)

---
Log message:

New testcase for behavior we depend on.


---
Diffs of the changes:

Index: llvm/test/Regression/Linker/2003-05-31-LinkerRename.ll
diff -c /dev/null llvm/test/Regression/Linker/2003-05-31-LinkerRename.ll:1.1
*** /dev/null	Sat May 31 16:14:55 2003
--- llvm/test/Regression/Linker/2003-05-31-LinkerRename.ll	Sat May 31 16:14:45 2003
***************
*** 0 ****
--- 1,20 ----
+ ; The funcresolve pass will (intentionally) link an _internal_ function body with an
+ ; external declaration.  Because of this, if we LINK an internal function body into
+ ; a program that already has an external declaration for the function name, we must
+ ; rename the internal function to something that does not conflict.
+ 
+ ; RUN: echo "implementation internal int %foo() { ret int 7 }" | as > Output/%s.1.bc
+ ; RUN: as < %s > Output/%s.2.bc
+ ; RUN: if link Output/%s.[12].bc | dis | grep 'internal' | grep '%foo('
+ ; RUN: then exit 1
+ ; RUN: else exit 0
+ ; RUN: fi
+ 
+ implementation
+ declare int %foo() 
+ 
+ int %test() { 
+   %X = call int %foo()
+   ret int %X
+ }
+ 





More information about the llvm-commits mailing list