dmd.glue
Generate the object file for function declarations and critical sections.
Discussion
generateCodeAndWrite() is the only function seen by the front end.
License
Source: glue.d
Documentation: https://dlang.org/phobos/dmd_glue.html
-
Declaration
void
generateCodeAndWrite
(Module[]modules
, const(char)*[]libmodules
, const(char)[]libname
, const(char)[]objdir
, boolwriteLibrary
, boolobj
, booloneobj
, boolmultiobj
, boolverbose
);Generate code for
and write objects/librariesmodules
Parameters
Module[]
modules
array of
Module
s to generate code forconst(char)*[]
libmodules
array of objects/libraries already generated (passed on command line)
const(char)[]
libname
{.lib,.a} file output name
const(char)[]
objdir
directory to write object files to
bool
writeLibrary
write library file instead of object file(s)
bool
obj
generate object files
bool
oneobj
write one object file instead of multiple ones
bool
multiobj
break one object file into multiple ones
bool
verbose
print progress message when generatig code
-
Declaration
Symbol*
bzeroSymbol
;common location for immutable zeros
-
Declaration
void
obj_append
(Dsymbols
);Append
s
to list of object files to generate later. Only happens with multiobj. -
Declaration
tym_t
totym
(Typetx
);Return back end type corresponding to D front end type.
-
Declaration
Symbol*
getBzeroSymbol
();Generate readonly symbol that consists of a bunch of zeros. Immutable Symbol instances can be mapped over it. Only one is generated per object file.
Return Value
bzero symbol