| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
| |
This is a preliminary setup change to support a renaming of Windows target
triples. Split the object file format information out of the environment into a
separate entity. Unfortunately, file format was previously treated as an
environment with an unknown OS. This is most obvious in the ARM subtarget where
the handling for macho on an arbitrary platform switches to AAPCS rather than
APCS (as per Apple's needs).
llvm-svn: 203160
|
|
|
|
|
|
|
| |
It is only used in MachObjectWriter.cpp. Another leftover from early days
of ELF in MC.
llvm-svn: 200895
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a nop. doesSectionRequireSymbols is only used from
isSymbolLinkerVisible. isSymbolLinkerVisible only use from ELF was in
if (!Asm.isSymbolLinkerVisible(Symbol) && !Symbol.isUndefined())
return false;
if (Symbol.isTemporary())
return false;
If the symbol is a temporary this code returns false and it is irrelevant if
we take the first if or not. If the symbol is not a temporary,
Asm.isSymbolLinkerVisible returns true without ever calling
doesSectionRequireSymbols.
This was an horrible leftover from when support for ELF was first added.
llvm-svn: 200894
|
|
|
|
|
|
|
|
| |
They do *different* things to %esp, so they are not equivalent.
Rename PUSHi8 to PUSH32i8 and add the missing PUSH16i8.
llvm-svn: 198761
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The ARM backend has been using most of the MachO related subtarget
checks almost interchangeably, and since the only target it's had to
run on has been IOS (which is all three of MachO, Darwin and IOS) it's
worked out OK so far.
But we'd like to support embedded targets under the "*-*-none-macho"
triple, which means everything starts falling apart and inconsistent
behaviours emerge.
This patch should pick a reasonably sensible set of behaviours for the
new triple (and any others that come along, with luck). Some choices
were debatable (notably FP == r7 or r11), but we can revisit those
later when deficiencies become apparent.
llvm-svn: 198617
|
|
|
|
|
|
|
| |
This patch tries to avoid unrelated changes other than fixing a few
hyphen-related ambiguities and contractions in nearby lines.
llvm-svn: 196471
|
|
|
|
|
|
| |
Thanks to Roman Divacky for the suggestion.
llvm-svn: 195684
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Patch by Mikulas Patocka. I added the test. I checked that for cpu names that
gas knows about, it also doesn't generate nopl.
The modified cpus:
i686 - there are i686-class CPUs that don't have nopl: Via c3, Transmeta
Crusoe, Microsoft VirtualBox - see
https://bbs.archlinux.org/viewtopic.php?pid=775414
k6, k6-2, k6-3, winchip-c6, winchip2 - these are 586-class CPUs
via c3 c3-2 - see https://bugs.archlinux.org/task/19733 as a proof that
Via c3 and c3-Nehemiah don't have nopl
llvm-svn: 195679
|
|
|
|
| |
llvm-svn: 194906
|
|
|
|
|
|
|
|
|
|
| |
On darwin, when trying to create compact unwind info, a .cfi_cfa_def
directive would case an llvm_unreachable() to be hit. Back off when we
see this directive and generate the regular DWARF style eh_frame.
rdar://15406518
llvm-svn: 194285
|
|
|
|
| |
llvm-svn: 190551
|
|
|
|
| |
llvm-svn: 190547
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We used to generate the compact unwind encoding from the machine
instructions. However, this had the problem that if the user used `-save-temps'
or compiled their hand-written `.s' file (with CFI directives), we wouldn't
generate the compact unwind encoding.
Move the algorithm that generates the compact unwind encoding into the
MCAsmBackend. This way we can generate the encoding whether the code is from a
`.ll' or `.s' file.
<rdar://problem/13623355>
llvm-svn: 190290
|
|
|
|
| |
llvm-svn: 189728
|
|
|
|
|
|
|
|
|
| |
Object/MachOFormat.h over to Support/MachO.h."
This reverts commits r189319 and r189315. r189315 broke some tests on what I
believe are big-endian platforms.
llvm-svn: 189321
|
|
|
|
| |
llvm-svn: 189315
|
|
|
|
|
|
|
|
|
|
|
| |
one-byte NOPs. If the processor actually executes those NOPs, as it sometimes
does with aligned bundling, this can have a performance impact. From my
micro-benchmarks run on my one machine, a 15-byte NOP followed by twelve
one-byte NOPs is about 20% worse than a 15 followed by a 12. This patch
changes NOP emission to emit as many 15-byte (the maximum) as possible followed
by at most one shorter NOP.
llvm-svn: 176464
|
|
|
|
|
|
| |
No change in functionality.
llvm-svn: 171822
|
|
|
|
| |
llvm-svn: 170052
|
|
|
|
| |
llvm-svn: 167027
|
|
|
|
| |
llvm-svn: 165878
|
|
|
|
|
|
| |
This adds 'elf' as a recognized target triple environment value and overrides the default generated object format on Windows platforms if that value is present. This patch also enables MCJIT tests on Windows using the new environment value.
llvm-svn: 165030
|
|
|
|
|
|
|
|
|
| |
store this and use it to not emit long nops when the CPU is geode which
doesnt support them.
Fixes PR11212.
llvm-svn: 164132
|
|
|
|
|
|
|
|
|
|
| |
* wrap code blocks in \code ... \endcode;
* refer to parameter names in paragraphs correctly (\arg is not what most
people want -- it starts a new paragraph);
* use \param instead of \arg to document parameters in order to be consistent
with the rest of the codebase.
llvm-svn: 163902
|
|
|
|
| |
llvm-svn: 153502
|
|
|
|
|
|
| |
some superfluous forward declarations.
llvm-svn: 152997
|
|
|
|
| |
llvm-svn: 149809
|
|
|
|
| |
llvm-svn: 148400
|
|
|
|
|
|
| |
x86 specific reloc_coff_secrel32 with a generic FK_SecRel_4.
llvm-svn: 147252
|
|
|
|
| |
llvm-svn: 147231
|
|
|
|
|
|
| |
Other targets will follow shortly.
llvm-svn: 147060
|
|
|
|
|
|
|
| |
avoid including ADT/Triple.h in many places when the target specific bits are
moved.
llvm-svn: 147059
|
|
|
|
|
|
| |
asm parsing and testcase.
llvm-svn: 146801
|
|
|
|
|
|
|
|
| |
Whether a fixup needs relaxation for the associated instruction is a
target-specific function, as the FIXME indicated. Create a hook for that
and use it.
llvm-svn: 145881
|
|
|
|
| |
llvm-svn: 141912
|
|
|
|
|
|
| |
These are strictly utilities for registering targets and components.
llvm-svn: 138450
|
|
|
|
| |
llvm-svn: 136956
|
|
|
|
|
|
| |
fixups to be added
llvm-svn: 136954
|
|
|
|
|
|
| |
Move the reloc size assert into AsmBackend - where it is more apropos.
llvm-svn: 136855
|
|
|
|
|
|
| |
createMCAsmBackend.
llvm-svn: 136010
|
|
llvm-svn: 135939
|