Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.

dmd.backend.code

Define registers, register masks, and the CPU instruction linked list
Compiler implementation of the D programming language.
Authors:
struct _Declaration;
Code data type
public import dmd.backend.dcode : code_calloc, code_free, code_term, code_chunk_alloc, code_list;
PUBLIC FUNCTIONS
struct REGSAVE;
Register save state.
struct LocalSection;
Local sections on the stack
struct CGstate;
Code Generator State
struct FuncParamRegs;
nothrow @system regm_t iasm_regs(block* bp);
Get registers used by a given block
Parameters:
block* bp asm block
Returns:
mask of registers used by block bp.
nothrow @trusted void regimmed_set(int reg, targ_size_t e);
Set value in regimmed for reg.

NOTE For 16 bit generator, this is always a (targ_short) sign-extended value.