From 53f280a30e4729398de9c90f3c8694bcf0a703a3 Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Sat, 25 Feb 2006 10:04:07 +0000 Subject: [PATCH] Updates. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26375 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/README.txt | 23 +++-------------------- 1 file changed, 3 insertions(+), 20 deletions(-) diff --git a/lib/Target/X86/README.txt b/lib/Target/X86/README.txt index 941d52294b9..6c9a235ebbb 100644 --- a/lib/Target/X86/README.txt +++ b/lib/Target/X86/README.txt @@ -157,6 +157,7 @@ aren't. 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 @@ void clearbit(int *target, int bit) { //===---------------------------------------------------------------------===// -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 @@ and ISD::FMAX node types? //===---------------------------------------------------------------------===// -Select (add, x, GlobalAddress) to ADD32ri, etc. when it's appropriate. - -//===---------------------------------------------------------------------===// - The first BB of this code: declare bool %foo() @@ -533,4 +514,6 @@ _bar: It would be better to emit "cmp %al, 1" than a xor and test. +//===---------------------------------------------------------------------===// +Enable X86InstrInfo::convertToThreeAddress(). -- 2.34.1