From c21051ff96345be6a7af962c359ccbdd896da41e Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Sun, 4 Jun 2006 09:08:00 +0000 Subject: [PATCH] A few new entries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28683 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/README.txt | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/lib/Target/X86/README.txt b/lib/Target/X86/README.txt index 590a6dbebac..3e40027e9b6 100644 --- a/lib/Target/X86/README.txt +++ b/lib/Target/X86/README.txt @@ -538,6 +538,9 @@ _foo: sarl $24, %eax ret +SIGN_EXTEND_INREG can be implemented as (sext (trunc)) to take advantage of +sub-registers. + //===---------------------------------------------------------------------===// Consider this: @@ -649,3 +652,19 @@ estimate to determine whether the match is profitable. However, if we care more about code size, then imull is better. It's two bytes shorter than movl + leal. + +//===---------------------------------------------------------------------===// + +Implement CTTZ, CTLZ with bsf and bsr. + +//===---------------------------------------------------------------------===// + +It appears gcc place string data with linkonce linkage in +.section __TEXT,__const_coal,coalesced instead of +.section __DATA,__const_coal,coalesced. +Take a look at darwin.h, there are other Darwin assembler directives that we +do not make use of. + +//===---------------------------------------------------------------------===// + +We should handle __attribute__ ((__visibility__ ("hidden"))).