diff options
author | Chris Lattner <sabre@nondot.org> | 2004-08-14 20:47:56 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2004-08-14 20:47:56 +0000 |
commit | 9a8e0087514e4b8de20b555ace77e3b191fa1ade (patch) | |
tree | 72450b1608238632bc777b4e6805101bdd0ac0c4 /test/Transforms | |
parent | 0c3bba3d9cc3d69fec7a94a1b9d9e110ae14540e (diff) | |
download | external_llvm-9a8e0087514e4b8de20b555ace77e3b191fa1ade.zip external_llvm-9a8e0087514e4b8de20b555ace77e3b191fa1ade.tar.gz external_llvm-9a8e0087514e4b8de20b555ace77e3b191fa1ade.tar.bz2 |
New testcase that the constifier should handle
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15734 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms')
-rw-r--r-- | test/Transforms/GlobalConstifier/phi-select.llx | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/test/Transforms/GlobalConstifier/phi-select.llx b/test/Transforms/GlobalConstifier/phi-select.llx new file mode 100644 index 0000000..633ecd9 --- /dev/null +++ b/test/Transforms/GlobalConstifier/phi-select.llx @@ -0,0 +1,29 @@ +; Test that PHI nodes and select instructions do not necessarily make stuff +; non-constant. + +; RUN: llvm-as < %s | opt -constify | llvm-dis | not grep global + +%X = internal global int 4 +%Y = internal global int 5 + +int %test1(bool %C) { + %P = select bool %C, int* %X, int* %Y + %V = load int* %P + ret int %V +} + + +int %test2(bool %C) { + br bool %C, label %T, label %Cont +T: + br label %Cont +Cont: + %P = phi int* [%X, %0], [%Y, %T] + %V = load int* %P + ret int %V +} + + + + + |