|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| 
| 
| | understanding CannotYTetSelect and other errors easier.
llvm-svn: 93901 | 
| | 
| 
| 
| 
| 
| 
| | MCAsmParser, and changed the target-specific AsmParsers
to use it.
llvm-svn: 93900 | 
| | 
| 
| 
| 
| 
| | identifier.  There is no way to work around it.
llvm-svn: 93896 | 
| | 
| 
| 
| 
| 
| | This fixes some bugs handling address spaces.
llvm-svn: 93891 | 
| | 
| 
| 
| 
| 
| | (which just iteratively emits bytes) to MCStreamer.
llvm-svn: 93888 | 
| | 
| 
| 
| 
| 
| | which we don't support anymore.
llvm-svn: 93886 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | function can support dynamic stack realignment. That's a much easier question
to answer at instruction selection stage than whether the function actually
will have dynamic alignment prologue. This allows the removal of the
stack alignment heuristic pass, and improves code quality for cases where
the heuristic would result in dynamic alignment code being generated when
it was not strictly necessary.
llvm-svn: 93885 | 
| | 
| 
| 
| 
| 
| | .zerofill directive.  Streamerize its generation.
llvm-svn: 93868 | 
| | 
| 
| 
| | llvm-svn: 93864 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | doing global variable classification anymore) and hookized, sink almost
all target targets global variable emission code into AsmPrinter and out
of each target.
Some notes:
1. PIC16 does completely custom and crazy stuff, so it is not changed.
2. XCore has some custom handling for extra directives.  I'll look at it next.
3. This switches linux/ppc to use .globl instead of .global.  If .globl is
   actually wrong, let me know and I'll fix it.
4. This makes linux/ppc get a lot of random cases right which were obviously
   wrong before, it is probably now a bit healthier.
5. Blackfin will probably start getting .comm and other things that it didn't
   before.  If this is undesirable, it should explicitly opt out of these
   things by clearing the relevant fields of MCAsmInfo.
This leads to a nice diffstat:
 14 files changed, 127 insertions(+), 830 deletions(-)
llvm-svn: 93858 | 
| | 
| 
| 
| | llvm-svn: 93855 | 
| | 
| 
| 
| 
| 
| | "isdarwin".
llvm-svn: 93852 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | This makes a similar code dead in all the other targets, I'll clean it up
in a bit.
This also moves handling of lcomm up before acquisition of a section,
since lcomm never needs a section.
llvm-svn: 93851 | 
| | 
| 
| 
| 
| 
| | darwin into common code.
llvm-svn: 93849 | 
| | 
| 
| 
| 
| 
| | duplicating the logic (differently) in lots of different targets.
llvm-svn: 93847 | 
| | 
| 
| 
| 
| 
| | and everything else (weak).
llvm-svn: 93846 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | simplify and commonize some of the asmprinter logic for globals.
This also avoids printing the MCSection for .zerofill, which broke
the llvm-gcc build.
llvm-svn: 93843 | 
| | 
| 
| 
| | llvm-svn: 93839 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | 1. TargetLoweringObjectFileMachO should decide if something
   goes in zerofill instead of having every target do it.
2. TargetLoweringObjectFileMachO should assign said symbols to
   the right MCSection, the asmprinters should just emit to the
   right section.
3. Since all zerofill stuff goes through mcstreamer anymore,
   MAI can have a bool "haszerofill" instead of having the textual
   directive to emit.
llvm-svn: 93838 | 
| | 
| 
| 
| | llvm-svn: 93833 | 
| | 
| 
| 
| 
| 
| | performance-critical code (currently only used by AsmWriter)
llvm-svn: 93802 | 
| | 
| 
| 
| 
| 
| | - Greatly improve the comments to the getLSDAEncoding method.
llvm-svn: 93796 | 
| | 
| 
| 
| | llvm-svn: 93784 | 
| | 
| 
| 
| 
| 
| | to something more accurate.
llvm-svn: 93782 | 
| | 
| 
| 
| 
| 
| | be used independently of SourceMgr.
llvm-svn: 93780 | 
| | 
| 
| 
| 
| 
| | array
llvm-svn: 93764 | 
| | 
| 
| 
| 
| 
| 
| 
| | idea, but unfortunately necessary.
- Default to using 4-bytes for the LSDA pointer encoding to agree with the
  encoded value in the CIE.
llvm-svn: 93753 | 
| | 
| 
| 
| 
| 
| | refactoring.  Fixes PR6067.
llvm-svn: 93724 | 
| | 
| 
| 
| | llvm-svn: 93702 | 
| | 
| 
| 
| 
| 
| 
| | as it emits code.  Switch .globl directives to use OutStreamer instead of
doing it textually (in x86)
llvm-svn: 93700 | 
| | 
| 
| 
| 
| 
| | printing them.
llvm-svn: 93699 | 
| | 
| 
| 
| 
| 
| 
| | remove it and change all the code that prints MCSymbols to use 
<< instead, which is much simpler and cleaner.
llvm-svn: 93695 | 
| | 
| 
| 
| 
| 
| | function, it is mangling types, which don't matter how they are done.
llvm-svn: 93692 | 
| | 
| 
| 
| | llvm-svn: 93691 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | to Mangler.  Now MCSymbol just decides whether to slap quotes around
a symbol when printing it.
This also fixes some weirdness where two MCSymbols could be created
for the same symbol, if one needed to be mangled and got mangled to
the other one.
llvm-svn: 93690 | 
| | 
| 
| 
| 
| 
| | having to pass various fields from it in.  Simplify.
llvm-svn: 93686 | 
| | 
| 
| 
| | llvm-svn: 93680 | 
| | 
| 
| 
| | llvm-svn: 93664 | 
| | 
| 
| 
| | llvm-svn: 93663 | 
| | 
| 
| 
| | llvm-svn: 93662 | 
| | 
| 
| 
| | llvm-svn: 93656 | 
| | 
| 
| 
| 
| 
| 
| 
| | Mangler::getMangledName is used from lto
Mangler::setUseQuotes is used in the AsmPrinter
Mangler::setSymbolsCanStartWithDigit is used in the AsmPrinter
llvm-svn: 93652 | 
| | 
| 
| 
| 
| 
| | Mangler that is now transitively dead.  woo.
llvm-svn: 93648 | 
| | 
| 
| 
| 
| 
| 
| 
| | and add an explicit ForcePrivate argument.
Switch FunctionEHFrameInfo to be MCSymbol based instead of string based.
llvm-svn: 93646 | 
| | 
| 
| 
| 
| 
| | getMangledName.
llvm-svn: 93643 | 
| | 
| 
| 
| | llvm-svn: 93641 | 
| | 
| 
| 
| | llvm-svn: 93638 | 
| | 
| 
| 
| 
| 
| 
| 
| | Nodes that had children outside of the post dominator tree (infinite loops)
where removed from the post dominator tree. This seems to be wrong. Leave them
in the tree.
llvm-svn: 93633 | 
| | 
| 
| 
| 
| 
| 
| 
| | Move the DOTGraphTraits dotty printer/viewer templates, that were developed for
the dominance tree into their own header file. This will allow reuse in future
passes.
llvm-svn: 93632 | 
| | 
| 
| 
| | llvm-svn: 93630 |