dmd.backend.dt
Compiler implementation of the D programming language.
- Authors:
-
Walter Bright
- License:
-
Boost License 1.0
- Source
- https://github.com/dlang/dmd/blob/master/src/dmd/backend/dt.d
- nothrow @nogc void dt_free(dt_t* dt);
-
Free a data definition struct.
- nothrow @nogc void dt_term();
-
Free free list.
- nothrow @nogc void dtpatchoffset(dt_t* dt, uint offset);
- nothrow @nogc void init_common(Symbol* s);
-
Make a common block for s.
- nothrow @nogc uint dt_size(const(dt_t)* dtstart);
-
Compute size of a dt
- nothrow @nogc bool dtallzeros(const(dt_t)* dt);
-
Return true if dt is all zeros.
- nothrow @nogc bool dtpointers(const(dt_t)* dtstart);
-
Return true if dt contains pointers (requires relocations).
- nothrow @nogc void dt2common(dt_t** pdt);
-
Turn DT_azeros into DTcommon
- struct DtBuilder;
-
- nothrow @nogc dt_t* finish();
-
Finish and return completed data structure.
- nothrow @nogc void nbytes(uint size, const(char)* ptr);
-
Append data represented by ptr[0..size]
- nothrow @nogc void abytes(tym_t ty, uint offset, uint size, const(char)* ptr, uint nzeros);
-
Write a reference to the data ptr[0..size+nzeros]
- nothrow @nogc void dword(int value);
-
Write 4 bytes of value.
- nothrow @nogc void size(ulong value);
-
Write a size_t value.
- nothrow @nogc void nzeros(uint size);
-
Write a bunch of zeros
- nothrow @nogc void xoff(Symbol* s, uint offset, tym_t ty);
-
Write a reference to s+offset
- nothrow @nogc void xoff(Symbol* s, uint offset);
-
Create reference to s+offset
- nothrow @nogc dt_t* xoffpatch(Symbol* s, uint offset, tym_t ty);
-
Like xoff(), but returns handle with which to patch 'offset' value.
- nothrow @nogc Symbol* dtoff(dt_t* dt, uint offset);
-
Create a reference to another dt.
- Returns:
- the internal symbol used for the other dt
- nothrow @nogc void coff(uint offset);
-
Write reference to offset in code segment.
- nothrow @nogc void cat(dt_t* dt);
-
Append dt to data.
- nothrow @nogc void cat(ref DtBuilder dtb);
-
Append dtb to data.
- nothrow @nogc void repeat(dt_t* dt, size_t count);
-
Repeat a list of dt_t's count times.
- nothrow @nogc uint length();
-
Return size of data.
- nothrow @nogc bool isZeroLength();
-
Return true if size of data is 0.
- nothrow @nogc dt_t* dt_get_nzeros(uint n);
-
Temporary hack to initialize a dt_t* for C.