Labels

Asmc Macro Assembler

Asmc Macro Assembler Reference

Parsing of labels

All expansions are pre-processed by the assembler and this may expand macros and other directives before labels. If a macro is added at the same line as a label this may fail.

Example

foo	macro	reg
	bswap	reg
	exitm	<reg>
	endm

do:	mov	eax,foo( eax )
	...
	mov	ecx,"3210"
	jmp	do

As a result the code produced by the macro will be expanded above the label and thus the jump will fail.

	bswap	ecx
do:	mov	eax,ecx
	...

Asmc will expand the line left to right in this case.

See Also

Asmc Extensions