1//Original:/testcases/core/c_brcc_brf_brt_bp/c_brcc_brf_brt_bp.dsp 2// Spec Reference: brcc brfbrt 3# mach: bfin 4 5.include "testutils.inc" 6 start 7 8 9 10 11imm32 r0, 0x00000000; 12imm32 r1, 0x00000000; 13imm32 r2, 0x00000000; 14imm32 r3, 0x00000000; 15imm32 r4, 0x00000444; 16imm32 r5, 0x00000555; 17imm32 r6, 0x00000000; 18imm32 r7, 0x00000000; 19 20begin: 21 ASTAT = R0; // clear cc 22 CC = R4 < R5; 23 IF CC JUMP good1 (BP); // branch on true (should branch) 24 R1 = 1; // if go here, error 25good1: IF !CC JUMP bad1 (BP); // branch on false (should not branch) 26 CC = ! CC; 27 IF !CC JUMP good2; // should branch here 28bad1: R2 = 2; // if go here, error 29good2: CC = ! CC; // clear cc=0 30 IF CC JUMP good3 (BP); // branch on false (should branch) 31 R3 = 3; // if go here, error 32good3: IF !CC JUMP bad2 (BP); // branch on true (should not branch) 33 IF CC JUMP end; // we're done 34bad2: R0 = 8; // if go here error 35 36end: 37 38CHECKREG r0, 0x00000000; 39CHECKREG r1, 0x00000000; 40CHECKREG r2, 0x00000000; 41CHECKREG r3, 0x00000000; 42CHECKREG r4, 0x00000444; 43CHECKREG r5, 0x00000555; 44CHECKREG r6, 0x00000000; 45CHECKREG r7, 0x00000000; 46 47pass 48