mirror of
https://github.com/netwide-assembler/nasm.git
synced 2025-04-12 18:40:23 +08:00
This provides the first pass of assembler internals for a new, richer, backend interface. It also reduces the amount of data carried in function parameters inside the assembler. The new interface is in the form of a structure, which will contain substantially more information that the previous interface. This will allow things like ELF GOT32X and Mach-O X86_64_RELOC_BRANCH relocations to be reliably emitted. This provides the initial set of structures. Future additions should include: 1. Pass down the base symbol, if any. 2. Segments should be a structure rather than a number, and the horrible hack of adding one for a segment reference should be removed (OUT_SEGMENT replaces it.) Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>