Logo SoCRocket

Transaction-Level Modeling Framework for Space Applications

Variables
mmu_asm.S File Reference
#include "leon3.h"
#include "testmod.h"
#include "mmu.h"
Include dependency graph for mmu_asm.S:

Variables

seg text proc align
PAGE_SIZE_MAX global mmu_func1 
mmu_func1
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double 
mmu_double
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double 
g1
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc 
g2
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save 
sp
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp 
set
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std 
l0
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std 
l2
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std 
l4
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std 
l6
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov 
fp
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta 
g0
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta sub g1 sta
sub g1 sta sub g1 sta sta save
sp save sp restore restore nop
nop 
ldd [%fp-32]
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta sub g1 sta
sub g1 sta sub g1 sta sta save
sp save sp restore restore nop
nop l0 l2 l4 l6 nop nop
restore restore restore
restore restore ret restore
global 
_srmmu_fault
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta sub g1 sta
sub g1 sta sub g1 sta sta save
sp save sp restore restore nop
nop l0 l2 l4 l6 nop nop
restore restore restore
restore restore ret restore
global _srmmu_fault_svt 
_srmmu_fault_svt
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta sub g1 sta
sub g1 sta sub g1 sta sta save
sp save sp restore restore nop
nop l0 l2 l4 l6 nop nop
restore restore restore
restore restore ret restore
global _srmmu_fault_svt l3 l5 
mov
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta sub g1 sta
sub g1 sta sub g1 sta sta save
sp save sp restore restore nop
nop l0 l2 l4 l6 nop nop
restore restore restore
restore restore ret restore
global _srmmu_fault_svt l3 l5
l4 lda[%l5
ASI_M_MMUREGS
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta sub g1 sta
sub g1 sta sub g1 sta sta save
sp save sp restore restore nop
nop l0 l2 l4 l6 nop nop
restore restore restore
restore restore ret restore
global _srmmu_fault_svt l3 l5
l4 lda[%l5] l6!read sfar first
lda[%l4] l5!read sfsr last set 
pth_addr
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta sub g1 sta
sub g1 sta sub g1 sta sta save
sp save sp restore restore nop
nop l0 l2 l4 l6 nop nop
restore restore restore
restore restore ret restore
global _srmmu_fault_svt l3 l5
l4 lda[%l5] l6!read sfar first
lda[%l4] l5!read sfsr last set
l7!repair pth 
ld [%l7]
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta sub g1 sta
sub g1 sta sub g1 sta sta save
sp save sp restore restore nop
nop l0 l2 l4 l6 nop nop
restore restore restore
restore restore ret restore
global _srmmu_fault_svt l3 l5
l4 lda[%l5] l6!read sfar first
lda[%l4] l5!read sfsr last set
l7!repair pth l7 l4 l5 l6 or
l6!one page sta
ASI_M_FLUSH_PROBE st 
l5
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta sub g1 sta
sub g1 sta sub g1 sta sta save
sp save sp restore restore nop
nop l0 l2 l4 l6 nop nop
restore restore restore
restore restore ret restore
global _srmmu_fault_svt l3 l5
l4 lda[%l5] l6!read sfar first
lda[%l4] l5!read sfsr last set
l7!repair pth l7 l4 l5 l6 or
l6!one page sta
ASI_M_FLUSH_PROBE st 
inc
 
seg text proc align
PAGE_SIZE_MAX global mmu_func1
sp ret restore align global
mmu_double g2 andcc g0 bne nop
save sp save sp save sp save
sp save sp save sp l0 l1 l2 l3
l4 l5 l6 l7 g0 std std std std
mov g1 sub g1 sta sub g1 sta
sub g1 sta sub g1 sta sta save
sp save sp restore restore nop
nop l0 l2 l4 l6 nop nop
restore restore restore
restore restore ret restore
global _srmmu_fault_svt l3 l5
l4 lda[%l5] l6!read sfar first
lda[%l4] l5!read sfsr last set
l7!repair pth l7 l4 l5 l6 or
l6!one page sta
ASI_M_FLUSH_PROBE st l7 set l5
st 
l7
 

Variable Documentation

seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt l3 _srmmu_fault
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt _srmmu_fault_svt
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt l3 l5 l4 lda [%l5] l6 ! read sfar first lda [%l4] ASI_M_MMUREGS
mov g1 srl g1 andcc g0 be nop set g3 fsr f0 f2 f4 f6 f8 f10 f12 f14 f16 f18 f20 f22 f24 f26 f28 f30 nop nop nop nop nop faddd f4 nop nop nop nop ba nop align g3 srl g3 andcc g3 bne set g1 set g2 st set g2 st set g2 st!set g1 g2!st g1 g2 srl g2 g1 subcc g0 bne set g1 set g2 st g2 mov g0 be nop add g1 ba sub fp sub fp sub fp

Referenced by find().

seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt l3 l5 l4 lda [%l5] l6 ! read sfar first lda [%l4] l5 ! read sfsr last set l7 ! repair pth l7 l4 l5 l6 or l6 ! one page sta g0
mov g1 srl g1 andcc g0 be nop set g3 fsr f0 f2 f4 f6 f8 f10 f12 f14 f16 f18 f20 f22 f24 f26 f28 f30 nop nop nop nop nop faddd f4 nop nop nop nop ba nop align g3 srl g3 andcc g3 bne set g1 set g2 st set g2 st set g2 st!set g1 g2!st g1 g2 srl g2 g1 subcc g0 bne set g1 set g2 st g2 mov g0 be nop add g1 ba sub fp sub g1
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g2
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt l3 l5 l4 lda [%l5] l6 ! read sfar first lda [%l4] l5 ! read sfsr last set l7 ! repair pth l7 l4 l5 l6 or l6 ! one page sta ASI_M_FLUSH_PROBE st inc
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std l0
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std l2
nop!fill all registers g1 mov g2 mov g3 mov g4 and g4 mov l0 add g2 mov l1 add g2 mov l2 add g2 mov l3 add g2 mov l4 add g2 mov l5 add g2 mov l6 add g2 mov l7 add g2 mov o0 add g2 mov o1 add g2 mov o2 add g2 mov o3 add g2 mov o4 add g2 mov o5 add g2 mov o6 add g2 mov o7 add g2 save subcc g3 bge nop!check values g1 mov g2 mov g2 bne fail add g2 cmp g2 bne fail add g2 cmp g2 bne fail add g2 cmp g2 bne fail add g2 cmp l4
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt l3 l5 l4 lda [%l5] l6 ! read sfar first lda [%l4] l5 ! read sfsr last set l7 ! repair pth l7 l4 l5 l6 or l6 ! one page sta ASI_M_FLUSH_PROBE st l5
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt l3 l5 l4 lda [%l5] l6 ! read sfar first lda [%l4] l5 ! read sfsr last set l7 ! repair pth l7 l4 l5 l6 or l6
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt l3 l5 l4 lda [%l5] l6 ! read sfar first lda [%l4] l5 ! read sfsr last set l7 ! repair pth l7 l4 l5 l6 or l6 ! one page sta ASI_M_FLUSH_PROBE st l7 set l5 st l7
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt l3 l5 l4 lda [%l5] l6 ! read sfar first lda [%l4] l5 ! read sfsr last set l7 ! repair pth l7 l4 l5 ld[%l7+8]
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 ldd[%fp-8]
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double mmu_double

Referenced by mmu_test().

seg text proc align PAGE_SIZE_MAX global mmu_func1 mmu_func1
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt l3 l5 mov
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp restore restore nop nop l0 l2 l4 l6 nop nop restore restore restore restore restore ret restore global _srmmu_fault_svt l3 l5 l4 lda [%l5] l6 ! read sfar first lda [%l4] l5 ! read sfsr last set l7 ! repair pth l7 l4 l5 l6 or l6 ! one page sta ASI_M_FLUSH_PROBE st l7 set l5 st jmp l1 ! reexecute command rett l2 align global pth_addr1 pth_addr

Referenced by mmu_test().

seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 set
seg text proc align PAGE_SIZE_MAX global mmu_func1 sp ret restore align global mmu_double g2 andcc g0 bne nop save sp save sp save sp save sp save sp save sp l0 l1 l2 l3 l4 l5 l6 l7 g0 std std std std mov g1 sub g1 sta sub g1 sta sub g1 sta sub g1 sta sta save sp save sp