dmd.backend.gother

Compiler implementation of the D programming language.

Members

Functions

constprop
void constprop()

Constant propagation. Also detects use of variable before any possible def.

copyprop
void copyprop()

Do copy propagation. Copy propagation elems are of the form OPvar=OPvar, and they are in go.expnod[].

deadvar
void deadvar()

Mark all dead variables. Only worry about register candidates. Compute live ranges for register candidates. Be careful not to compute live ranges for members of structures (CLMOS).

elimass
void elimass(elem* n)

Remove side effect of assignment elem.

findloopparameters
bool findloopparameters(elem* erel, elem* rdeq, elem* rdinc)
Undocumented in source. Be warned that the author may not have intended to support it.
listrds
list_t listrds(vec_t IN, elem* e, vec_t f)

Find all the reaching defs of OPvar e. Put into a linked list, or just set the RD bits in a vector.

rmdeadass
void rmdeadass()
Undocumented in source. Be warned that the author may not have intended to support it.
symbol_isintab
char symbol_isintab(Symbol* s)
Undocumented in source. Be warned that the author may not have intended to support it.
verybusyexp
void verybusyexp()
Undocumented in source. Be warned that the author may not have intended to support it.

Structs

Elemdata
struct Elemdata

Meta

License

Distributed under the Boost Software License, Version 1.0. http://www.boost.org/LICENSE_1_0.txt