1# frv testcase for subx $GRi,$GRj,$GRk,$ICCi_1 2# mach: all 3 4 .include "testutils.inc" 5 6 start 7 8 .global subx 9subx: 10 set_gr_immed 1,gr7 11 set_gr_immed 2,gr8 12 set_icc 0x0e,0 ; Make sure carry is off 13 subx gr8,gr7,gr8,icc0 14 test_icc 1 1 1 0 icc0 15 test_gr_immed 1,gr8 16 17 set_gr_immed 1,gr7 18 set_gr_limmed 0x8000,0x0000,gr8 19 set_icc 0x0c,0 ; Make sure carry is off 20 subx gr8,gr7,gr8,icc0 21 test_icc 1 1 0 0 icc0 22 test_gr_limmed 0x7fff,0xffff,gr8 23 24 set_icc 0x0a,0 ; Make sure carry is off 25 subx gr8,gr8,gr8,icc0 26 test_icc 1 0 1 0 icc0 27 test_gr_immed 0,gr8 28 29 set_icc 0x06,0 ; Make sure carry is off 30 subx gr8,gr7,gr8,icc0 31 test_icc 0 1 1 0 icc0 32 test_gr_limmed 0xffff,0xffff,gr8 33 34 set_gr_immed 1,gr7 35 set_gr_immed 3,gr8 36 set_icc 0x0f,0 ; Make sure carry is on 37 subx gr8,gr7,gr8,icc0 38 test_icc 1 1 1 1 icc0 39 test_gr_immed 1,gr8 40 41 set_gr_immed 0,gr7 42 set_gr_limmed 0x8000,0x0000,gr8 43 set_icc 0x0d,0 ; Make sure carry is on 44 subx gr8,gr7,gr8,icc0 45 test_icc 1 1 0 1 icc0 46 test_gr_limmed 0x7fff,0xffff,gr8 47 48 set_gr_limmed 0x7fff,0xfffe,gr7 49 set_icc 0x0b,0 ; Make sure carry is on 50 subx gr8,gr7,gr8,icc0 51 test_icc 1 0 1 1 icc0 52 test_gr_immed 0,gr8 53 54 set_gr_immed 0,gr7 55 set_icc 0x07,0 ; Make sure carry is on 56 subx gr8,gr7,gr8,icc0 57 test_icc 0 1 1 1 icc0 58 test_gr_limmed 0xffff,0xffff,gr8 59 60 pass 61