← Back to context

Comment by ryanianian

1 year ago

Why is it "abusing," and what would you suggest as an alternative?

Have a look an their code, it is obvious. Often you have to figure out what actually the macros does, and I remember it was not that straight forward.

And the macro language is specific to nasm.

What to do: unroll the macros and/or use a little abstraction using a simple common macro preprocessor, aka not tied to the assembler.

And I am just doing exactly that: my x86_64 assembly code does assemble with fasm/nasm/gas with a little abstraction using a C preprocessor.

  • To be fair, nasm allows you to detach the preprocessor from the assembler (-E). But I agree with you in general.