8. A system for optimizing source code, the system comprising: a processor and a memory configured to implement a linker and a compiler arranged in a link-time optimization tool flow to produce a link-time optimized executable computer program; a customized linker script, wherein the customized linker script is provided by an embedded application developer and overrides a default linker script existing within the linker, and wherein the customized liker script instructs the linker how to arrange output sections in the link-time optimized executable computer program; and an application program interface that enables communication between the linker and compiler and configured to facilitate the arrangement of the output sections of the link-time optimized executable according to the customized linker script, wherein the linker, compiler, and application program interface are configured to perform a method comprising: adding, by the compiler, to intermediate representation files having global or local symbols, metadata comprising default section assignment information for the symbols; recording, by the linker, for symbols in machine code files, an origin path and an output section; sending, from the linker to the compiler, detailed global scope and use information, then; parsing, by the compiler, based on a request and the detailed global scope and use information from the linker via the application program interface, the intermediate representation files; recording, by the compiler, the symbols and related symbol information comprising the default section assignment information and dependency information of the intermediate representation files, then; assigning output sections to the symbols based on both the default section assignment information and instructions from the customized linker script; and linking optimized code of the files of the computer program based on the assigned output sections.
10. The system of claim 8 , wherein the method further comprises: merging, at the compiler, parsed intermediate representation files, once all modules of a particular scope are received.