| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
There is still a bit more refactoring left to do in Targets. But we are now very
close to fixing all the layering issues in MC.
llvm-svn: 135611
|
|
|
|
|
|
| |
use of TargetFrameLowering in TargetAsmInfo.
llvm-svn: 135439
|
|
|
|
|
|
| |
better location welcome).
llvm-svn: 135438
|
|
|
|
|
|
|
|
|
| |
to MCRegisterInfo. Also initialize the mapping at construction time.
This patch eliminate TargetRegisterInfo from TargetAsmInfo. It's another step
towards fixing the layering violation.
llvm-svn: 135424
|
|
|
|
|
|
|
| |
solution but it is a small step towards removing the horror that is
TargetAsmInfo.
llvm-svn: 135237
|
|
|
|
|
|
| |
out-of-line.
llvm-svn: 135006
|
|
|
|
| |
llvm-svn: 134640
|
|
|
|
| |
llvm-svn: 134577
|
|
|
|
|
|
| |
and fixes here and there.
llvm-svn: 123170
|
|
|
|
| |
llvm-svn: 121471
|
|
|
|
| |
llvm-svn: 121461
|
|
|
|
|
|
|
|
|
|
|
| |
f:
.cfi_startproc
nop
.cfi_endproc
assembled (on ELF).
llvm-svn: 121434
|
|
|
|
|
|
| |
directories and rename them.
llvm-svn: 79768
|
|
|
|
| |
llvm-svn: 79763
|
|
|
|
|
|
| |
must be emitted for PowerPC-Linux '.bss' section
llvm-svn: 78958
|
|
|
|
|
|
|
|
|
|
| |
"inlineasmstart/end" strings so that the contents of the directive
are separate from the comment character. This lets elf targets
get #APP/#NOAPP for free even if they don't use "#" as the comment
character. This also allows hoisting the darwin stuff up to the
shared TAI class.
llvm-svn: 78737
|
|
|
|
|
|
|
|
|
|
| |
version. This allows TAI implementations to specify the directive to use
based on the mode being codegen'd for.
The real fix for this is to remove JumpTableDirective, but I don't feel
like diving into the jumptable snarl just now.
llvm-svn: 78709
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and short. Well, it's kinda short. Definitely nasty and brutish.
The front-end generates the register/unregister calls into the SjLj runtime,
call-site indices and landing pad dispatch. The back end fills in the LSDA
with the call-site information provided by the front end. Catch blocks are
not yet implemented.
Built on Darwin and verified no llvm-core "make check" regressions.
llvm-svn: 78625
|
|
|
|
|
|
|
|
|
| |
2. Move section switch printing to MCSection virtual method which takes a
TAI. This eliminates textual formatting stuff from TLOF.
3. Eliminate SwitchToSectionDirective, getSectionFlagsAsString, and
TLOFELF::AtIsCommentChar.
llvm-svn: 78510
|
|
|
|
|
|
|
|
| |
A TAI hook is appropriate in this case because this is just an
asm syntax issue, not a semantic difference. TLOF should model
the semantics of the section.
llvm-svn: 78498
|
|
|
|
| |
llvm-svn: 78428
|
|
|
|
| |
llvm-svn: 78242
|
|
|
|
|
|
|
| |
the masm backend. If anyone cares about masm in the future,
we'll have semantic sections it can hang off of.
llvm-svn: 78096
|
|
|
|
|
|
| |
TLOF, unifying all the dwarf targets at the same time.
llvm-svn: 77889
|
|
|
|
| |
llvm-svn: 77888
|
|
|
|
|
|
|
|
|
|
| |
the only real caller (GetFunctionSizeInBytes) uses it.
The custom ARM implementation of this is basically reimplementing
an assembler poorly for negligible gain. It should be removed
IMNSHO, but I'll leave that to ARMish folks to decide.
llvm-svn: 77877
|
|
|
|
|
|
| |
no longer depends on TM!
llvm-svn: 77863
|
|
|
|
| |
llvm-svn: 77858
|
|
|
|
|
|
| |
even considering #if 0 code.
llvm-svn: 77856
|
|
|
|
|
|
|
|
|
|
|
| |
getLSDASection() to be more specific. This makes it pretty obvious
that the ELF LSDA section is being specified wrong in PIC mode. We're
probably getting a lot of startup-time relocations to a readonly page,
which is expensive and bad.
Someone who cares about ELF C++ should investigate this.
llvm-svn: 77847
|
|
|
|
|
|
| |
TAI.
llvm-svn: 77842
|
|
|
|
|
|
|
|
|
|
|
|
| |
compute it based on what it knows. As part of this, rename getSectionForMergeableConstant
to getSectionForConstant because it works for non-mergable constants also.
The only functionality change from this is that Xcore will start dropping
its jump tables into readonly section instead of data section in -static mode.
This should be fine as the linker resolves the relocations. If this is a
problem, let me know and we'll come up with another solution.
llvm-svn: 77833
|
|
|
|
| |
llvm-svn: 77820
|
|
|
|
|
|
|
| |
thing is #if0'd out anyway. Just simplify the code by reducing the interface.
Not deleting this is essential for Bill's continuing happiness.
llvm-svn: 77736
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
implementations that need it, rearrange ELFTAI.
llvm-svn: 77236
|
|
|
|
|
|
| |
not in mergable
llvm-svn: 77210
|
|
|
|
| |
llvm-svn: 77203
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
just use a smallstring instead.
llvm-svn: 77144
|
|
|
|
| |
llvm-svn: 77143
|
|
|
|
|
|
| |
section specified for it or not.
llvm-svn: 77142
|
|
|
|
|
|
| |
to its classification.
llvm-svn: 77140
|
|
|
|
| |
llvm-svn: 77138
|
|
|
|
| |
llvm-svn: 77135
|
|
|
|
| |
llvm-svn: 77134
|
|
|
|
|
|
| |
simplify targets.
llvm-svn: 77132
|
|
|
|
|
|
| |
putting readonly constants in the readonly section if we have one.
llvm-svn: 77131
|