1 1.1 christos # sh testcase for fsca 2 1.1 christos # mach: sh 3 1.1 christos # as(sh): -defsym sim_cpu=0 4 1.1 christos # xerror: test hasn't been run in a long time 5 1.1 christos 6 1.1 christos .include "testutils.inc" 7 1.1 christos 8 1.1 christos start 9 1.1 christos fsca: 10 1.1 christos set_grs_a5a5 11 1.1 christos set_fprs_a5a5 12 1.1 christos # Start with angle zero 13 1.1 christos mov.l zero, r0 14 1.1 christos lds r0, fpul 15 1.1 christos fsca fpul, dr2 16 1.1 christos assert_fpreg_i 0, fr2 17 1.1 christos assert_fpreg_i 1, fr3 18 1.1 christos 19 1.1 christos mov.l plus_90, r0 20 1.1 christos lds r0, fpul 21 1.1 christos fsca fpul, dr2 22 1.1 christos assert_fpreg_i 1, fr2 23 1.1 christos assert_fpreg_i 0, fr3 24 1.1 christos 25 1.1 christos mov.l plus_180, r0 26 1.1 christos lds r0, fpul 27 1.1 christos fsca fpul, dr2 28 1.1 christos assert_fpreg_i 0, fr2 29 1.1 christos assert_fpreg_i -1, fr3 30 1.1 christos 31 1.1 christos mov.l plus_270, r0 32 1.1 christos lds r0, fpul 33 1.1 christos fsca fpul, dr2 34 1.1 christos assert_fpreg_i -1, fr2 35 1.1 christos assert_fpreg_i 0, fr3 36 1.1 christos 37 1.1 christos mov.l plus_360, r0 38 1.1 christos lds r0, fpul 39 1.1 christos fsca fpul, dr2 40 1.1 christos assert_fpreg_i 0, fr2 41 1.1 christos assert_fpreg_i 1, fr3 42 1.1 christos 43 1.1 christos mov.l minus_90, r0 44 1.1 christos lds r0, fpul 45 1.1 christos fsca fpul, dr2 46 1.1 christos assert_fpreg_i -1, fr2 47 1.1 christos assert_fpreg_i 0, fr3 48 1.1 christos 49 1.1 christos mov.l minus_180, r0 50 1.1 christos lds r0, fpul 51 1.1 christos fsca fpul, dr2 52 1.1 christos assert_fpreg_i 0, fr2 53 1.1 christos assert_fpreg_i -1, fr3 54 1.1 christos 55 1.1 christos mov.l minus_270, r0 56 1.1 christos lds r0, fpul 57 1.1 christos fsca fpul, dr2 58 1.1 christos assert_fpreg_i 1, fr2 59 1.1 christos assert_fpreg_i 0, fr3 60 1.1 christos 61 1.1 christos mov.l minus_360, r0 62 1.1 christos lds r0, fpul 63 1.1 christos fsca fpul, dr2 64 1.1 christos assert_fpreg_i 0, fr2 65 1.1 christos assert_fpreg_i 1, fr3 66 1.1 christos 67 1.1 christos assertreg0 0xffff0000 68 1.1 christos set_greg 0xa5a5a5a5, r0 69 1.1 christos test_grs_a5a5 70 1.1 christos test_fpr_a5a5 fr0 71 1.1 christos test_fpr_a5a5 fr1 72 1.1 christos test_fpr_a5a5 fr4 73 1.1 christos test_fpr_a5a5 fr5 74 1.1 christos test_fpr_a5a5 fr6 75 1.1 christos test_fpr_a5a5 fr7 76 1.1 christos test_fpr_a5a5 fr8 77 1.1 christos test_fpr_a5a5 fr9 78 1.1 christos test_fpr_a5a5 fr10 79 1.1 christos test_fpr_a5a5 fr11 80 1.1 christos test_fpr_a5a5 fr12 81 1.1 christos test_fpr_a5a5 fr13 82 1.1 christos test_fpr_a5a5 fr14 83 1.1 christos test_fpr_a5a5 fr15 84 1.1 christos pass 85 1.1 christos exit 0 86 1.1 christos 87 1.1 christos .align 2 88 1.1 christos zero: .long 0 89 1.1 christos one_bitty: .long 1 90 1.1 christos plus_90: .long 0x04000 91 1.1 christos plus_180: .long 0x08000 92 1.1 christos plus_270: .long 0x0c000 93 1.1 christos plus_360: .long 0x10000 94 1.1 christos minus_90: .long 0xffffc000 95 1.1 christos minus_180: .long 0xffff8000 96 1.1 christos minus_270: .long 0xffff4000 97 1.1 christos minus_360: .long 0xffff0000 98 1.1 christos minus_1_bitty: .long 0xffffffff 99