diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2011-04-29 14:09:57 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2011-04-29 14:09:57 +0000 |
commit | ce3a022b8c07339b31aadb56288a8e02c76b40e3 (patch) | |
tree | a5bc6edbd2fc41159a8f4ded22cdef5a679eea5f | |
parent | e02a1501e79e7017e989ba7db0eed0eaea1ece0b (diff) |
This is done.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@130499 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/X86/README.txt | 20 |
1 files changed, 0 insertions, 20 deletions
diff --git a/lib/Target/X86/README.txt b/lib/Target/X86/README.txt index 8237fbd094..ea3014e7b9 100644 --- a/lib/Target/X86/README.txt +++ b/lib/Target/X86/README.txt @@ -1728,26 +1728,6 @@ are functionally identical. //===---------------------------------------------------------------------===// Take the following C code: -int x(int y) { return (y & 63) << 14; } - -Code produced by gcc: - andl $63, %edi - sall $14, %edi - movl %edi, %eax - ret - -Code produced by clang: - shll $14, %edi - movl %edi, %eax - andl $1032192, %eax - ret - -The code produced by gcc is 3 bytes shorter. This sort of construct often -shows up with bitfields. - -//===---------------------------------------------------------------------===// - -Take the following C code: int f(int a, int b) { return (unsigned char)a == (unsigned char)b; } We generate the following IR with clang: |