Skip to main content

emulation

Function emulation 

Source
pub fn emulation(target: TargetTuple) -> Option<&'static str>
Expand description

Which of the formats one linker can write is meant, in the name -m knows it by.

The same names in ld, ld.lld and mold, which is why this is one table rather than one per linker. They are not derivable from the architecture: three of them spell the byte order into the name, two spell the data model, and the narrow modes of a 64-bit architecture are a different format rather than a flag on one.

None for a target whose format is not ELF, which is every one of them rather than wasm alone. An emulation is an ELF idea: ld64 takes an architecture and a platform version, and the COFF linkers take a machine, so a Mach-O target that answered aarch64linux here would be answering a question nobody asked it in a word its linker does not know. Nothing reaches this through argv, which refuses a non-ELF target before asking, and the answer still has to be right for the recorded files and for anybody calling it directly.