binutils-gdb/sim/testsuite/bfin/mmr-exception.s

44 lines
620 B
ArmAsm
Raw Normal View History

# Blackfin testcase for MMR exceptions in a lower EVT
# mach: bfin
# sim: --environment operating
.include "testutils.inc"
start
imm32 P0, 0xFFE02000
loadsym R1, _evx
[P0 + (4 * 3)] = R1;
loadsym R1, _ivg9
[P0 + (4 * 9)] = R1;
CSYNC;
RETI = R1;
RAISE 9;
R0 = -1;
STI R0;
RTI;
dbg_fail
_ivg9:
# Invalid MMR
imm32 P0, 0xFFEE0000
1: [P0] = R0;
9: dbg_fail
_evx:
# Make sure SEQSTAT is set to correct value
R0 = SEQSTAT;
R0 = R0.B;
R1 = 0x2e (x);
CC = R0 == R1;
IF !CC JUMP 9b;
# Make sure RETX is set to correct address
loadsym R0, 1b;
R1 = RETX;
CC = R0 == R1;
IF !CC JUMP 9b;
dbg_pass