#
0709a7bd |
| 21-May-2015 |
Rafael Espindola <rafael.espindola@gmail.com> |
Move alignment from MCSectionData to MCSection.
This starts merging MCSection and MCSectionData.
There are a few issues with the current split between MCSection and MCSectionData.
* It optimizes t
Move alignment from MCSectionData to MCSection.
This starts merging MCSection and MCSectionData.
There are a few issues with the current split between MCSection and MCSectionData.
* It optimizes the the not as important case. We want the production of .o files to be really fast, but the split puts the information used for .o emission in a separate data structure.
* The ELF/COFF/MachO hierarchy is not represented in MCSectionData, leading to some ad-hoc ways to represent the various flags.
* It makes it harder to remember where each item is.
The attached patch starts merging the two by moving the alignment from MCSectionData to MCSection.
Most of the patch is actually just dropping 'const', since MCSectionData is mutable, but MCSection was not.
llvm-svn: 237936
show more ...
|
Revision tags: llvmorg-3.6.1, llvmorg-3.6.1-rc1 |
|
#
9ff69c8f |
| 24-Apr-2015 |
Lang Hames <lhames@gmail.com> |
[AsmPrinter] Make AsmPrinter's OutStreamer member a unique_ptr.
AsmPrinter owns the OutStreamer, so an owning pointer makes sense here. Using a reference for this is crufty.
llvm-svn: 235752
|
Revision tags: llvmorg-3.5.2, llvmorg-3.5.2-rc1 |
|
#
9ab09237 |
| 17-Mar-2015 |
Rafael Espindola <rafael.espindola@gmail.com> |
Centralize the handling of unique ids for temporary labels.
Before this patch code wanting to create temporary labels for a given entity (function, cu, exception range, etc) had to keep its own coun
Centralize the handling of unique ids for temporary labels.
Before this patch code wanting to create temporary labels for a given entity (function, cu, exception range, etc) had to keep its own counter to have stable symbol names.
createTempSymbol would still add a suffix to make sure a new symbol was always returned, but it kept a single counter. Because of that, if we were to use just createTempSymbol("cu_begin"), the label could change from cu_begin42 to cu_begin43 because some other code started using temporary labels.
Simplify this by just keeping one counter per prefix and removing the various specialized counters.
llvm-svn: 232535
show more ...
|
#
5345e420 |
| 17-Mar-2015 |
Rafael Espindola <rafael.espindola@gmail.com> |
Convert the easy cases of GetTempSymbol to createTempSymbol.
In these cases no code was depending on GetTempSymbol finding an existing symbol.
llvm-svn: 232478
|
Revision tags: llvmorg-3.6.0, llvmorg-3.6.0-rc4, llvmorg-3.6.0-rc3, llvmorg-3.6.0-rc2, llvmorg-3.6.0-rc1, llvmorg-3.5.1, llvmorg-3.5.1-rc2, llvmorg-3.5.1-rc1 |
|
#
5106ce78 |
| 19-Nov-2014 |
David Blaikie <dblaikie@gmail.com> |
Remove StringMap::GetOrCreateValue in favor of StringMap::insert
Having two ways to do this doesn't seem terribly helpful and consistently using the insert version (which we already has) seems like
Remove StringMap::GetOrCreateValue in favor of StringMap::insert
Having two ways to do this doesn't seem terribly helpful and consistently using the insert version (which we already has) seems like it'll make the code easier to understand to anyone working with standard data structures. (I also updated many references to the Entry's key and value to use first() and second instead of getKey{Data,Length,} and get/setValue - for similar consistency)
Also removes the GetOrCreateValue functions so there's less surface area to StringMap to fix/improve/change/accommodate move semantics, etc.
llvm-svn: 222319
show more ...
|
#
6741bb09 |
| 11-Sep-2014 |
David Blaikie <dblaikie@gmail.com> |
Remove the unused string section symbol parameter from DwarfFile::emitStrings
And since it /looked/ like the DwarfStrSectionSym was unused, I tried removing it - but then it turned out that DwarfStr
Remove the unused string section symbol parameter from DwarfFile::emitStrings
And since it /looked/ like the DwarfStrSectionSym was unused, I tried removing it - but then it turned out that DwarfStringPool was reconstructing the same label (and expecting it to have already been emitted) and uses that.
So I kept it around, but wanted to pass it in to users - since it seemed a bit silly for DwarfStringPool to have it passed in and returned but itself have no use for it. The only two users don't handle strings in both .dwo and .o files so they only ever need the one symbol - no need to keep it (and have an unused symbol) in the DwarfStringPool used for fission/.dwo.
Refactor a bunch of accelerator table usage to remove duplication so I didn't have to touch 4-5 callers.
llvm-svn: 217628
show more ...
|
Revision tags: llvmorg-3.5.0, llvmorg-3.5.0-rc4, llvmorg-3.5.0-rc3, llvmorg-3.5.0-rc2, llvmorg-3.5.0-rc1, llvmorg-3.4.2, llvmorg-3.4.2-rc1 |
|
#
322053ca |
| 27-Apr-2014 |
Benjamin Kramer <benny.kra@googlemail.com> |
Make helper functions static.
llvm-svn: 207359
|
Revision tags: llvmorg-3.4.1, llvmorg-3.4.1-rc2 |
|
#
daefdbf3 |
| 25-Apr-2014 |
David Blaikie <dblaikie@gmail.com> |
Encapsulate the DWARF string pool in a separate type.
Pulls out some more code from some of the rather monolithic DWARF classes. Unlike the address table, the string table won't move up into DwarfDe
Encapsulate the DWARF string pool in a separate type.
Pulls out some more code from some of the rather monolithic DWARF classes. Unlike the address table, the string table won't move up into DwarfDebug - each DWARF file has its own string table (but there can be only one address table).
llvm-svn: 207277
show more ...
|