[−][src]Module cranelift_codegen::binemit
Binary machine code emission.
The binemit
module contains code for translating Cranelift's intermediate representation into
binary machine code.
Structs
CodeInfo | Container for information about a vector of compiled code and its supporting read-only data. |
MemoryCodeSink | A |
NullRelocSink | A |
NullStackmapSink | Placeholder StackmapSink that does nothing. |
NullTrapSink | A |
RegDiversions | Keep track of diversions in an EBB. |
Stackmap | Wrapper class for longer bit vectors that cannot be represented by a single BitSet. |
Enums
Reloc | Relocation kinds for every ISA |
Traits
CodeSink | Abstract interface for adding bytes to the code segment. |
RelocSink | A trait for receiving relocations for code that is emitted directly into memory. |
StackmapSink | A trait for emitting stackmaps. |
TrapSink | A trait for receiving trap codes and offsets. |
Functions
bad_encoding | Report a bad encoding error. |
emit_function | Emit a function to |
relax_branches | Relax branches and compute the final layout of EBB headers in |
shrink_instructions | Pick the smallest valid encodings for instructions. |
Type Definitions
Addend | Addend to add to the symbol value. |
CodeOffset | Offset in bytes from the beginning of the function. |