Nick Kledzik
920ceddf80
Fix Sphinx warning. Patch by Sean Silva
...
llvm-svn: 158678
2012-06-18 20:24:47 +00:00
Michael J. Spencer
aedfa6a36b
Fix MSVC compat. MSVC doesn't have bzero.
...
Although the code is not valid to begin with. It is trying to do a raw memory
copy of a non standard-layout type. nameoffset is not guaranteed to directly
follow cmdsize.
This should be properly fixed.
llvm-svn: 158612
2012-06-17 01:18:44 +00:00
Nick Kledzik
28854f56db
Wordsmithing from patch from Sean Silva
...
llvm-svn: 158584
2012-06-16 00:52:17 +00:00
Nick Kledzik
7145cf6846
Add 'invalid' as a Reference Kind so that unknown/invalid kind strings can return that fact to the caller for use in constructing an error message, rather that triggering an assertion.
...
llvm-svn: 158547
2012-06-15 21:26:18 +00:00
Nick Kledzik
21f5d4d629
remove return statements after llvm_unreachable() as the compiler no longer warns abot missing return values
...
llvm-svn: 158544
2012-06-15 21:04:32 +00:00
Nick Kledzik
751eb3d2b3
use llvm_unreachable() instead of assert(0) for invalid enum values in switch statements
...
llvm-svn: 158542
2012-06-15 20:37:24 +00:00
Nick Kledzik
d6a27324f9
Use ADT/StringSwitch
...
llvm-svn: 158541
2012-06-15 20:29:27 +00:00
Nick Kledzik
c890ae41e2
flesh out mach-o Reference Kinds
...
llvm-svn: 158375
2012-06-12 23:01:30 +00:00
Nick Kledzik
b47d6ca3a5
Wrote initial doc on how to create a Reader
...
llvm-svn: 158374
2012-06-12 22:43:35 +00:00
Nick Kledzik
40b68559e8
Move implementation of WriterOptionsMachO to its own file. Reduced redundant
...
ivars in WriterOptionsMachO instead have its methods compute ivar interactions.
Refactor mach-o Reference Kinds and introduce abstract class KindHandler.
Split up StubAtoms.hpp by architecture. Add support for 32-bit x86 stubs.
llvm-svn: 158336
2012-06-11 22:53:15 +00:00
Nick Kledzik
5fb2e4dabe
put the public function createReaderPECOFF() in the lld namespace and everything else in is own namespace
...
llvm-svn: 158135
2012-06-07 02:23:48 +00:00
Nick Kledzik
98211f6d19
fix warnings found after cranking up warnings
...
llvm-svn: 158134
2012-06-07 01:53:39 +00:00
Nick Kledzik
40b8655082
abstract load commands to that WriterMachO can write 64-bit and 32-bit mach-o files
...
llvm-svn: 158133
2012-06-07 01:45:39 +00:00
Michael J. Spencer
56d756dc33
Add missing include.
...
llvm-svn: 157834
2012-06-01 20:22:59 +00:00
Nick Kledzik
abb6981f68
Major refactoring: Remove Platform concept. In its place there are
...
now Reader and Writer subclasses for each file format. Each Reader and
Writer subclass defines an "options" class which controls how that Reader
or Writer operates.
llvm-svn: 157774
2012-05-31 22:34:00 +00:00
Filipe Cabecinhas
6f970e8458
Remove some compilation warnings.
...
llvm-svn: 157253
2012-05-22 14:45:44 +00:00
Nick Kledzik
a3c24f447f
remove completed items
...
llvm-svn: 156143
2012-05-04 01:14:02 +00:00
Nick Kledzik
3011259a85
Rework how YAMLReader is layered on top of YAMLParser. Turn hand written
...
recursive descent functions into one table driven parser. Add proper
error recovery and reporting. Add lots of test cases with semantics errors
and verify error messages.
llvm-svn: 156136
2012-05-03 23:55:34 +00:00
Michael J. Spencer
440b26749c
Address review comments from Roman Divacky.
...
llvm-svn: 156130
2012-05-03 23:36:39 +00:00
Michael J. Spencer
60d835fa59
Add COFF reader.
...
There are no tests for this yet because I still need to finish the
YAML -> COFF converter so we don't get binary files checked in.
llvm-svn: 156100
2012-05-03 20:52:22 +00:00
Michael J. Spencer
729e234828
Add some docs on the type of flags link.exe has that our driver will need to support.
...
llvm-svn: 155861
2012-04-30 23:45:49 +00:00
Michael J. Spencer
d0d5ec4a38
Convert the YAMLReader to use LLVM/Support/YAMLParser.
...
llvm-svn: 155847
2012-04-30 21:20:13 +00:00
Michael J. Spencer
63d320064d
Remove whitespace.
...
llvm-svn: 155846
2012-04-30 21:19:44 +00:00
Nick Kledzik
f784817107
show how to specify alternate path to clang compiler
...
llvm-svn: 155678
2012-04-26 23:41:01 +00:00
Evandro Menezes
f48d80161d
Fix minor warnings and simplify code.
...
llvm-svn: 155652
2012-04-26 19:20:11 +00:00
Jay Foad
4d5e6cf906
Fix errors when building with GCC 4.6.1 -std=c++0x, which requires
...
"friend class Foo;" instead of just friend Foo;".
llvm-svn: 155625
2012-04-26 07:37:08 +00:00
Gabor Greif
c52fc9e073
fix some typos and punctuation
...
llvm-svn: 155588
2012-04-25 21:09:37 +00:00
Michael J. Spencer
aa53d680bb
[docs] Minor spelling fix. Thanks Gabor!
...
llvm-svn: 155581
2012-04-25 19:59:06 +00:00
Michael J. Spencer
365f1ec246
[docs] Add getting started guide.
...
llvm-svn: 155578
2012-04-25 19:34:24 +00:00
Michael J. Spencer
87d6714a76
[docs] Update version number. I suggest that at some point we make the
...
build system generate this file with the proper version.
llvm-svn: 155222
2012-04-20 19:30:12 +00:00
Michael J. Spencer
34fbcb4cba
MSVC fixes:
...
* MSVC does not yet support initializer lists and uniform initialization.
* MSVC does not support flexible array members (And neither does C++).
The Mach-O writer test still fails with this, but it all compiles and
all other tests pass.
llvm-svn: 155215
2012-04-20 18:35:18 +00:00
Nick Kledzik
20e652d627
Add way to represent static archives in yaml test cases.
...
Add SharedLibraryFile and ArchiveLibraryFile subclasses of File.
Add command line options to lld-core to set various ResolverOptions settings
and added lots of test cases to verify the options work.
llvm-svn: 155183
2012-04-20 01:24:37 +00:00
Nick Kledzik
bb963dfb7e
Factor out core linking options from Platform in a new ResolverOptions
...
class. Change Resolver to no longer use Platform. Core linking
now issues errors directly. We need to factor that out later.
Rework how Darwin executable writer finds "main" atom. It now
adds to core linking an Atom which has a Reference to "main".
llvm-svn: 155060
2012-04-18 21:55:06 +00:00
Daniel Dunbar
96f7aeeb67
[docs] Remove a dead link.
...
llvm-svn: 154400
2012-04-10 16:18:16 +00:00
Nick Kledzik
467209b1d4
Remove definedAtomsBegin() and co. so that C++11 range based for loops can be used
...
llvm-svn: 154302
2012-04-09 00:58:21 +00:00
Nick Kledzik
062a98cff0
Rename referencesBegin() to begin() so that C++11 range based for loops can be used
...
llvm-svn: 154301
2012-04-08 23:52:13 +00:00
Michael J. Spencer
d73a53f158
[docs] Add more open projects.
...
llvm-svn: 154277
2012-04-08 03:47:49 +00:00
Michael J. Spencer
00d9e87cac
[docs] Add documentation todos.
...
llvm-svn: 154276
2012-04-08 02:06:15 +00:00
Michael J. Spencer
d01c8fe7a5
[docs] Make the index page ReST based instead of html based.
...
llvm-svn: 154275
2012-04-08 02:06:04 +00:00
Michael J. Spencer
f9bc125c5a
[docs] Add open projects page that includes the TODO.txt files.
...
llvm-svn: 154274
2012-04-07 23:10:01 +00:00
Nick Kledzik
5a1528f49d
Add to-do lists
...
llvm-svn: 154246
2012-04-07 01:54:17 +00:00
Nick Kledzik
b334be1ed2
First implementation of Darwin Platform. It is rich enough to generate
...
a hello world executable from atoms. There is still much to be flushed out.
Added one test case, test/darwin/hello-world.objtxt, which exercises the
darwin platform.
Added -platform option to lld-core tool to dynamically select platform.
llvm-svn: 154242
2012-04-07 01:31:00 +00:00
Daniel Dunbar
e84f5ca2ea
[docs] Note that 'make.bat' provides the same interface as the Makefile for
...
Windows users.
llvm-svn: 154229
2012-04-06 23:55:50 +00:00
Daniel Dunbar
eaa88c8f71
[docs] Start a development guide, and write an introduction to Sphinx based
...
documentation.
llvm-svn: 154228
2012-04-06 23:47:34 +00:00
Michael J. Spencer
6f71434a3b
[docs] Don't duplicate the intro and fix wording.
...
llvm-svn: 154227
2012-04-06 23:44:58 +00:00
Daniel Dunbar
1eafbaad32
[docs] Remove old HTML docs.
...
llvm-svn: 154217
2012-04-06 22:27:01 +00:00
Daniel Dunbar
feee554e3b
[docs] Test commit.
...
llvm-svn: 154213
2012-04-06 22:06:07 +00:00
Daniel Dunbar
462217eab3
docs: Add the standard LLVM favicon.
...
llvm-svn: 154212
2012-04-06 21:49:53 +00:00
Daniel Dunbar
5969411316
docs: Import existing www content into Sphinx.
...
llvm-svn: 154207
2012-04-06 21:02:24 +00:00
Daniel Dunbar
5fcd1034f0
docs: Sketch Sphinx based docs structure.
...
- This uses the llvm-theme developed by Michael Spencer and the base structure
(front-facing index page) I use for LNT.
llvm-svn: 154206
2012-04-06 21:02:20 +00:00