View source code
Display the source code in dmd/e2ir.d from which this
page was generated on github.
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
local clone.
Module dmd.e2ir
Compiler implementation of the D programming language.
Documentation
https://dlang.org/phobos/dmd_e2ir.html
Coverage
https://codecov.io/gh/dlang/dmd/src/master/src/dmd/e2ir.d
Functions
Name | Description |
---|---|
addressElem(e, t, alwaysCopy)
|
Take address of an elem. |
array_toDarray(t, e)
|
Convert array to a dynamic array. |
array_toPtr(t, e)
|
Convert array to a pointer to the data. |
buildArrayBoundsError(irs, loc, lwr, upr, elength)
|
Construct elem to run when an array bounds check fails. |
callCAssert(irs, loc, exp, emsg, str)
|
Generate call to C's assert failure function. One of exp, emsg, or str must not be null. |
clearStringTab()
|
Reset stringTab[] between object files being emitted, because the symbols are local. |
elAssign(e1, e2, t, tx)
|
Generate a copy from e2 to e1. |
elemIsLvalue(e)
|
Return true if elem is a an lvalue.
Lvalue elems are OPvar and OPind.
|
genHalt(loc)
|
Generate HALT instruction. |
getTypeInfo(loc, t, irs)
|
|
needsDtor(t)
|
Determine if t is a struct that has destructor. |
needsPostblit(t)
|
Determine if t is a struct that has postblit. |
sarray_toDarray(loc, tfrom, tto, e)
|
|
setEthis2(loc, irs, fd, ethis2, ethis, eside)
|
Initialize the dual-context array with the context pointers. |
toElemDtor(e, irs)
|
Convert Expression to elem, then append destructors for any temporaries created in elem. |
toStringSymbol(str, len, sz)
|
Write read-only string to object file, create a local symbol for it. Makes a copy of str's contents, does not keep a reference to it. |
toStringSymbol(se)
|
Turn StringExp into Symbol. |
toTraceGC(irs, e, loc)
|
Replace call to GC allocator with call to tracing GC allocator. |
type_zeroCopy(t)
|
Determine if zero bits need to be copied for this backend type |
Authors
License
Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.