pdec.s 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. # sh testcase for pdec
  2. # mach: shdsp
  3. # as(shdsp): -defsym sim_cpu=1 -dsp
  4. .include "testutils.inc"
  5. start
  6. pdecx:
  7. set_grs_a5a5
  8. lds r0, a0
  9. pcopy a0, a1
  10. lds r0, x0
  11. lds r0, x1
  12. lds r0, y0
  13. lds r0, y1
  14. pcopy x0, m0
  15. pcopy y1, m1
  16. pdec x0, y0
  17. assert_sreg 0xa5a40000, y0
  18. test_grs_a5a5
  19. assert_sreg 0xa5a5a5a5, x0
  20. assert_sreg 0xa5a5a5a5, x1
  21. assert_sreg 0xa5a5a5a5, y1
  22. assert_sreg 0xa5a5a5a5, a0
  23. assert_sreg2 0xa5a5a5a5, a1
  24. assert_sreg2 0xa5a5a5a5, m0
  25. assert_sreg2 0xa5a5a5a5, m1
  26. pdecy:
  27. set_grs_a5a5
  28. lds r0, a0
  29. pcopy a0, a1
  30. lds r0, x0
  31. lds r0, x1
  32. lds r0, y0
  33. lds r0, y1
  34. pcopy x0, m0
  35. pcopy y1, m1
  36. pdec y0, x0
  37. assert_sreg 0xa5a40000, x0
  38. test_grs_a5a5
  39. assert_sreg 0xa5a5a5a5, y0
  40. assert_sreg 0xa5a5a5a5, x1
  41. assert_sreg 0xa5a5a5a5, y1
  42. assert_sreg 0xa5a5a5a5, a0
  43. assert_sreg2 0xa5a5a5a5, a1
  44. assert_sreg2 0xa5a5a5a5, m0
  45. assert_sreg2 0xa5a5a5a5, m1
  46. dct_pdecx:
  47. set_grs_a5a5
  48. lds r0, a0
  49. pcopy a0, a1
  50. lds r0, x0
  51. lds r0, x1
  52. lds r0, y0
  53. lds r0, y1
  54. pcopy x0, m0
  55. pcopy y1, m1
  56. set_dcfalse
  57. dct pdec x0, y0
  58. assert_sreg 0xa5a5a5a5, y0
  59. set_dctrue
  60. dct pdec x0, y0
  61. assert_sreg 0xa5a40000, y0
  62. test_grs_a5a5
  63. assert_sreg 0xa5a5a5a5, x0
  64. assert_sreg 0xa5a5a5a5, x1
  65. assert_sreg 0xa5a5a5a5, y1
  66. assert_sreg 0xa5a5a5a5, a0
  67. assert_sreg2 0xa5a5a5a5, a1
  68. assert_sreg2 0xa5a5a5a5, m0
  69. assert_sreg2 0xa5a5a5a5, m1
  70. dcf_pdecy:
  71. set_grs_a5a5
  72. lds r0, a0
  73. pcopy a0, a1
  74. lds r0, x0
  75. lds r0, x1
  76. lds r0, y0
  77. lds r0, y1
  78. pcopy x0, m0
  79. pcopy y1, m1
  80. set_dctrue
  81. dcf pdec y0, x0
  82. assert_sreg 0xa5a5a5a5, x0
  83. set_dcfalse
  84. dcf pdec y0, x0
  85. assert_sreg 0xa5a40000, x0
  86. test_grs_a5a5
  87. assert_sreg 0xa5a5a5a5, x1
  88. assert_sreg 0xa5a5a5a5, y0
  89. assert_sreg 0xa5a5a5a5, y1
  90. assert_sreg 0xa5a5a5a5, a0
  91. assert_sreg2 0xa5a5a5a5, a1
  92. assert_sreg2 0xa5a5a5a5, m0
  93. assert_sreg2 0xa5a5a5a5, m1
  94. pass
  95. exit 0