mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-19 19:44:55 +00:00
Add some notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18911 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -53,7 +53,27 @@ To-do
|
|||||||
|
|
||||||
* support shl on longs (fourinarow needs this)
|
* support shl on longs (fourinarow needs this)
|
||||||
* support casting 64-bit integers to FP types (fhourstones 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$
|
$Date$
|
||||||
|
|
||||||
|
@@ -53,7 +53,27 @@ To-do
|
|||||||
|
|
||||||
* support shl on longs (fourinarow needs this)
|
* support shl on longs (fourinarow needs this)
|
||||||
* support casting 64-bit integers to FP types (fhourstones 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$
|
$Date$
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user