forked from Imagelibrary/rtems
SPARC: optimize window overflow trap entry
By using a optimized trap entry we can move instructions from the window overflow function into the trap entry vector. By using the saved locals instead of g1 we don't need to save that register temporarily. Also spead out non store instructions inbetween stores to use the write buffer better.
This commit is contained in:
@@ -60,6 +60,7 @@ SYM(window_overflow_trap_handler):
|
||||
srl %l3, 1, %l3 ! l3 = WIM >> 1
|
||||
wr %l3, %l2, %wim ! WIM = (WIM >> 1) ^
|
||||
! (WIM << (Number Windows - 1))
|
||||
! 3 instruction delay not needed here
|
||||
std %i0, [%sp + 0x20] ! save input register set
|
||||
std %i2, [%sp + 0x28]
|
||||
std %i4, [%sp + 0x30]
|
||||
|
||||
Reference in New Issue
Block a user