I have some (Microblaze) assembly I need to build (via the GCC cross-assembler and linker) and execute many times with the (same) constants, currently fixed via
commands, changed each time.
Is there a way to automate the setting of in-assembly constants in this way and so avoid the dull task of resetting the code for each build?
Best How To :
You can use the power of C pre-processor in your assembler files. This could be done simply changing file extension from
.S (capital S) on Unix-like platform or to
.sx on Windows. Then using
gcc instead of
gas over these files will let C pre-processor first run through the source and then
gas will be called automatically.
In this case you can use all regular pre-processor
#ifdef, etc. And of cause you can pass these defines from the command line with gcc's