//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;