diff options
| author | Derek Hensley <hensley.derek58@gmail.com> | 2025-08-29 21:05:26 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-08-29 21:05:26 -0700 |
| commit | 3b3b117100edfc41adcd6f315b3772fc63e01e2e (patch) | |
| tree | ca509b1b1e5d5b430a5f0bd91ba4ede88c007c6b /include | |
| parent | e181a607bce02a1a187290f1670552285a66f968 (diff) | |
Switch to spimdisasm (#1822)
* Switch to spimdisasm
* Remove disasm step from Jenkins
* PR Review
* Update spimdisasm and macro.inc
* jlabel visibility
Diffstat (limited to 'include')
| -rw-r--r-- | include/macro.inc | 50 |
1 files changed, 43 insertions, 7 deletions
diff --git a/include/macro.inc b/include/macro.inc index 9700d05aa..cd40088a5 100644 --- a/include/macro.inc +++ b/include/macro.inc @@ -3,27 +3,63 @@ .internal _MACRO_INC_GUARD .set _MACRO_INC_GUARD, 1 -.macro glabel label - .global \label - .ent \label +# A function symbol. +.macro glabel label, visibility=global + .\visibility \label .type \label, @function \label: + .ent \label .endm +# The end of a function symbol. .macro endlabel label - .end \label .size \label, . - \label + .end \label .endm -.macro dlabel label - .global \label +# An alternative entry to a function. +.macro alabel label, visibility=global + .\visibility \label + .type \label, @function \label: + .aent \label .endm -.macro jlabel label +# A label referenced by an error handler table. +.macro ehlabel label, visibility=global + .\visibility \label \label: .endm + +# A label referenced by a jumptable. +.macro jlabel label, visibility=local + .\visibility \label + \label: +.endm + + +# A data symbol. +.macro dlabel label, visibility=global + .\visibility \label + .type \label, @object + \label: +.endm + +# End of a data symbol. +.macro enddlabel label + .size \label, . - \label +.endm + + +# Label to signal the symbol haven't been matched yet. +.macro nonmatching label, size=1 + .global \label\().NON_MATCHING + .type \label\().NON_MATCHING, @object + .size \label\().NON_MATCHING, \size + \label\().NON_MATCHING: +.endm + # COP0 register aliases .set Index, $0 |
