erratum843419.s 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. .comm data0,4,4
  2. .text
  3. .align 2
  4. .global main
  5. .type main, %function
  6. main:
  7. sub sp, sp, #16
  8. mov x7, 13
  9. str w7, [sp,12]
  10. b e843419
  11. ret
  12. .size main, .-main
  13. .section .e843419, "xa"
  14. .align 2
  15. .global e843419
  16. .type e843419, %function
  17. e843419:
  18. sub sp, sp, #16
  19. mov x7, 13
  20. str w7, [sp,12]
  21. b e843419_1
  22. .fill 4072,1,0
  23. e843419_1:
  24. adrp x0, data0
  25. str x7, [x0,12]
  26. mov x8, 9
  27. str x8, [x0, :lo12:data0]
  28. add x0, x1, x5
  29. ldr w7, [sp,12]
  30. add w0, w7, w7
  31. add sp, sp, 16
  32. b e835769
  33. ret
  34. .size e843419, .-e843419
  35. .section .e835769, "xa"
  36. .align 2
  37. .global e835769
  38. .type e835769, %function
  39. e835769:
  40. ldr w7, [x4,8]!
  41. mul w6, w0, w1
  42. ldr x4, [x4]
  43. madd x5, x2, x3, x6
  44. mov x0, x5
  45. ret
  46. .size e835769, .-e835769
  47. # ---
  48. # ---
  49. .data
  50. data0:
  51. .fill 8,1,255
  52. .balign 512
  53. .fill 4,1,255
  54. # double word access that crosses a 64 bit boundary
  55. data1:
  56. .fill 2,1,255
  57. # word access that crosses a 64 boundary
  58. data2:
  59. .fill 2,1,255
  60. data5:
  61. .fill 4,1,255
  62. # double word access that crosses a 128 boundary
  63. data3:
  64. .fill 2,1,255
  65. # word access that crosses a 128 bit boundary
  66. data4:
  67. .fill 2,1,255
  68. data6:
  69. .fill 496,1,255