summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-05-30 21:29:15 +0000
committerChris Lattner <sabre@nondot.org>2006-05-30 21:29:15 +0000
commita5d45872962435d7e541666ef10c3e3f4c4b10e9 (patch)
tree3f907e6c7608ff90a2560f81fd23ed1fa44cdc9a /llvm
parentb9342afa56a04fb3a0d3bd79f379b93ede12d485 (diff)
downloadbcm5719-llvm-a5d45872962435d7e541666ef10c3e3f4c4b10e9.tar.gz
bcm5719-llvm-a5d45872962435d7e541666ef10c3e3f4c4b10e9.zip
Add a note
llvm-svn: 28572
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Target/README.txt19
1 files changed, 19 insertions, 0 deletions
diff --git a/llvm/lib/Target/README.txt b/llvm/lib/Target/README.txt
index 807768002b5..650eabf2d4d 100644
--- a/llvm/lib/Target/README.txt
+++ b/llvm/lib/Target/README.txt
@@ -251,3 +251,22 @@ void %test(uint* %P) {
ret void
}
+//===---------------------------------------------------------------------===//
+
+dag/inst combine "clz(x)>>5 -> x==0" for 32-bit x.
+
+Compile:
+
+int bar(int x)
+{
+ int t = __builtin_clz(x);
+ return -(t>>5);
+}
+
+to:
+
+_bar: addic r3,r3,-1
+ subfe r3,r3,r3
+ blr
+
+
OpenPOWER on IntegriCloud