aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/X86/README.txt
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2009-10-27 22:40:45 +0000
committerBill Wendling <isanbard@gmail.com>2009-10-27 22:40:45 +0000
commitd8499c9b7fae7c5afbb81dc7e7cf957abbafdb54 (patch)
tree83c41cde2d84f49d18135709c527f56b7a1eff3b /lib/Target/X86/README.txt
parent18fec73e29d68b9c7473720507f51de39b0873b1 (diff)
downloadexternal_llvm-d8499c9b7fae7c5afbb81dc7e7cf957abbafdb54.zip
external_llvm-d8499c9b7fae7c5afbb81dc7e7cf957abbafdb54.tar.gz
external_llvm-d8499c9b7fae7c5afbb81dc7e7cf957abbafdb54.tar.bz2
Modify note.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85331 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/README.txt')
-rw-r--r--lib/Target/X86/README.txt8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/Target/X86/README.txt b/lib/Target/X86/README.txt
index 5967fd5..75dde2d 100644
--- a/lib/Target/X86/README.txt
+++ b/lib/Target/X86/README.txt
@@ -1969,9 +1969,17 @@ LBB1_2:
movsbl %al, %eax
Better:
+
movl %esi, %eax
orl $-128, %eax
andl $-128, %esi
testb %dil, %dil
cmovns %esi, %eax
movsbl %al,%eax
+
+Best (recognize this as 'b = (b & ~0x80) | (a & 0x80)'):
+
+ andb $-128, %dil
+ andb $127, %sil
+ orb %dil, %sil
+ movsbl %sil, %eax