aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target
diff options
context:
space:
mode:
authorNick Lewycky <nicholas@mxc.ca>2009-09-20 07:31:25 +0000
committerNick Lewycky <nicholas@mxc.ca>2009-09-20 07:31:25 +0000
commit5086a10b582cf8d9f0f1ac4d7569c24d260092c8 (patch)
tree345b1810b674b10357557c479b166a520f62c28c /lib/Target
parenta7e959d869e698bf1b8d22044d96655632f6072e (diff)
downloadexternal_llvm-5086a10b582cf8d9f0f1ac4d7569c24d260092c8.zip
external_llvm-5086a10b582cf8d9f0f1ac4d7569c24d260092c8.tar.gz
external_llvm-5086a10b582cf8d9f0f1ac4d7569c24d260092c8.tar.bz2
Peer through zext and sext to eliminate them when it is safe to do so.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82389 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target')
-rw-r--r--lib/Target/README.txt22
1 files changed, 0 insertions, 22 deletions
diff --git a/lib/Target/README.txt b/lib/Target/README.txt
index 9dd2b36..f180c2e 100644
--- a/lib/Target/README.txt
+++ b/lib/Target/README.txt
@@ -1656,25 +1656,3 @@ Instcombine should be able to optimize away the loads (and thus the globals).
See also PR4973
//===---------------------------------------------------------------------===//
-
-I saw this constant expression in real code after llvm-g++ -O2:
-
-declare extern_weak i32 @0(i64)
-
-define void @foo() {
- br i1 icmp eq (i32 zext (i1 icmp ne (i32 (i64)* @0, i32 (i64)* null) to i32),
-i32 0), label %cond_true, label %cond_false
-cond_true:
- ret void
-cond_false:
- ret void
-}
-
-That branch expression should be reduced to:
-
- i1 icmp eq (i32 (i64)* @0, i32 (i64)* null)
-
-It's probably not a perf issue, I just happened to see it while examining
-something else and didn't want to forget about it.
-
-//===---------------------------------------------------------------------===//