Commit cc3f5fb2 authored by Mike Stephens's avatar Mike Stephens
Browse files

added separate flag, ShrinkableDAs

parent 9d7c225e
......@@ -104,7 +104,7 @@ DAHandler_PreGrow * 0
DAHandler_PostGrow * 1
DAHandler_PreShrink * 2
DAHandler_PostShrink * 3
[ STB
[ ShrinkableDAs
DAHandler_TestShrink * 4 ; new reason added to find amount area could shrink by
]
......@@ -1711,7 +1711,7 @@ DAReason_Remove * 1
DAReason_GetInfo * 2
DAReason_Enumerate * 3
DAReason_Renumber * 4
[ STB
[ ShrinkableDAs
DAReason_ReturnFree * 5
DAReason_Limit * 6
|
......@@ -1732,7 +1732,7 @@ DynAreaFlags_NotUserDraggable * 1 :SHL: 7
DynAreaFlags_NeedsSpecificPages * 1 :SHL: 8 ; whether area will ever require particular physical pages
]
; amg: renaissance... this is a mess!
[ STB
[ ShrinkableDAs
DynAreaFlags_Shrinkable * 1 :SHL: 9 ; whether area should be shrunk when need more space in free pool
DynAreaFlags_AccessMask * DynAreaFlags_APBits :OR: DynAreaFlags_NotBufferable :OR: DynAreaFlags_NotCacheable :OR: DynAreaFlags_DoublyMapped
......@@ -1774,7 +1774,7 @@ DynAreaSub
B DynArea_GetInfo
B DynArea_Enumerate
B DynArea_Renumber
[ STB
[ ShrinkableDAs
B DynArea_ReturnFree
]
......@@ -2175,7 +2175,7 @@ DynArea_Renumber ALTENTRY
SETV
EXIT
[ STB
[ ShrinkableDAs
;**************************************************************************
;
; DynArea_ReturnFree - Return total free space, including shrinkables
......@@ -2805,7 +2805,7 @@ AreaShrink
LDMIA r2, {r2, r3}
SUB lr, r3, r2 ; lr = amount dest could grow
[ STB
[ ShrinkableDAs
CMP r1, lr
MOVHI r1, lr ; r1 = the most we want to move if we could
BLHI GenNotAllMovedError ; but if not all we still want error
......@@ -2814,7 +2814,7 @@ AreaShrink
BEQ IssueServiceMemoryMoved
]
[ STB
[ ShrinkableDAs
LDR r2, [r11, #DANode_Size] ; amount src could shrink
CMP r2, r1
BLCC TryToShrinkShrinkables
......@@ -2991,7 +2991,7 @@ AreaGrow
62
[ STB
[ ShrinkableDAs
; growing another area from free pool
; insert code here to check for shrinking shrinkable areas
......@@ -3170,7 +3170,7 @@ IssueServiceMemoryMoved
Pull "r0, r2-r9, r10, lr"
ExitSWIHandler
[ STB
[ ShrinkableDAs
; ***********************************************************************************
;
; TryToShrinkShrinkables - Attempt to make more space by shrinking shrinkable areas if appropriate
......@@ -3954,7 +3954,7 @@ CallPostGrow ENTRY "r0,r3,r4, r12"
LDMIA r12, {r12, pc} ; load workspace pointer and jump to handler
EXIT
[ STB
[ ShrinkableDAs
; ***********************************************************************************
;
; CallTestShrink - Call test-shrink routine
......
......@@ -321,6 +321,8 @@ IgnoreVRAM SETL {FALSE}
GBLL LateAborts ; if true, use late abort mode on ARM600 (compulsory on ARM700)
LateAborts SETL MEMM_Type = "ARM600" :LAND: {TRUE}
GBLL ShrinkableDAs ; if true, support Shrinkable Dynamic Areas (eg. CacheFS)
ShrinkableDAs SETL {TRUE}
GBLL StrongARM
GBLL SAWBbroken ;whether StrongARM Write Buffer is broken (pass 1 silicon only)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment