diff options
author | Chris Lattner <sabre@nondot.org> | 2004-03-08 06:17:15 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-03-08 06:17:15 +0000 |
commit | 3c6d4b4f81f434c2f7524b15baf7795d6ee7f5d9 (patch) | |
tree | ae36a7b5b639a88bf0f6223fee82b9f286259d33 | |
parent | 2c56b55cf054f472ff644d15e4a7a7974bd1dab3 (diff) | |
download | external_llvm-3c6d4b4f81f434c2f7524b15baf7795d6ee7f5d9.zip external_llvm-3c6d4b4f81f434c2f7524b15baf7795d6ee7f5d9.tar.gz external_llvm-3c6d4b4f81f434c2f7524b15baf7795d6ee7f5d9.tar.bz2 |
New testcase for folding in some important situations. The first two
come up a lot in the code generated by the C++ front-end for pointers
to member functions. See PR166.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12217 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | test/Assembler/2004-03-07-FunctionAddressAlignment.llx | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/test/Assembler/2004-03-07-FunctionAddressAlignment.llx b/test/Assembler/2004-03-07-FunctionAddressAlignment.llx new file mode 100644 index 0000000..13f7392 --- /dev/null +++ b/test/Assembler/2004-03-07-FunctionAddressAlignment.llx @@ -0,0 +1,15 @@ +; RUN: llvm-as < %s | llvm-dis | not grep cast +; All of these should be eliminable + + +int %foo() { + ret int and (int cast (int()* %foo to int), int 1) +} + +int %foo2() { + ret int and (int 1, int cast (int()* %foo2 to int)) +} + +bool %foo3() { + ret bool cast (bool()* %foo3 to bool) +} |