Comment by sylware

1 year ago

A gigantic mistake was done in much of ffmpeg assembly:

They are abusing nasm macro-preprocessor up to obscene levels...

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.