Changes in directory llvm/lib/Target/X86:
README.txt updated: 1.60 -> 1.61 --- Log message: Updates. --- Diffs of the changes: (+3 -20) README.txt | 23 +++-------------------- 1 files changed, 3 insertions(+), 20 deletions(-) Index: llvm/lib/Target/X86/README.txt diff -u llvm/lib/Target/X86/README.txt:1.60 llvm/lib/Target/X86/README.txt:1.61 --- llvm/lib/Target/X86/README.txt:1.60 Wed Feb 22 23:17:43 2006 +++ llvm/lib/Target/X86/README.txt Sat Feb 25 04:04:07 2006 @@ -157,6 +157,7 @@ Use push/pop instructions in prolog/epilog sequences instead of stores off ESP (certain code size win, perf win on some [which?] processors). +Also, it appears icc use push for parameter passing. Need to investigate. //===---------------------------------------------------------------------===// @@ -411,22 +412,6 @@ //===---------------------------------------------------------------------===// -Easy: Global addresses are not always allowed as immediates. For this: - -int dst = 0; int *ptr = 0; -void foo() { ptr = &dst; } - -we get this: - -_foo: - movl $_dst, %eax - movl %eax, _ptr - ret - -When: "movl $_dst, _ptr" is sufficient. - -//===---------------------------------------------------------------------===// - Instead of the following for memset char*, 1, 10: movl $16843009, 4(%edx) @@ -505,10 +490,6 @@ //===---------------------------------------------------------------------===// -Select (add, x, GlobalAddress) to ADD32ri, etc. when it's appropriate. - -//===---------------------------------------------------------------------===// - The first BB of this code: declare bool %foo() @@ -533,4 +514,6 @@ It would be better to emit "cmp %al, 1" than a xor and test. +//===---------------------------------------------------------------------===// +Enable X86InstrInfo::convertToThreeAddress(). _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits