dmd.backend.cv8

Compiler implementation of the D programming language.

Members

Functions

REGSIZE
int REGSIZE()
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.
cv8_addfile
uint cv8_addfile(const(char)* filename)

Add source file, if it isn't already there. Return offset into F4.

cv8_daarray
idx_t cv8_daarray(type* t, idx_t keyidx, idx_t validx)

Return type index for a aarray of type ValueKey Input: t associative array type keyidx key type validx value type

cv8_darray
idx_t cv8_darray(type* t, idx_t etypidx)

Return type index for a darray of type E[] Input: t darray type etypidx type index for E

cv8_ddelegate
idx_t cv8_ddelegate(type* t, idx_t functypidx)

Return type index for a delegate Input: t delegate type functypidx type index for pointer to function

cv8_func_start
void cv8_func_start(Symbol* sfunc)

Called at the start of a function.

cv8_func_term
void cv8_func_term(Symbol* sfunc)
Undocumented in source. Be warned that the author may not have intended to support it.
cv8_fwdref
idx_t cv8_fwdref(Symbol* s)

Put out a forward ref for structs, unions, and classes. Only put out the real definitions with toDebug().

cv8_initfile
void cv8_initfile(const(char)* filename)

Called at the start of an object file generation. One source file can generate multiple object files; this starts an object file. Input: filename source file name

cv8_initmodule
void cv8_initmodule(const(char)* filename, const(char)* modulename)

Called at the start of a module. Note that there can be multiple modules in one object file. cv8_initfile() must be called first.

cv8_linnum
void cv8_linnum(Srcpos srcpos, uint offset)
cv8_outsym
void cv8_outsym(Symbol* s)
Undocumented in source. Be warned that the author may not have intended to support it.
cv8_regnum
int cv8_regnum(Symbol* s)

Get Codeview register number for symbol s.

cv8_termfile
void cv8_termfile(const(char)* objfilename)
Undocumented in source. Be warned that the author may not have intended to support it.
cv8_termmodule
void cv8_termmodule()
Undocumented in source. Be warned that the author may not have intended to support it.
cv8_udt
void cv8_udt(const(char)* id, idx_t typidx)

Put out a name for a user defined type. Input: id the name typidx and its type

cv8_writename
void cv8_writename(Outbuffer* buf, const(char)* name, size_t len)
Undocumented in source. Be warned that the author may not have intended to support it.
cv8_writesection
void cv8_writesection(int seg, uint type, Outbuffer* buf)
Undocumented in source. Be warned that the author may not have intended to support it.
getcwd
char* getcwd(char* , size_t )
Undocumented in source but is binding to C. You might be able to learn more by searching the web for its name.
symbol_iscomdat
bool symbol_iscomdat(Symbol* s)
Undocumented in source. Be warned that the author may not have intended to support it.

Manifest constants

CV8_MAX_SYMBOL_LENGTH
enum CV8_MAX_SYMBOL_LENGTH;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.

Static variables

currentfuncdata
FuncData currentfuncdata;
Undocumented in source but is binding to C++. You might be able to learn more by searching the web for its name.

Structs

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

Meta