vle-multiseg.s 886 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. # Make up several VLE text sections which the linker script will put into
  2. # separate output sections. We will then check for separate load segments.
  3. # .include "mpc5500_usrdefs.inc"
  4. # .section ".text_vle"
  5. e_stw r12, 0x4C(r1)
  6. e_stw r11, 0x48(r1)
  7. e_stw r10, 0x44(r1)
  8. e_stw r9, 0x40(r1)
  9. e_stw r8, 0x3C(r1)
  10. e_stw r7, 0x38(r1)
  11. e_stw r6, 0x34(r1)
  12. e_stw r5, 0x30(r1)
  13. e_stw r4, 0x2c(r1)
  14. .globl IV_table
  15. .section ".iv_handlers", "ax"
  16. IV_table:
  17. e_b dummy
  18. .align 4
  19. e_b dummy
  20. .align 4
  21. e_b dummy
  22. .align 4
  23. e_b dummy
  24. .align 4
  25. e_b dummy
  26. .align 4
  27. e_b dummy
  28. .align 4
  29. e_b dummy
  30. .align 4
  31. e_b dummy
  32. .align 4
  33. dummy:
  34. se_nop
  35. e_b dummy
  36. .section ".text_iv", "ax"
  37. e_lis r3, IV_table@h
  38. mtivpr r3
  39. e_li r3, IV_table@l+0x00
  40. mtivor0 r3
  41. e_li r3, IV_table@l+0x10
  42. mtivor1 r3
  43. e_li r3, IV_table@l+0x20
  44. mtivor2 r3
  45. .data
  46. .long 0xdeadbeef