labels.s
来自「俄罗斯高人Mamaich的Pocket gcc编译器(运行在PocketPC上)」· S 代码 · 共 56 行
S
56 行
* local labels* two forms, $[0-9] and label? are allowed * Local labels are undefined/reset in one of four ways:* .newblock* changing sections * entering an include file* leaving an include file .global addra, addrb, addrclabel1: ld addra,a sub addrb,a bc $1, alt ; generates frag! ld addrb, a b $2$1: ld addra,a $2 add addrc,a .newblock bc $1,alt stl a, addrc$1 nop * #1, First definition of local label 'lab' noplab? add #1,a ; reports as line 17? b lab? * #2, Included file also defines local label 'lab' .copy labels.inc* #3, Next definition; exit from .copy clears all locals lab? add #3,a ; reports as line 22? b lab?* #4, Next definition is within macro; supersedes previous definition while* within the macro mac .macrolab? add #4,a ; line 31? b lab? .endm* Macro invocation mac* This reference should resolve to definition #3after_macro: b lab?* Section change clears all definitions; it's a CODE section if we see insns .sect new_section noplab? add #5,a nop nop b lab?* Newblock directive clears local labels .newblocklab? add #6,a nop nop b lab? .end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?