blob: 7406e8708fc66dcde1030ed38871f595867be229 [file] [log] [blame]
//Original:/testcases/seq/se_rets_hazard/se_rets_hazard.dsp
# mach: bfin
.include "testutils.inc"
start
BOOT:
FP = SP; // and frame pointer
INIT_R_REGS 0; // initialize general purpose regs
ASTAT = r0; // reset sequencer registers
// The Main Program
START:
loadsym r1, SUB1;
RETS = r1;
RTS;
MID1:
CHECKREG r6, 0; // shouldn't be BAD
R6.L = 0xBAD2; // In case we come back to MID1
loadsym P1, MID2;
CALL ( P1 );
RTS;
MID2:
loadsym R1, END;
RETS = r1;
[ -- SP ] = I0;
LINK 0;
I0 = FP;
UNLINK;
RTS;
END:
pass // Call Endtest Macro
// Subroutines and Functions
SUB1: // Code goes here
CHECKREG r7, 0; // should be if sub executed
R7.L = 0xBAD; // In case we come back to SUB1
loadsym R2, MID1;
[ -- SP ] = R2;
RETS = [sp++];
RTS;
R6.L = 0xBAD;