URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 24 |
Rev 33 |
# FRV testcase for ici @(GRi,GRj)
|
# FRV testcase for ici @(GRi,GRj)
|
# mach: all
|
# mach: all
|
|
|
.include "testutils.inc"
|
.include "testutils.inc"
|
|
|
start
|
start
|
|
|
.global ici
|
.global ici
|
ici:
|
ici:
|
set_gr_immed 1234,gr2
|
set_gr_immed 1234,gr2
|
set_spr_addr ok1,lr
|
set_spr_addr ok1,lr
|
bra testit
|
bra testit
|
|
|
ok1:
|
ok1:
|
; Change the first insn to set gr1 to 1235
|
; Change the first insn to set gr1 to 1235
|
; but don't invalidate the insn cache
|
; but don't invalidate the insn cache
|
; should have no effect
|
; should have no effect
|
set_gr_mem testit,gr10
|
set_gr_mem testit,gr10
|
ori gr10,1,gr10
|
ori gr10,1,gr10
|
set_mem_gr gr10,testit
|
set_mem_gr gr10,testit
|
set_gr_addr testit,gr10
|
set_gr_addr testit,gr10
|
dcf @(gr10,gr0) ; flush data cache
|
dcf @(gr10,gr0) ; flush data cache
|
set_spr_addr ok2,lr
|
set_spr_addr ok2,lr
|
bra testit
|
bra testit
|
|
|
ok2: ; Now invalidate the insn cache. The new insn should take effect
|
ok2: ; Now invalidate the insn cache. The new insn should take effect
|
ici @(gr10,gr0)
|
ici @(gr10,gr0)
|
set_gr_immed 1235,gr2
|
set_gr_immed 1235,gr2
|
set_spr_addr ok3,lr
|
set_spr_addr ok3,lr
|
bra testit
|
bra testit
|
|
|
ok3:
|
ok3:
|
pass
|
pass
|
|
|
testit:
|
testit:
|
setlos 1234,gr1
|
setlos 1234,gr1
|
test_gr_gr gr1,gr2
|
test_gr_gr gr1,gr2
|
bralr
|
bralr
|
fail
|
fail
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.