Adds an --export-memory option to wasm-ld which allows passing a name to give to the exported memory, and extends --import-memory to allow passing a <module>,<name> pair specifying where the memory should be imported from.
This is to support the newly-defined 'Canonical ABI' for modules (https://github.com/WebAssembly/component-model/pull/71), which requires that the memory be exported as "cabi_memory".
Why allow the same memory to be exported multiple times under different names?
I guess it could be useful but I'd like to see it done in a more standard way that could be re-used for all symbols types (and looking forward to multiple memories).
We have support for symbols alias in the assembly format and object format so I would hope would achieve multiple names that way if possible.