From e171d5c812c308eb93ea611cae5c480279a82fbc Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 13 Dec 2004 20:13:10 +0000 Subject: [PATCH] Add some notes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18911 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/Sparc/README.txt | 22 +++++++++++++++++++++- lib/Target/SparcV8/README.txt | 22 +++++++++++++++++++++- 2 files changed, 42 insertions(+), 2 deletions(-) diff --git a/lib/Target/Sparc/README.txt b/lib/Target/Sparc/README.txt index 1b25922438d..d45a370e23e 100644 --- a/lib/Target/Sparc/README.txt +++ b/lib/Target/Sparc/README.txt @@ -53,7 +53,27 @@ To-do * support shl on longs (fourinarow needs this) * support casting 64-bit integers to FP types (fhourstones needs this) -* support FP rem +* support FP rem (call fmod) + +* Eliminate srl/sll by zero bits like this: + sll %l0, 0, %l0 + srl %l0, 0, %o0 + + We think these are only used by V9 to clear off the top 32 bits of a reg, + so they are not needed. + +* Keep the address of the constant pool in a register instead of forming its + address all of the time. + +* Change code like this: + or %o0, %lo(.CPI_main_0), %o0 + ld [%o0+0], %o0 + into: + ld [%o0+%lo(.CPI_main_0)], %o0 + for constant pool access. + +* We can fold small constant offsets into the %hi/%lo references to constant + pool addresses as well. $Date$ diff --git a/lib/Target/SparcV8/README.txt b/lib/Target/SparcV8/README.txt index 1b25922438d..d45a370e23e 100644 --- a/lib/Target/SparcV8/README.txt +++ b/lib/Target/SparcV8/README.txt @@ -53,7 +53,27 @@ To-do * support shl on longs (fourinarow needs this) * support casting 64-bit integers to FP types (fhourstones needs this) -* support FP rem +* support FP rem (call fmod) + +* Eliminate srl/sll by zero bits like this: + sll %l0, 0, %l0 + srl %l0, 0, %o0 + + We think these are only used by V9 to clear off the top 32 bits of a reg, + so they are not needed. + +* Keep the address of the constant pool in a register instead of forming its + address all of the time. + +* Change code like this: + or %o0, %lo(.CPI_main_0), %o0 + ld [%o0+0], %o0 + into: + ld [%o0+%lo(.CPI_main_0)], %o0 + for constant pool access. + +* We can fold small constant offsets into the %hi/%lo references to constant + pool addresses as well. $Date$ -- 2.34.1