dmd.backend.code_x86

Compiler implementation of the D programming language.

Members

Aliases

code_flags_t
alias code_flags_t = uint
Undocumented in source.
opcode_t
alias opcode_t = uint
Undocumented in source.

Enums

AL
anonymousenum AL
Undocumented in source.
AX
anonymousenum AX
Undocumented in source.
CFes
anonymousenum CFes
Undocumented in source.
CLIB
enum CLIB

C library routines. See callclib().

ESClinnum
anonymousenum ESClinnum
Undocumented in source.
REX
anonymousenum REX
Undocumented in source.
SEGES
anonymousenum SEGES

Some instructions.

SEG_ES
anonymousenum SEG_ES
Undocumented in source.
mAX
anonymousenum mAX
Undocumented in source.

Functions

ADDFWAIT
bool ADDFWAIT()
Undocumented in source. Be warned that the author may not have intended to support it.
NEWREG
void NEWREG(ubyte x, uint r)
Undocumented in source. Be warned that the author may not have intended to support it.
NEWREXR
void NEWREXR(ubyte x, uint r)
Undocumented in source. Be warned that the author may not have intended to support it.
VEX2_B1
uint VEX2_B1(code.Svex ivex)
Undocumented in source. Be warned that the author may not have intended to support it.
VEX3_B1
uint VEX3_B1(code.Svex ivex)
Undocumented in source. Be warned that the author may not have intended to support it.
VEX3_B2
uint VEX3_B2(code.Svex ivex)
Undocumented in source. Be warned that the author may not have intended to support it.
code_newreg
void code_newreg(code* c, uint r)
Undocumented in source. Be warned that the author may not have intended to support it.
code_print
void code_print(code* )
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
getlvalue
void getlvalue(CodeBuilder cdb, code* pcs, elem* e, regm_t keepmsk)
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
getlvalue_lsw
void getlvalue_lsw(code* )
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
getlvalue_msw
void getlvalue_msw(code* )
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
is32bitaddr
bool is32bitaddr(bool x, code_flags_t Iflags)
Undocumented in source. Be warned that the author may not have intended to support it.
isXMMreg
bool isXMMreg(reg_t reg)
Undocumented in source. Be warned that the author may not have intended to support it.
issib
uint issib(uint rm)
Undocumented in source. Be warned that the author may not have intended to support it.
loadea
void loadea(CodeBuilder cdb, elem* e, code* cs, uint op, uint reg, targ_size_t offset, regm_t keepmsk, regm_t desmsk)
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
modregrm
ubyte modregrm(uint m, uint r, uint rm)

Macros to ease generating code modregrm: generate mod reg r/m field modregxrm: reg could be R8..R15 modregrmx: rm could be R8..R15 modregxrmx: reg or rm could be R8..R15 NEWREG: change reg field of x to r genorreg: OR t,f

modregrmx
uint modregrmx(uint m, uint r, uint rm)
Undocumented in source. Be warned that the author may not have intended to support it.
modregxrm
uint modregxrm(uint m, uint r, uint rm)
Undocumented in source. Be warned that the author may not have intended to support it.
modregxrmx
uint modregxrmx(uint m, uint r, uint rm)
Undocumented in source. Be warned that the author may not have intended to support it.

Manifest constants

ALLREGS_INIT
enum ALLREGS_INIT;
Undocumented in source.
ALLREGS_INIT
enum ALLREGS_INIT;
Undocumented in source.
ALLREGS_INIT_PIC
enum ALLREGS_INIT_PIC;
Undocumented in source.
BYTEREGS_INIT
enum BYTEREGS_INIT;
Undocumented in source.
BYTEREGS_INIT
enum BYTEREGS_INIT;
Undocumented in source.
BYTEREGS_INIT_PIC
enum BYTEREGS_INIT_PIC;
Undocumented in source.
DOUBLEREGS2_32
enum DOUBLEREGS2_32;
Undocumented in source.
DOUBLEREGS2_64
enum DOUBLEREGS2_64;
Undocumented in source.
DOUBLEREGS_16
enum DOUBLEREGS_16;
Undocumented in source.
DOUBLEREGS_32
enum DOUBLEREGS_32;
Undocumented in source.
DOUBLEREGS_64
enum DOUBLEREGS_64;
Undocumented in source.
ES
enum ES;
Undocumented in source.
ESCAPEmask
enum ESCAPEmask;
Undocumented in source.
FLOATREGS2_16
enum FLOATREGS2_16;
Undocumented in source.
FLOATREGS2_32
enum FLOATREGS2_32;
Undocumented in source.
FLOATREGS2_64
enum FLOATREGS2_64;
Undocumented in source.
FLOATREGS_16
enum FLOATREGS_16;
Undocumented in source.
FLOATREGS_32
enum FLOATREGS_32;
Undocumented in source.
FLOATREGS_64
enum FLOATREGS_64;
Undocumented in source.
IDXREGS
enum IDXREGS;
Undocumented in source.
NUMGENREGS
enum NUMGENREGS;
Undocumented in source.
NUMREGS
enum NUMREGS;
Undocumented in source.
PICREG
enum PICREG;
Undocumented in source.
PSW
enum PSW;
Undocumented in source.
RMload
enum RMload;
Undocumented in source.
RMstore
enum RMstore;
Undocumented in source.
ST0
enum ST0;
Undocumented in source.
ST01
enum ST01;
Undocumented in source.
STACK
enum STACK;
Undocumented in source.
mLSW
enum mLSW;
Undocumented in source.
mLSW
enum mLSW;
Undocumented in source.
mMSW
enum mMSW;
Undocumented in source.
mMSW
enum mMSW;
Undocumented in source.

Static variables

ALLREGS
regm_t ALLREGS;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
BYTEREGS
regm_t BYTEREGS;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
global87
Globals87 global87;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.

Structs

Globals87
struct Globals87
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
NDP
struct NDP
code
struct code
Undocumented in source.

Variables

NOREG
enum reg_t NOREG;
Undocumented in source.
NoOpcode
enum opcode_t NoOpcode;
Undocumented in source.

Meta