aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-05-18 17:38:16 +0000
committerChris Lattner <sabre@nondot.org>2006-05-18 17:38:16 +0000
commit3f705e660a071f0f6a2644b21868569e0b530247 (patch)
tree6b27cc88f0c719fdd4f3b6bc0ab4a5a841c6a32f
parentd56aa55358689dac47b774c6778363367f0158b4 (diff)
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28383 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/README.txt15
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/Target/X86/README.txt b/lib/Target/X86/README.txt
index 1ace55927c..05dc535a7b 100644
--- a/lib/Target/X86/README.txt
+++ b/lib/Target/X86/README.txt
@@ -380,6 +380,21 @@ bool %test(int %X) {
This may just be a matter of using 'test' to write bigger patterns for X86cmp.
+An important case is comparison against zero:
+
+if (X == 0) ...
+
+instead of:
+
+ cmpl $0, %eax
+ je LBB4_2 #cond_next
+
+use:
+ test %eax, %eax
+ jz LBB4_2
+
+which is smaller.
+
//===---------------------------------------------------------------------===//
SSE should implement 'select_cc' using 'emulated conditional moves' that use