summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-05-05 23:19:45 +0000
committerChris Lattner <sabre@nondot.org>2008-05-05 23:19:45 +0000
commit88c1baa50c3947026f0ee76471933775b31e2a49 (patch)
tree17f5c5683279960f0210ed4ebd2423813a3e6293 /lib
parentab3e747c64dc5cbf00c3e0ce5275a3bfac5e56be (diff)
downloadllvm-88c1baa50c3947026f0ee76471933775b31e2a49.tar.gz
llvm-88c1baa50c3947026f0ee76471933775b31e2a49.tar.bz2
llvm-88c1baa50c3947026f0ee76471933775b31e2a49.tar.xz
add a micro optzn.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50681 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Target/X86/README.txt18
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/Target/X86/README.txt b/lib/Target/X86/README.txt
index fcbae96bee..6f6abd478d 100644
--- a/lib/Target/X86/README.txt
+++ b/lib/Target/X86/README.txt
@@ -1691,3 +1691,21 @@ LBB1_1: ## bb.i
...
//===---------------------------------------------------------------------===//
+
+We compile:
+
+int test(int x, int y) {
+ return x-y-1;
+}
+
+into (-m64):
+
+_test:
+ decl %edi
+ movl %edi, %eax
+ subl %esi, %eax
+ ret
+
+it would be better to codegen as: x+~y (notl+addl)
+
+//===---------------------------------------------------------------------===//