_sparc_add.s
上传用户:gzelex
上传日期:2007-01-07
资源大小:707k
文件大小:4k
开发平台:

MultiPlatform

  1. gcc2_compiled.:
  2. ___gnu_compiled_c:
  3. .text
  4. .align 4
  5. .global _School_Add
  6. .proc 016
  7. _School_Add:
  8. !#PROLOGUE# 0
  9. !#PROLOGUE# 1
  10. srl %o3,4,%o5
  11. sll %o1,2,%g2
  12. add %o4,%g2,%g1
  13. and %o3,15,%o3
  14. cmp %o3,15
  15. bgu L37
  16. sethi %hi(L19),%g2
  17. or %g2,%lo(L19),%g2
  18. sll %o3,2,%g3
  19. ld [%g3+%g2],%g2
  20. jmp %g2
  21. addcc  %g0,%g0,%g3
  22. L19:
  23. .word L18
  24. .word L17
  25. .word L16
  26. .word L15
  27. .word L14
  28. .word L13
  29. .word L12
  30. .word L11
  31. .word L10
  32. .word L9
  33. .word L8
  34. .word L7
  35. .word L6
  36. .word L5
  37. .word L4
  38. .word L3
  39. L3:
  40. ld [%o0],%g2
  41. add %o0,4,%o0
  42. ld [%o2],%g3
  43. add %o2,4,%o2
  44. addxcc  %g3, %g2,  %g2
  45. st %g2,[%o4]
  46. add %o4,4,%o4
  47. L4:
  48. ld [%o0],%g2
  49. add %o0,4,%o0
  50. ld [%o2],%g3
  51. add %o2,4,%o2
  52. addxcc  %g3, %g2,  %g2
  53. st %g2,[%o4]
  54. add %o4,4,%o4
  55. L5:
  56. ld [%o0],%g2
  57. add %o0,4,%o0
  58. ld [%o2],%g3
  59. add %o2,4,%o2
  60. addxcc  %g3, %g2,  %g2
  61. st %g2,[%o4]
  62. add %o4,4,%o4
  63. L6:
  64. ld [%o0],%g2
  65. add %o0,4,%o0
  66. ld [%o2],%g3
  67. add %o2,4,%o2
  68. addxcc  %g3, %g2,  %g2
  69. st %g2,[%o4]
  70. add %o4,4,%o4
  71. L7:
  72. ld [%o0],%g2
  73. add %o0,4,%o0
  74. ld [%o2],%g3
  75. add %o2,4,%o2
  76. addxcc  %g3, %g2,  %g2
  77. st %g2,[%o4]
  78. add %o4,4,%o4
  79. L8:
  80. ld [%o0],%g2
  81. add %o0,4,%o0
  82. ld [%o2],%g3
  83. add %o2,4,%o2
  84. addxcc  %g3, %g2,  %g2
  85. st %g2,[%o4]
  86. add %o4,4,%o4
  87. L9:
  88. ld [%o0],%g2
  89. add %o0,4,%o0
  90. ld [%o2],%g3
  91. add %o2,4,%o2
  92. addxcc  %g3, %g2,  %g2
  93. st %g2,[%o4]
  94. add %o4,4,%o4
  95. L10:
  96. ld [%o0],%g2
  97. add %o0,4,%o0
  98. ld [%o2],%g3
  99. add %o2,4,%o2
  100. addxcc  %g3, %g2,  %g2
  101. st %g2,[%o4]
  102. add %o4,4,%o4
  103. L11:
  104. ld [%o0],%g2
  105. add %o0,4,%o0
  106. ld [%o2],%g3
  107. add %o2,4,%o2
  108. addxcc  %g3, %g2,  %g2
  109. st %g2,[%o4]
  110. add %o4,4,%o4
  111. L12:
  112. ld [%o0],%g2
  113. add %o0,4,%o0
  114. ld [%o2],%g3
  115. add %o2,4,%o2
  116. addxcc  %g3, %g2,  %g2
  117. st %g2,[%o4]
  118. add %o4,4,%o4
  119. L13:
  120. ld [%o0],%g2
  121. add %o0,4,%o0
  122. ld [%o2],%g3
  123. add %o2,4,%o2
  124. addxcc  %g3, %g2,  %g2
  125. st %g2,[%o4]
  126. add %o4,4,%o4
  127. L14:
  128. ld [%o0],%g2
  129. add %o0,4,%o0
  130. ld [%o2],%g3
  131. add %o2,4,%o2
  132. addxcc  %g3, %g2,  %g2
  133. st %g2,[%o4]
  134. add %o4,4,%o4
  135. L15:
  136. ld [%o0],%g2
  137. add %o0,4,%o0
  138. ld [%o2],%g3
  139. add %o2,4,%o2
  140. addxcc  %g3, %g2,  %g2
  141. st %g2,[%o4]
  142. add %o4,4,%o4
  143. L16:
  144. ld [%o0],%g2
  145. add %o0,4,%o0
  146. ld [%o2],%g3
  147. add %o2,4,%o2
  148. addxcc  %g3, %g2,  %g2
  149. st %g2,[%o4]
  150. add %o4,4,%o4
  151. L17:
  152. ld [%o0],%g2
  153. add %o0,4,%o0
  154. ld [%o2],%g3
  155. add %o2,4,%o2
  156. addxcc  %g3, %g2,  %g2
  157. st %g2,[%o4]
  158. add %o4,4,%o4
  159. L18:
  160. addx  %g0,%g0,%g3
  161. b L39
  162. add %o5,-1,%o5
  163. L23:
  164. addcc 0xffffffff,%g3,%g3
  165. ld [%o0],%g2
  166. add %o0,4,%o0
  167. ld [%o2],%g3
  168. add %o2,4,%o2
  169. addxcc  %g3, %g2,  %g2
  170. st %g2,[%o4]
  171. add %o4,4,%o4
  172. ld [%o0],%g2
  173. add %o0,4,%o0
  174. ld [%o2],%g3
  175. add %o2,4,%o2
  176. addxcc  %g3, %g2,  %g2
  177. st %g2,[%o4]
  178. add %o4,4,%o4
  179. ld [%o0],%g2
  180. add %o0,4,%o0
  181. ld [%o2],%g3
  182. add %o2,4,%o2
  183. addxcc  %g3, %g2,  %g2
  184. st %g2,[%o4]
  185. add %o4,4,%o4
  186. ld [%o0],%g2
  187. add %o0,4,%o0
  188. ld [%o2],%g3
  189. add %o2,4,%o2
  190. addxcc  %g3, %g2,  %g2
  191. st %g2,[%o4]
  192. add %o4,4,%o4
  193. ld [%o0],%g2
  194. add %o0,4,%o0
  195. ld [%o2],%g3
  196. add %o2,4,%o2
  197. addxcc  %g3, %g2,  %g2
  198. st %g2,[%o4]
  199. add %o4,4,%o4
  200. ld [%o0],%g2
  201. add %o0,4,%o0
  202. ld [%o2],%g3
  203. add %o2,4,%o2
  204. addxcc  %g3, %g2,  %g2
  205. st %g2,[%o4]
  206. add %o4,4,%o4
  207. ld [%o0],%g2
  208. add %o0,4,%o0
  209. ld [%o2],%g3
  210. add %o2,4,%o2
  211. addxcc  %g3, %g2,  %g2
  212. st %g2,[%o4]
  213. add %o4,4,%o4
  214. ld [%o0],%g2
  215. add %o0,4,%o0
  216. ld [%o2],%g3
  217. add %o2,4,%o2
  218. addxcc  %g3, %g2,  %g2
  219. st %g2,[%o4]
  220. add %o4,4,%o4
  221. ld [%o0],%g2
  222. add %o0,4,%o0
  223. ld [%o2],%g3
  224. add %o2,4,%o2
  225. addxcc  %g3, %g2,  %g2
  226. st %g2,[%o4]
  227. add %o4,4,%o4
  228. ld [%o0],%g2
  229. add %o0,4,%o0
  230. ld [%o2],%g3
  231. add %o2,4,%o2
  232. addxcc  %g3, %g2,  %g2
  233. st %g2,[%o4]
  234. add %o4,4,%o4
  235. ld [%o0],%g2
  236. add %o0,4,%o0
  237. ld [%o2],%g3
  238. add %o2,4,%o2
  239. addxcc  %g3, %g2,  %g2
  240. st %g2,[%o4]
  241. add %o4,4,%o4
  242. ld [%o0],%g2
  243. add %o0,4,%o0
  244. ld [%o2],%g3
  245. add %o2,4,%o2
  246. addxcc  %g3, %g2,  %g2
  247. st %g2,[%o4]
  248. add %o4,4,%o4
  249. ld [%o0],%g2
  250. add %o0,4,%o0
  251. ld [%o2],%g3
  252. add %o2,4,%o2
  253. addxcc  %g3, %g2,  %g2
  254. st %g2,[%o4]
  255. add %o4,4,%o4
  256. ld [%o0],%g2
  257. add %o0,4,%o0
  258. ld [%o2],%g3
  259. add %o2,4,%o2
  260. addxcc  %g3, %g2,  %g2
  261. st %g2,[%o4]
  262. add %o4,4,%o4
  263. ld [%o0],%g2
  264. add %o0,4,%o0
  265. ld [%o2],%g3
  266. add %o2,4,%o2
  267. addxcc  %g3, %g2,  %g2
  268. st %g2,[%o4]
  269. add %o4,4,%o4
  270. ld [%o0],%g2
  271. add %o0,4,%o0
  272. ld [%o2],%g3
  273. add %o2,4,%o2
  274. addxcc  %g3, %g2,  %g2
  275. st %g2,[%o4]
  276. add %o4,4,%o4
  277. addx  %g0,%g0,%g3
  278. L37:
  279. add %o5,-1,%o5
  280. L39:
  281. cmp %o5,-1
  282. bne L23
  283. cmp %o4,%o0
  284. be L25
  285. cmp %o4,%g1
  286. bgeu L27
  287. mov %o4,%o2
  288. L29:
  289. ld [%o0],%g2
  290. st %g2,[%o2]
  291. add %o2,4,%o2
  292. cmp %o2,%g1
  293. blu L29
  294. add %o0,4,%o0
  295. L27:
  296. st %g0,[%g1]
  297. L25:
  298. cmp %g3,0
  299. be L40
  300. mov %o1,%o0
  301. b L41
  302. ld [%o4],%g2
  303. L34:
  304. add %o4,4,%o4
  305. ld [%o4],%g2
  306. L41:
  307. add %g2,1,%g2
  308. cmp %g2,0
  309. be L34
  310. st %g2,[%o4]
  311. cmp %o4,%g1
  312. be,a L31
  313. add %o1,1,%o1
  314. L31:
  315. mov %o1,%o0
  316. L40:
  317. retl
  318. nop