- Oct 22, 2013
-
-
Rui Ueyama authored
The manifest file is an XML file that conveys some information to the loader, such as whether the executable needs to run as Administrator or not. This patch is to parse command line option for manifest file. Actual XML file generation will be done in a separate patch. llvm-svn: 193141
-
- Oct 16, 2013
-
-
Rui Ueyama authored
Dead-strip root symbols can be undefined atoms, but should not really be nonexistent, because dead-strip root symbols should be added to initial undefined atoms at startup. Whenever you look up its name in the symbol table, some type of atom will always exist. llvm-svn: 192831
-
- Oct 08, 2013
-
-
Rui Ueyama authored
Differential Revision: http://llvm-reviews.chandlerc.com/D1853 llvm-svn: 192167
-
Nick Kledzik authored
llvm-svn: 192153
-
Nick Kledzik authored
llvm-svn: 192152
-
Nick Kledzik authored
This is the first step in how I plan to get mach-o object files support into lld. We need to be able to test the mach-o Reader and Write on systems without a mach-o tools. Therefore, we want to support a textual way (YAML) to represent mach-o files. MachONormalizedFile.h defines an in-memory abstraction of the content of mach-o files. The in-memory data structures are always native endianess and always use 64-bit sizes. That internal data structure can then be converted to or from three different formats: 1) yaml (text) encoded mach-o, 2) binary mach-o files, 3) lld Atoms. This patch defines the internal model and uses YAML I/O to implement the conversion to and from the model to yaml. The next patch will implement the conversion from normalized to binary mach-o. This patch includes unit tests to validate the yaml conversion APIs. llvm-svn: 192147
-
- Oct 07, 2013
-
-
Shankar Easwaran authored
Changes :- a) Functionality in InputGraph to insert Input elements at any position b) Functionality in the Resolver to use nextFile c) Move the functionality of assigning file ordinals to InputGraph d) Changes all inputs to MemoryBuffers e) Remove LinkerInput, InputFiles, ReaderArchive llvm-svn: 192081
-
- Sep 28, 2013
-
-
Nick Kledzik authored
llvm-svn: 191594
-
Nick Kledzik authored
Stop using some locally defined mach-o constants. llvm-svn: 191581
-
- Sep 27, 2013
-
-
Rui Ueyama authored
llvm-svn: 191469
-
- Sep 25, 2013
-
-
Rui Ueyama authored
This patch inverts the return value of these functions, so that they return "true" on success and "false" on failure. The meaning of boolean return value was mixed in LLD; for example, InputGraph::validate() returns true on success. With this patch they'll become consistent. CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1748 llvm-svn: 191341
-
- Sep 24, 2013
-
-
Rui Ueyama authored
llvm-svn: 191317
-
Rui Ueyama authored
llvm-svn: 191276
-
Rui Ueyama authored
/PDBALTPATH:<path> is an option to embed a different path for the PDB file to the binary than the actual PDB file location. Because we don't support PDB file, we'll just ignore the option for now. llvm-svn: 191273
-
Rui Ueyama authored
llvm-svn: 191269
-
Rui Ueyama authored
llvm-svn: 191268
-
Rui Ueyama authored
llvm-svn: 191259
-
Rui Ueyama authored
llvm-svn: 191254
-
Rui Ueyama authored
We used to support both Windows and Unix style command line options. In Windows style, an option and its value are separated by ":" (colon). In Unix, separator is a space. Accepting both styles were convenient, but we can no longer allow Unix style because I found that can be ambiguous. For example, /nodefaultlib option takes an optional argument. In Windows style it's going to be something like "/nodefaultlib:foo". There's no ambiguity what "foo" means. However, if the option is "/nodefaultlib foo", "foo" can be interpreted either an optional argument for "/nodefaultlib" or an input file "foo.obj". We should just stop accepting the non-standard command line style. llvm-svn: 191247
-
Rui Ueyama authored
These options are to enable DLL delay loading. If enabled, DLL is loaded at run time by a helper routine when a function in the DLL is actually called for the first time, instead of making the Windows loader to load all DLLs at startup time. This should shorten startup delay if an executable have many imported symbols. The linker needs to create a "delayed import table" and link delayimp.lib in which helper functions are defined to support the feature. For now, we just ignore the options, so that the linker does not complain when it sees these options. We want to support them in the future. llvm-svn: 191232
-
- Sep 23, 2013
-
-
Rui Ueyama authored
llvm-svn: 191229
-
Rui Ueyama authored
llvm-svn: 191228
-
Rui Ueyama authored
llvm-svn: 191227
-
Rui Ueyama authored
llvm-svn: 191224
-
Rui Ueyama authored
llvm-svn: 191218
-
Shankar Easwaran authored
This adds an option --output-filetype that can be set to either YAML/Native(case insensitive). The linker would create the outputs associated with the type specified by the user. Changes all the tests to use the new option. llvm-svn: 191183
-
- Sep 20, 2013
-
-
Rui Ueyama authored
/incremental is an option to enable incremental linking. We will eventually want to implement the feature for better performance, but in the meantime, we want to just ignore the option so that the linker does not output unknown option error when it sees /incremental option. llvm-svn: 191063
-
Rui Ueyama authored
/errorReport is a command line option to let the linker to report internal linker error information to Microsoft. For LLD that option doesn't make any sense, so it just ignores the option. llvm-svn: 191044
-
- Sep 19, 2013
-
-
Rui Ueyama authored
llvm-svn: 190986
-
- Sep 12, 2013
-
-
Rui Ueyama authored
So that we can determine what the target architecture is. Adding this field does not mean that we are going to support non-i386 architectures soon; there are many things to do to support them, and I'm focusing on i386 now. But this is the first step toward multi architecture support. llvm-svn: 190627
-
Rui Ueyama authored
llvm-svn: 190586
-
- Sep 11, 2013
-
-
Nick Kledzik authored
-current_version, -compatibility_version, and -install_name. Patch by Joe Ranieri llvm-svn: 190452
-
- Sep 08, 2013
-
-
Joerg Sonnenberger authored
attribute in LinkerInput to isWholeArchive and use that for deciding whether library archives should be expanded. Implement the -all_load option of the Darwin linker using this flag and drop the support for it in GNU mode. llvm-svn: 190275
-
- Sep 07, 2013
-
-
Joerg Sonnenberger authored
reference. Move readFile logic into FileNode::createLinkerInput. llvm-svn: 190253
-
- Sep 06, 2013
-
-
Rui Ueyama authored
llvm-svn: 190121
-
- Sep 04, 2013
-
-
Shankar Easwaran authored
This changes the interface of createLinkerInput to use ErrorOr, so that errors from the linker can be captured. Also adds a convenience function for error strings to be returned from file nodes. llvm-svn: 189871
-
- Aug 31, 2013
-
-
Shankar Easwaran authored
This adds an API to the LinkingContext for flavors to add Internal files containing atoms that need to appear in the YAML output as well, when -emit-yaml switch is used. Flavors can add more internal files for other options that are needed. llvm-svn: 189718
-
- Aug 29, 2013
-
-
Rui Ueyama authored
llvm-svn: 189614
-
- Aug 28, 2013
-
-
Rui Ueyama authored
llvm-svn: 189505
-
- Aug 27, 2013
-
-
Rui Ueyama authored
llvm-svn: 189308
-