| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
self-host :).
llvm-svn: 131421
|
| |
|
|
| |
llvm-svn: 131411
|
| |
|
|
|
|
|
|
|
|
| |
("T is 1 if the target symbol S has type STT_FUNC and the
symbol addresses a Thumb instruction ;it is 0 otherwise."
from "ELF for the ARM Architecture" 4.7.1.2)
Patch by Koan-Sin Tan!
llvm-svn: 131406
|
| |
|
|
| |
llvm-svn: 131384
|
| |
|
|
|
|
| |
information.
llvm-svn: 131382
|
| |
|
|
| |
llvm-svn: 131208
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LLVM and binutils.
With this patch, there are no functional differences between the .o
produced directly from LLVM versus the .s to .o via GNU as, for relocation tags
at least, for both PIC and non-PIC modes.
Because some non-PIC reloc tags are used (legally) on PIC, so IsPCRel flag is
necessary but not sufficient to determine whether the overall codegen mode is
PIC or not. Why is this necessary? There is an incompatibility of how relocs
are emitted in the .rodata section. Binutils PIC likes to emit certain relocs
as section relative offsets. Non-PIC does not do this.
So I added a hidden switch on the ELFObjectwriter "-arm-elf-force-pic" which
forces the objectwriter to pretend that all relocs are for PIC mode.
Todo: Activate ForceARMElfPIC to true if -relocation-model=pic is selected
on llc.
Todo: There are probably more issues for PIC mode on ARM/MC/ELF...
Todo: Existing tests in MC/ARM/elf-reloc*.ll need to be converted over to .s
tests as well as expanded to cover the gamut.
llvm-svn: 131205
|
| |
|
|
| |
llvm-svn: 131161
|
| |
|
|
| |
llvm-svn: 131149
|
| |
|
|
|
|
| |
DwarfRequiresRelocationForSectionOffset as this is not specific to StmtList.
llvm-svn: 131148
|
| |
|
|
| |
llvm-svn: 131146
|
| |
|
|
| |
llvm-svn: 131129
|
| |
|
|
|
|
| |
one of the sections is created.
llvm-svn: 131124
|
| |
|
|
| |
llvm-svn: 131121
|
| |
|
|
| |
llvm-svn: 131120
|
| |
|
|
| |
llvm-svn: 131119
|
| |
|
|
| |
llvm-svn: 131118
|
| |
|
|
| |
llvm-svn: 131117
|
| |
|
|
| |
llvm-svn: 131078
|
| |
|
|
|
|
|
| |
the smaller encoding and this cuts 270336 bytes from a release version of
clang and 1246272 bytes from a debug build.
llvm-svn: 131067
|
| |
|
|
| |
llvm-svn: 131031
|
| |
|
|
| |
llvm-svn: 130984
|
| |
|
|
|
|
|
| |
I tested both gdb on a bootstrapped clang and and the gdb testsuite on OS X (snow leopard)
and both are happy using __eh_frame.
llvm-svn: 130937
|
| |
|
|
|
|
|
|
|
|
|
| |
it is both inefficient and unexpected by dwarfdump. Change to
a DW_FORM_data4.
While in here, change the predicate name to reflect that the position
is not really absolute (it is an offset), just that the linker needs a
relocation.
llvm-svn: 130846
|
| |
|
|
|
|
|
| |
(and should thus never be done).
- Should fix a crash on win32.
llvm-svn: 130793
|
| |
|
|
| |
llvm-svn: 130658
|
| |
|
|
|
|
| |
-fno-dwarf2-cfi-asm. Implement the same behavior.
llvm-svn: 130637
|
| |
|
|
|
|
|
|
|
|
| |
for all symbol differences and can drop the old EmitPCRelSymbolValue
method.
This also make getExprForFDESymbol on ELF equal to the one on MachO, and it
can be made non-virtual.
llvm-svn: 130634
|
| |
|
|
|
|
| |
less agressive about disabling cfi on linux :-(
llvm-svn: 130626
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently the output should be almost identical to the one produced by CodeGen
to make the transition easier.
The only two differences I know of are:
* Some files get an extra advance loc of size 0. This will be fixed when
relaxations are enabled.
* The optimization of declaring an EH symbol as an external variable is not
implemented. This is a subset of adding the nounwind attribute, so we if really
this at -O0 we should probably do it at the IL level.
llvm-svn: 130623
|
| |
|
|
|
|
|
| |
is a bit ugly, but doing it on the base MCStreamer would be redundant
with the object streamer which does it using SD.
llvm-svn: 130611
|
| |
|
|
| |
llvm-svn: 130609
|
| |
|
|
|
|
|
| |
the final assembly. It is the same technique used when targeting
assemblers that don't support .loc.
llvm-svn: 130587
|
| |
|
|
| |
llvm-svn: 130585
|
| |
|
|
|
|
|
| |
lets this code be used when producing assembly code for old assemblers without
uleb support.
llvm-svn: 130544
|
| |
|
|
| |
llvm-svn: 130543
|
| |
|
|
|
|
| |
currently used, because variables don't get reported as being "defined".
llvm-svn: 130524
|
| |
|
|
|
|
| |
sections based on FindAssociatedSection().
llvm-svn: 130523
|
| |
|
|
| |
llvm-svn: 130522
|
| |
|
|
| |
llvm-svn: 130520
|
| |
|
|
|
|
| |
assuming they are present in a fragment.
llvm-svn: 130519
|
| |
|
|
|
|
|
|
| |
AsmPrinter can have line number entries.
PR 9810
llvm-svn: 130518
|
| |
|
|
|
|
| |
that associate sections with expressions.
llvm-svn: 130517
|
| |
|
|
| |
llvm-svn: 130515
|
| |
|
|
|
|
| |
assigned to a CIE that requires one, just output a 0.
llvm-svn: 130472
|
| |
|
|
|
|
| |
in the same order as the one in CodeGen.
llvm-svn: 130471
|
| |
|
|
|
|
| |
expressions used in the FDE to refer to symbols.
llvm-svn: 130437
|
| |
|
|
|
|
| |
converting the symbol passed to .cfi_personality into bytes is the file.
llvm-svn: 130400
|
| |
|
|
| |
llvm-svn: 130397
|
| |
|
|
|
|
|
| |
This removes one of the main advantages of moving eh_frame to MC, but
makes the transition a lot easier to debug (run md5).
llvm-svn: 130379
|