1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- # mach: bfin
- .include "testutils.inc"
- start
- // Test pc relative indirect branches.
- P4 = 0;
- loadsym P1 jtab;
- LL1:
- P2 = P1 + ( P4 << 1 );
- R0 = W [ P2 ] (Z);
- P0 = R0;
- R2 = P4;
- jp:
- JUMP ( PC + P0 );
- DBGA ( R2.L , 0 );
- JUMP.L done;
- DBGA ( R2.L , 1 );
- JUMP.L done;
- DBGA ( R2.L , 2 );
- JUMP.L done;
- DBGA ( R2.L , 3 );
- JUMP.L done;
- DBGA ( R2.L , 4 );
- JUMP.L done;
- done:
- P4 += 1;
- CC = P4 < 4 (IU);
- IF CC JUMP LL1;
- pass
- .data
- jtab:
- .dw 2; //.dw (2+0*8)
- .dw 10; //.dw (2+1*8)
- .dw 18; //.dw (2+2*8)
- .dw 26; //.dw (2+3*8)
- .dw 34; //.dw (2+4*8)
|