- Jun 20, 2013
-
-
Sean Silva authored
llvm-svn: 184456
-
- Jun 19, 2013
-
-
Sean Silva authored
There were only two places it was actually making anything shorter. llvm-svn: 184273
-
Sean Silva authored
llvm-svn: 184272
-
Sean Silva authored
Not sure why we weren't catching this with -Wunused-parameter... Spotted by inspection. llvm-svn: 184271
-
Sean Silva authored
llvm-svn: 184268
-
Sean Silva authored
llvm-svn: 184267
-
Sean Silva authored
llvm-svn: 184263
-
Sean Silva authored
Previously, we would monkeypatch the vector of YAML::Section's in order to ensure that the SHT_NULL entry is present. Now we just add it unconditionally. The proliferation of small numerical adjustments is beginning to frighten me, but I can't think of a way having a single point of truth for them without introducing a whole new layer of data structures (i.e. lots of code and complexity) between the YAML and binary ELF formats. llvm-svn: 184260
-
Sean Silva authored
llvm-svn: 184258
-
Sean Silva authored
Currently, we only output the name. llvm-svn: 184255
-
- Jun 18, 2013
-
-
Sean Silva authored
This will be needed later for holding symbol names, due to the libObject issue mentioned in the commit message of r184161. llvm-svn: 184242
-
Sean Silva authored
llvm-svn: 184162
-
Sean Silva authored
A bug in libObject will cause it to assert() if a symbol table's string table and the section header string table are the same section, so we need to ensure that we emit two different string tables (among other things). The problematic code is the hardcoded usage of ".strtab" (`dot_strtab_sec`) for looking up symbol names in ELFObjectFile<ELFT>::getSymbolName. I discussed this with Michael, and he has some local improvements to the ELF code in libObject that, among other things, should fix our handling of this scenario. llvm-svn: 184161
-
Sean Silva authored
I was spotting garbage in the output. I'd like to just zero the entire ELFYAML::Section to be sure, but it contains non-POD types. (I'm also trying to avoid bloating the ELFYAML::Foo classes with a bunch of constructor code). No test, since this is by its very nature unpredictable. I'm pretty sure that one of the sanitizers would catch it immediately though. llvm-svn: 184160
-
- Jun 17, 2013
-
-
Sean Silva authored
llvm-svn: 184115
-
- Jun 15, 2013
-
-
Sean Silva authored
llvm-svn: 184025
-
Sean Silva authored
llvm-svn: 184022
-
- Jun 14, 2013
-
-
Sean Silva authored
For consistency, change the address in the test case from 0xDEADBEEF to 0xCAFEBABE since 0xCAFEBABE that actually has a 2-byte alignment. llvm-svn: 183962
-
Sean Silva authored
llvm-svn: 183955
-
Sean Silva authored
llvm-svn: 183954
-
Sean Silva authored
The current functionality is extremely basic and a bit rough around the edges, but it will flesh out in future commits. llvm-svn: 183953
-
- Jun 11, 2013
-
-
Sean Silva authored
Should bring bots back to life. llvm-svn: 183715
-
Sean Silva authored
Currently, only emitting the ELF header is supported (no sections or segments). The ELFYAML code organization is broadly similar to the COFFYAML code. llvm-svn: 183711
-
- Jun 06, 2013
-
-
Rafael Espindola authored
llvm-svn: 183403
-
Sean Silva authored
This avoids making assumptions about the data representation. llvm-svn: 183349
-
Sean Silva authored
Previously, yaml2coff.cpp had a writeHexData static helper function to do this, but it is generally useful functionality. Also, validate hex strings up-front to avoid running having to handle errors "deep inside" the yaml2obj code (it also gives better diagnostics than it used to). llvm-svn: 183345
-
- Jun 05, 2013
-
-
Sean Silva authored
llvm-svn: 183335
-
Sean Silva authored
See the comment in yaml2obj.cpp for why this is currently needed. Eventually we can get rid of this, but for now it is needed in order to make forward progress with adding ELF support, and should be straightforward to remove later. Also, preserve the default of COFF, to avoid breaking existing tests. This policy can easily be changed later though. llvm-svn: 183332
-
- May 31, 2013
-
-
Rafael Espindola authored
llvm-svn: 183042
-
Rafael Espindola authored
llvm-svn: 183040
-
- May 18, 2013
-
-
Rafael Espindola authored
llvm-svn: 182172
-
Rafael Espindola authored
llvm-svn: 182169
-
- May 06, 2013
-
-
Rafael Espindola authored
The alignment is just a byte in the middle of Characteristics, not an independent flag. Making it an independent field in the yaml representation makes it more yamlio friendly. llvm-svn: 181243
-
- Apr 25, 2013
-
-
Rafael Espindola authored
llvm-svn: 180247
-
- Apr 23, 2013
-
-
Rafael Espindola authored
llvm-svn: 180137
-
Rafael Espindola authored
The COFFParser now contains only a COFFYAML::Object and the string table (which is recomputed, not serialized). The structs in COFFParser now all begin with a Header field with what is actually on the COFF object. The other fields are things that are semantically part of the struct (relocations in a section for exmaple), but are not actually represented that way in the object file. llvm-svn: 180134
-
Rafael Espindola authored
llvm-svn: 180115
-
- Apr 20, 2013
-
-
Rafael Espindola authored
Instead, use MappingNormalization to directly parse COFF::header. Also change the naming convention of the helper classes to be a bit shorter. llvm-svn: 179917
-
- Apr 19, 2013
-
-
Rafael Espindola authored
Use MappingNormalization to read a COFF::relocation directly. No functionality change. llvm-svn: 179891
-
- Apr 05, 2013
-
-
Rafael Espindola authored
llvm-svn: 178904
-