| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
sdisel will use to properly complete phi nodes.
Not functionality change yet.
llvm-svn: 82273
|
|
|
|
|
|
|
|
|
| |
e.g. pinning
variables to specified absolute address. Make use of this feature for MSP430.
This unbreaks PR4776.
llvm-svn: 82227
|
|
|
|
| |
llvm-svn: 81714
|
|
|
|
|
|
| |
the object, make it static instead of const.
llvm-svn: 81711
|
|
|
|
|
|
| |
Nothing is using this info yet.
llvm-svn: 81707
|
|
|
|
|
|
|
| |
now that printBasicBlockLabel is only used for starting
a MBB. This allows elimination of a bunch of arguments.
llvm-svn: 81684
|
|
|
|
|
|
| |
instead.
llvm-svn: 81677
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the MCInst path of the asmprinter. Instead, pull comment printing
out of the autogenerated asmprinter into each target that uses the
autogenerated asmprinter. This causes code duplication into each
target, but in a way that will be easier to clean up later when more
asmprinter stuff is commonized into the base AsmPrinter class.
This also fixes an xcore strangeness where it inserted two tabs
before every instruction.
llvm-svn: 81396
|
|
|
|
|
|
| |
icc (#177, partial). Patch by Erick Tryzelaar.
llvm-svn: 81106
|
|
|
|
| |
llvm-svn: 80773
|
|
|
|
| |
llvm-svn: 80584
|
|
|
|
| |
llvm-svn: 80085
|
|
|
|
|
|
| |
This fixes PR4769
llvm-svn: 80001
|
|
|
|
|
|
| |
- The world needs better C++ refactoring tools, can I get an Amen!?
llvm-svn: 79843
|
|
|
|
| |
llvm-svn: 79834
|
|
|
|
| |
llvm-svn: 79833
|
|
|
|
| |
llvm-svn: 79780
|
|
|
|
| |
llvm-svn: 79777
|
|
|
|
| |
llvm-svn: 79763
|
|
|
|
|
|
| |
talk to the MCStreamer directly instead.
llvm-svn: 79405
|
|
|
|
| |
llvm-svn: 79024
|
|
|
|
| |
llvm-svn: 79015
|
|
|
|
| |
llvm-svn: 79012
|
|
|
|
|
|
|
|
| |
pair instead of from a virtual method on TargetMachine. This cuts the final
ties of TargetAsmInfo to TargetMachine, meaning that MC can now use
TargetAsmInfo.
llvm-svn: 78802
|
|
|
|
|
|
|
|
| |
while
the latter is capable of representing either a primitive or an extended type.
llvm-svn: 78713
|
|
|
|
|
|
| |
LLVMTargetMachine ctor. It is currently unused.
llvm-svn: 78711
|
|
|
|
|
|
| |
own struct type.
llvm-svn: 78610
|
|
|
|
|
|
| |
error condition get trapped with an assert.
llvm-svn: 78449
|
|
|
|
| |
llvm-svn: 78444
|
|
|
|
| |
llvm-svn: 78191
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of awkwardly encoding calling-convention information with ISD::CALL,
ISD::FORMAL_ARGUMENTS, ISD::RET, and ISD::ARG_FLAGS nodes, TargetLowering
provides three virtual functions for targets to override:
LowerFormalArguments, LowerCall, and LowerRet, which replace the custom
lowering done on the special nodes. They provide the same information, but
in a more immediately usable format.
This also reworks much of the target-independent tail call logic. The
decision of whether or not to perform a tail call is now cleanly split
between target-independent portions, and the target dependent portion
in IsEligibleForTailCallOptimization.
This also synchronizes all in-tree targets, to help enable future
refactoring and feature work.
llvm-svn: 78142
|
|
|
|
|
|
|
|
|
|
|
| |
calls were originally put in place because errs() at one time was
not unbuffered, and these print routines are commonly used with errs()
for debugging. However, errs() is now properly unbuffered, so the
flush calls are no longer needed. This significantly reduces the
number of write(2) calls for regular asm printing when there are many
small functions.
llvm-svn: 78137
|
|
|
|
|
|
| |
- The C, C++, MSIL, and Mips backends still need the module.
llvm-svn: 77927
|
|
|
|
|
|
|
|
|
|
| |
Module*.
Also, dropped uses of TargetMachine where unnecessary. The only target which
still takes a TargetMachine& is Mips, I would appreciate it if someone would
normalize this to match other targets.
llvm-svn: 77918
|
|
|
|
| |
llvm-svn: 77871
|
|
|
|
|
|
| |
no longer depends on TM!
llvm-svn: 77863
|
|
|
|
|
|
| |
support multiple different pointer register classes.
llvm-svn: 77501
|
|
|
|
|
|
| |
No functionality change.
llvm-svn: 77432
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
it is highly specific to the object file that will be generated in the end,
this introduces a new TargetLoweringObjectFile interface that is implemented
for each of ELF/MachO/COFF/Alpha/PIC16 and XCore.
Though still is still a brutal and ugly refactoring, this is a major step
towards goodness.
This patch also:
1. fixes a bunch of dangling pointer problems in the PIC16 backend.
2. disables the TargetLowering copy ctor which PIC16 was accidentally using.
3. gets us closer to xcore having its own crazy target section flags and
pic16 not having to shadow sections with its own objects.
4. fixes wierdness where ELF targets would set CStringSection but not
CStringSection_. Factor the code better.
5. fixes some bugs in string lowering on ELF targets.
llvm-svn: 77294
|
|
|
|
|
|
|
|
| |
getOrCreateSection
instead.
llvm-svn: 77186
|
|
|
|
|
|
| |
instead and drive things based off of that.
llvm-svn: 77184
|
|
|
|
|
|
|
|
|
| |
'unnamed' bss section, but some impls would want a named one. Since
they don't have consistent behavior, just make each target do their
own thing, instead of doing something "sortof common" then having
targets change immutable objects later.
llvm-svn: 77165
|
|
|
|
|
|
| |
classes, and migrate existing targets over.
llvm-svn: 77126
|
|
|
|
|
|
| |
- This was overkill and inconsistently implemented.
llvm-svn: 77114
|
|
|
|
|
|
|
|
|
|
| |
- Instead of requiring targets to define a JIT quality match function, we just
have them specify if they support a JIT.
- Target selection for the JIT just gets the host triple and looks for the best
target which matches the triple and has a JIT.
llvm-svn: 77060
|
|
|
|
|
|
| |
- Less boilerplate == good.
llvm-svn: 77052
|
|
|
|
| |
llvm-svn: 76702
|
|
|
|
|
|
|
| |
and call PrintGlobalVariable, allowing elimination and simplification
of various targets.
llvm-svn: 76604
|
|
|
|
|
|
|
| |
This eliminates redundancy setting up the mangler and adds support to them
for module-level inline asm and a .file directive.
llvm-svn: 76592
|
|
|
|
|
|
| |
LLVM IR concept.
llvm-svn: 76590
|