Minor x86 README updates.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126054 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Eli Friedman 2011-02-19 21:54:28 +00:00
parent 37d42f8a50
commit 86b115c78b

View File

@ -710,21 +710,15 @@ This:
{ return !full_add(a, b).second; } { return !full_add(a, b).second; }
Should compile to: Should compile to:
addl %esi, %edi
_Z11no_overflowjj:
addl %edi, %esi
setae %al setae %al
movzbl %al, %eax
ret ret
FIXME: That code looks wrong; bool return is normally defined as zext. on x86-64, instead of the rather stupid-looking:
addl %esi, %edi
on x86-64, not: setb %al
xorb $1, %al
__Z11no_overflowjj:
addl %edi, %esi
cmpl %edi, %esi
setae %al
movzbl %al, %eax movzbl %al, %eax
ret ret
@ -994,9 +988,9 @@ _foo:
instead of: instead of:
_foo: _foo:
movl $255, %eax movl $65280, %eax
orl 4(%esp), %eax andl 4(%esp), %eax
andl $65535, %eax orl $255, %eax
ret ret
//===---------------------------------------------------------------------===// //===---------------------------------------------------------------------===//