testfp.s 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. .sect .text ; .sect .rom ; .sect .data ; .sect .bss ; .sect .text
  2. ! test for Motorola MC68881 floating point processor instructions
  3. ! compare result of disassembled output with source.
  4. blablabla:
  5. ! dyadic instructions
  6. fadd.l (12,a6),fp0
  7. fadd fp0,fp1
  8. fcmp.l (12,a6),fp0
  9. fcmp fp0,fp1
  10. fdiv.l (12,a6),fp0
  11. fdiv fp0,fp1
  12. fmod.l (12,a6),fp0
  13. fmod fp0,fp1
  14. fmul.l (12,a6),fp0
  15. fmul fp0,fp1
  16. frem.l (12,a6),fp0
  17. frem fp0,fp1
  18. fscale.l (12,a6),fp0
  19. fscale fp0,fp1
  20. fsgldiv.l (12,a6),fp0
  21. fsgldiv fp0,fp1
  22. fsglmul.l (12,a6),fp0
  23. fsglmul fp0,fp1
  24. fsub.l (12,a6),fp0
  25. fsub fp0,fp1
  26. !monadic instructions
  27. fabs.p (12,a6),fp1
  28. fabs.x fp1,fp2
  29. fabs fp1
  30. facos.p (12,a6),fp1
  31. facos.x fp1,fp2
  32. facos fp1
  33. fasin.p (12,a6),fp1
  34. fasin.x fp1,fp2
  35. fasin fp1
  36. fatan.p (12,a6),fp1
  37. fatan.x fp1,fp2
  38. fatan fp1
  39. fatanh.p (12,a6),fp1
  40. fatanh.x fp1,fp2
  41. fatanh fp1
  42. fcos.p (12,a6),fp1
  43. fcos.x fp1,fp2
  44. fcos fp1
  45. fcosh.p (12,a6),fp1
  46. fcosh.x fp1,fp2
  47. fcosh fp1
  48. fetox.p (12,a6),fp1
  49. fetox.x fp1,fp2
  50. fetox fp1
  51. fetoxm1.p (12,a6),fp1
  52. fetoxm1.x fp1,fp2
  53. fetoxm1 fp1
  54. fgetexp.p (12,a6),fp1
  55. fgetexp.x fp1,fp2
  56. fgetexp fp1
  57. fgetman.p (12,a6),fp1
  58. fgetman.x fp1,fp2
  59. fgetman fp1
  60. fint.p (12,a6),fp1
  61. fint.x fp1,fp2
  62. fint fp1
  63. fintrz.p (12,a6),fp1
  64. fintrz.x fp1,fp2
  65. fintrz fp1
  66. flogn.p (12,a6),fp1
  67. flogn.x fp1,fp2
  68. flogn fp1
  69. flognp1.p (12,a6),fp1
  70. flognp1.x fp1,fp2
  71. flognp1 fp1
  72. flog10.p (12,a6),fp1
  73. flog10.x fp1,fp2
  74. flog10 fp1
  75. flog2.p (12,a6),fp1
  76. flog2.x fp1,fp2
  77. flog2 fp1
  78. fneg.p (12,a6),fp1
  79. fneg.x fp1,fp2
  80. fneg fp1
  81. fsin.p (12,a6),fp1
  82. fsin.x fp1,fp2
  83. fsin fp1
  84. fsinh.p (12,a6),fp1
  85. fsinh.x fp1,fp2
  86. fsinh fp1
  87. fsqrt.p (12,a6),fp1
  88. fsqrt.x fp1,fp2
  89. fsqrt fp1
  90. ftan.p (12,a6),fp1
  91. ftan.x fp1,fp2
  92. ftan fp1
  93. ftanh.p (12,a6),fp1
  94. ftanh.x fp1,fp2
  95. ftanh fp1
  96. ftentox.p (12,a6),fp1
  97. ftentox.x fp1,fp2
  98. ftentox fp1
  99. ftwotox.p (12,a6),fp1
  100. ftwotox.x fp1,fp2
  101. ftwotox fp1
  102. !sincos
  103. fsincos.s (12,a6),fp0:fp1
  104. fsincos.x fp2,fp0:fp1
  105. !some moves
  106. fmove.l (12,a6),fp0
  107. fmove.l fp1,(12,a6)
  108. fmove.p fp0,(12,a6){d0}
  109. fmove.p fp0,(12,a6){#4}
  110. fmove.l (12,a6),fpcr
  111. !fmove.l a0,fpcr ! error
  112. fmove.l a0,fpiar
  113. fmovecr #1,fp1
  114. !fmovem.x d1,(a0)+ ! error
  115. fmovem.x d1,-(a0)
  116. fmovem.x fp0-fp3/fp5,-(a0)
  117. !fmovem.x -(a0),fp0-fp3/fp5 ! error
  118. fmovem.x (a0)+,fp0-fp3/fp5
  119. !some branches
  120. fbeq blablabla
  121. fbne blablabla
  122. fbgt blablabla
  123. fbngt blablabla
  124. fbge blablabla
  125. fbnge blablabla
  126. fblt blablabla
  127. fbnlt blablabla
  128. fble blablabla
  129. fbnle blablabla
  130. fbgl blablabla
  131. fbngl blablabla
  132. fbgle blablabla
  133. fbngle blablabla
  134. fbogt blablabla
  135. fbule blablabla
  136. fboge blablabla
  137. fbult blablabla
  138. fbolt blablabla
  139. fbuge blablabla
  140. fbole blablabla
  141. fbugt blablabla
  142. fbogl blablabla
  143. fbueq blablabla
  144. fbor blablabla
  145. fbun blablabla
  146. fbf blablabla
  147. fbt blablabla
  148. fbsf blablabla
  149. fbst blablabla
  150. fbseq blablabla
  151. fbsne blablabla
  152. fdbgl d4,blablabla
  153. !nop
  154. fnop
  155. !fscc
  156. fsult d4
  157. !ftst
  158. ftst.p (12,a6)
  159. ftst fp0
  160. !save/restore
  161. fsave (12,a6)
  162. ! fsave (a5)+ ! error
  163. frestore (12,a6)
  164. ! frestore -(a5) ! error
  165. !trap
  166. ftrapeq
  167. ftrapeq.l #4
  168. ftrapeq.w #4