URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 24 |
Rev 157 |
.include "t-macros.i"
|
.include "t-macros.i"
|
|
|
start
|
start
|
|
|
;;; Try out each bit in the PSW
|
;;; Try out each bit in the PSW
|
|
|
loadpsw2 PSW_SM
|
loadpsw2 PSW_SM
|
checkpsw2 1 PSW_SM
|
checkpsw2 1 PSW_SM
|
|
|
loadpsw2 PSW_01
|
loadpsw2 PSW_01
|
checkpsw2 2 0 ;; PSW_01
|
checkpsw2 2 0 ;; PSW_01
|
|
|
loadpsw2 PSW_EA
|
loadpsw2 PSW_EA
|
checkpsw2 3 PSW_EA
|
checkpsw2 3 PSW_EA
|
|
|
loadpsw2 PSW_DB
|
loadpsw2 PSW_DB
|
checkpsw2 4 PSW_DB
|
checkpsw2 4 PSW_DB
|
|
|
loadpsw2 PSW_DM
|
loadpsw2 PSW_DM
|
checkpsw2 5 0 ;; PSW_DM
|
checkpsw2 5 0 ;; PSW_DM
|
|
|
loadpsw2 PSW_IE
|
loadpsw2 PSW_IE
|
checkpsw2 6 PSW_IE
|
checkpsw2 6 PSW_IE
|
|
|
loadpsw2 PSW_RP
|
loadpsw2 PSW_RP
|
checkpsw2 7 PSW_RP
|
checkpsw2 7 PSW_RP
|
|
|
loadpsw2 PSW_MD
|
loadpsw2 PSW_MD
|
checkpsw2 8 PSW_MD
|
checkpsw2 8 PSW_MD
|
|
|
loadpsw2 PSW_FX|PSW_ST
|
loadpsw2 PSW_FX|PSW_ST
|
checkpsw2 9 PSW_FX|PSW_ST
|
checkpsw2 9 PSW_FX|PSW_ST
|
|
|
;; loadpsw2 PSW_ST
|
;; loadpsw2 PSW_ST
|
;; checkpsw2 10
|
;; checkpsw2 10
|
|
|
loadpsw2 PSW_10
|
loadpsw2 PSW_10
|
checkpsw2 11 0 ;; PSW_10
|
checkpsw2 11 0 ;; PSW_10
|
|
|
loadpsw2 PSW_11
|
loadpsw2 PSW_11
|
checkpsw2 12 0 ;; PSW_11
|
checkpsw2 12 0 ;; PSW_11
|
|
|
loadpsw2 PSW_F0
|
loadpsw2 PSW_F0
|
checkpsw2 13 PSW_F0
|
checkpsw2 13 PSW_F0
|
|
|
loadpsw2 PSW_F1
|
loadpsw2 PSW_F1
|
checkpsw2 14 PSW_F1
|
checkpsw2 14 PSW_F1
|
|
|
loadpsw2 PSW_14
|
loadpsw2 PSW_14
|
checkpsw2 15 0 ;; PSW_14
|
checkpsw2 15 0 ;; PSW_14
|
|
|
loadpsw2 PSW_C
|
loadpsw2 PSW_C
|
checkpsw2 16 PSW_C
|
checkpsw2 16 PSW_C
|
|
|
|
|
;;; Check that bit 0 (LSB) of the MOD_E & MOD_S registers are stuck at ZERO.
|
;;; Check that bit 0 (LSB) of the MOD_E & MOD_S registers are stuck at ZERO.
|
|
|
ldi r6, #0xdead
|
ldi r6, #0xdead
|
mvtc r6, cr10
|
mvtc r6, cr10
|
ldi r6, #0xbeef
|
ldi r6, #0xbeef
|
mvtc r6, cr11
|
mvtc r6, cr11
|
|
|
mvfc r7, cr10
|
mvfc r7, cr10
|
check 17 r7 0xdeac
|
check 17 r7 0xdeac
|
mvfc r7, cr11
|
mvfc r7, cr11
|
check 18 r7 0xbeee
|
check 18 r7 0xbeee
|
|
|
;;; Check that certain bits of the PSW, DPSW and BPSW are hardwired to zero
|
;;; Check that certain bits of the PSW, DPSW and BPSW are hardwired to zero
|
|
|
psw_ffff:
|
psw_ffff:
|
ldi r6, 0xffff
|
ldi r6, 0xffff
|
mvtc r6, psw
|
mvtc r6, psw
|
mvfc r7, psw
|
mvfc r7, psw
|
check 18 r7 0xb7cd
|
check 18 r7 0xb7cd
|
|
|
bpsw_ffff:
|
bpsw_ffff:
|
ldi r6, 0xffff
|
ldi r6, 0xffff
|
mvtc r6, bpsw
|
mvtc r6, bpsw
|
mvfc r7, bpsw
|
mvfc r7, bpsw
|
check 18 r7 0xb7cd
|
check 18 r7 0xb7cd
|
|
|
dpsw_ffff:
|
dpsw_ffff:
|
ldi r6, 0xffff
|
ldi r6, 0xffff
|
mvtc r6, dpsw
|
mvtc r6, dpsw
|
mvfc r7, dpsw
|
mvfc r7, dpsw
|
check 18 r7 0xb7cd
|
check 18 r7 0xb7cd
|
|
|
;;; Another check. Very similar
|
;;; Another check. Very similar
|
|
|
psw_dfff:
|
psw_dfff:
|
ldi r6, 0xdfff
|
ldi r6, 0xdfff
|
mvtc r6, psw
|
mvtc r6, psw
|
mvfc r7, psw
|
mvfc r7, psw
|
check 18 r7 0x97cd
|
check 18 r7 0x97cd
|
|
|
bpsw_dfff:
|
bpsw_dfff:
|
ldi r6, 0xdfff
|
ldi r6, 0xdfff
|
mvtc r6, bpsw
|
mvtc r6, bpsw
|
mvfc r7, bpsw
|
mvfc r7, bpsw
|
check 18 r7 0x97cd
|
check 18 r7 0x97cd
|
|
|
dpsw_dfff:
|
dpsw_dfff:
|
ldi r6, 0xdfff
|
ldi r6, 0xdfff
|
mvtc r6, dpsw
|
mvtc r6, dpsw
|
mvfc r7, dpsw
|
mvfc r7, dpsw
|
check 18 r7 0x97cd
|
check 18 r7 0x97cd
|
|
|
;;; And again.
|
;;; And again.
|
|
|
psw_8005:
|
psw_8005:
|
ldi r6, 0x8005
|
ldi r6, 0x8005
|
mvtc r6, psw
|
mvtc r6, psw
|
mvfc r7, psw
|
mvfc r7, psw
|
check 18 r7 0x8005
|
check 18 r7 0x8005
|
|
|
bpsw_8005:
|
bpsw_8005:
|
ldi r6, 0x8005
|
ldi r6, 0x8005
|
mvtc r6, bpsw
|
mvtc r6, bpsw
|
mvfc r7, bpsw
|
mvfc r7, bpsw
|
check 18 r7 0x8005
|
check 18 r7 0x8005
|
|
|
dpsw_8005:
|
dpsw_8005:
|
ldi r6, 0x8005
|
ldi r6, 0x8005
|
mvtc r6, dpsw
|
mvtc r6, dpsw
|
mvfc r7, dpsw
|
mvfc r7, dpsw
|
check 18 r7 0x8005
|
check 18 r7 0x8005
|
|
|
|
|
exit0
|
exit0
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.