Take address of an elem. Accounts for e being an rvalue by assigning the rvalue to a temp.
Convert array to a dynamic array.
Convert array to a pointer to the data.
Construct elem to run when an array bounds check fails.
Generate call to C's assert failure function. One of exp, emsg, or str must not be null.
Reset stringTab[] between object files being emitted, because the symbols are local.
Generate a copy from e2 to e1.
Return true if elem is a an lvalue. Lvalue elems are OPvar and OPind.
Generate HALT instruction.
Determine if t is a struct that has destructor.
Determine if t is a struct that has postblit.
Initialize the dual-context array with the context pointers.
Convert Expression to elem, then append destructors for any temporaries created in elem.
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.
Turn StringExp into Symbol.
Replace call to GC allocator with call to tracing GC allocator.
Determine if zero bits need to be copied for this backend type
_e2ir.d Documentation: https://dlang.org/phobos/dmd_e2ir.html Coverage: https://codecov.io/gh/dlang/dmd/src/master/src/dmd/e2ir.d
Copyright (C) 1999-2021 by The D Language Foundation, All Rights Reserved
Converts expressions to Intermediate Representation (IR) for the backend.