# mach: crisv0 crisv3 crisv8 crisv10 crisv32 # output: 1111\n .include "testutils.inc" start clearf nzvc moveq -1,r3 .if 1 ;..asm.arch.cris.v32 .else setf vc .endif btstq 0,r3 test_cc 1 0 0 0 moveq 2,r3 btstq 1,r3 test_cc 1 0 0 0 moveq 4,r3 btstq 1,r3 test_cc 0 1 0 0 moveq -1,r3 btstq 31,r3 test_cc 1 0 0 0 move.d 0x5a67f19f,r3 btstq 12,r3 test_cc 1 0 0 0 move.d 0xda67f19f,r3 move.d 29,r4 btst r4,r3 test_cc 0 0 0 0 move.d 0xda67f19f,r3 move.d 32,r4 btst r4,r3 test_cc 1 0 0 0 move.d 0xda67f191,r3 move.d 33,r4 btst r4,r3 test_cc 0 0 0 0 moveq -1,r3 moveq 0,r4 btst r4,r3 test_cc 1 0 0 0 moveq 2,r3 moveq 1,r4 btst r4,r3 test_cc 1 0 0 0 moveq -1,r3 moveq 31,r4 btst r4,r3 test_cc 1 0 0 0 moveq 4,r3 btstq 1,r3 test_cc 0 1 0 0 moveq -1,r3 moveq 15,r4 btst r4,r3 test_cc 1 0 0 0 move.d 0x5a67f19f,r3 moveq 12,r4 btst r4,r3 test_cc 1 0 0 0 move.d 0x5a678000,r3 moveq 11,r4 btst r4,r3 test_cc 0 1 0 0 move.d 0x5a67f19f,r3 btst r3,r3 test_cc 0 0 0 0 move.d 0x1111,r3 checkr3 1111 ; check that X gets cleared and that only the NZ flags are touched. move.d 0xff, $r0 move $r0, $ccs btst r3,r3 move $ccs, $r0 and.d 0xff, $r0 cmp.d 0xe3, $r0 test_cc 0 1 0 0 quit