Open larsbrinkhoff opened 7 years ago
The asm.js target essentially has separate code and data spaces; it gets around the single memory space limitation by compiling to the data space and emitting code directly. The wasm target also has separate code and data spaces, and makes two passes over the nucleus, one for the code and one for the data (it would require a third pass to actually just count the number of defined words, but right now that's hardcoded). So these two targets would benefit a lot from this improvement.
gas
has sections and numbered subsections within those. That's sufficient for WebAssembly, while simple sections might not be.
Splitting off code into separate files was a great success
Support for relocation?
The metacompiler is due for an overhaul.
The current implementation is closely tied to building the kernel.
Everything is written to a single memory space.
Building and saving the image is constrained by the single memory space.