| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
incarnation of target transform info.
This is in preparation for starting to redesign TTI to be amenable to
the new PM world.
llvm-svn: 227525
|
| |
|
|
| |
llvm-svn: 227523
|
| |
|
|
|
|
| |
whether or not this headers exists.
llvm-svn: 227522
|
| |
|
|
| |
llvm-svn: 227521
|
| |
|
|
| |
llvm-svn: 227520
|
| |
|
|
|
|
|
|
|
|
|
|
| |
In the large code model, we now put __chkstk in %r11 before calling it.
Refactor the code so that we only do this once. Simplify things by using
__chkstk_ms instead of __chkstk on cygming. We already use that symbol
in the prolog emission, and it simplifies our logic.
Second half of PR18582.
llvm-svn: 227519
|
| |
|
|
|
|
| |
MSP430 backend.
llvm-svn: 227517
|
| |
|
|
| |
llvm-svn: 227516
|
| |
|
|
| |
llvm-svn: 227514
|
| |
|
|
|
|
| |
that's actually sitting on the target machine.
llvm-svn: 227513
|
| |
|
|
|
|
|
|
|
| |
calls that don't take a Function argument from Mips. Notable
exceptions: the AsmPrinter and MipsTargetObjectFile. The
latter needs to be fixed, and the former will be fixed when the
general AsmPrinter changes happen.
llvm-svn: 227512
|
| |
|
|
|
|
|
|
|
|
|
| |
between the linker's TLS optimizations and Clang's TLS code generation.
For now, Clang has been changed to disable linker TLS optimizations
until it (and LLVM more generally) are emitting TLS code sequences
compatible with the old bugs found in the linkers. That's a better fix
to handle bootstrapping on that platform.
llvm-svn: 227511
|
| |
|
|
|
|
|
|
|
| |
This is just an alias for CALL64pcrel32, and we can just use that opcode
with explicit defs in the MI.
No functionality change.
llvm-svn: 227508
|
| |
|
|
|
|
| |
does not scale very well yet, but might be a good start.
llvm-svn: 227507
|
| |
|
|
|
|
|
|
|
|
| |
These are needed so this pass will produce output when
e.g. -print-after-all is used.
Phabricator Review: http://reviews.llvm.org/D7264
Patch by Geoff Berry <gberry@codeaurora.org>!
llvm-svn: 227506
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
win64: Call __chkstk through a register with the large code model
Fixes half of PR18582. True dynamic allocas will still have a
CALL64pcrel32 which will fail.
Reviewers: majnemer
Differential Revision: http://reviews.llvm.org/D7267
llvm-svn: 227503
|
| |
|
|
| |
llvm-svn: 227502
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The validation algorithm used an incremental approach, building each
iteration's data structures temporarily, validating them, then
adding them to a global set.
This does not scale well to having multiple sets of Root nodes, as the
set of instructions used in each iteration is the union over all
the root nodes. Therefore, refactor the logic to create a single, simple
container to which later logic then refers. This makes it simpler
control-flow wise to make the creation of the container more complex with
the addition of multiple root sets.
llvm-svn: 227499
|
| |
|
|
| |
llvm-svn: 227498
|
| |
|
|
| |
llvm-svn: 227495
|
| |
|
|
| |
llvm-svn: 227493
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
In http://reviews.llvm.org/D6911, we allowed GVN to propagate FP equalities
to allow some simple value range optimizations. But that introduced a bug
when comparing to -0.0 or 0.0: these compare equal even though they are not
bitwise identical.
This patch disallows propagating zero constants in equality comparisons.
Fixes: http://llvm.org/bugs/show_bug.cgi?id=22376
Differential Revision: http://reviews.llvm.org/D7257
llvm-svn: 227491
|
| |
|
|
|
|
| |
does not fix all signal handlers, but does fix the most recent one.
llvm-svn: 227490
|
| |
|
|
| |
llvm-svn: 227489
|
| |
|
|
|
|
| |
debug location of comparisons in jumps.
llvm-svn: 227488
|
| |
|
|
| |
llvm-svn: 227487
|
| |
|
|
| |
llvm-svn: 227486
|
| |
|
|
| |
llvm-svn: 227485
|
| |
|
|
|
|
|
|
|
| |
Add tests for the various combines. This should
always be at least cycle neutral on all subtargets for f64,
and faster on some. For f32 we should prefer selecting
v_mad_f32 over v_fma_f32.
llvm-svn: 227484
|
| |
|
|
| |
llvm-svn: 227483
|
| |
|
|
| |
llvm-svn: 227482
|
| |
|
|
|
|
|
|
|
| |
The use of the DbgLoc in FastISel is probably something we should fix.
It's prone to leaking the wrong location into instructions - we should
have a clear chain of custody from the debug location of an IR
Instruction to that of a MachineInstr to avoid such leakage.
llvm-svn: 227481
|
| |
|
|
|
|
|
|
|
| |
Certain aspects of llvm-pdbdump require language support only present in
MSVC 2013 and higher. Since this is strictly a utility, and since we hope
to drop support for MSVC 2012 soon, don't build this unless MSVC 2013 or
higher.
llvm-svn: 227479
|
| |
|
|
| |
llvm-svn: 227478
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Any code creating an MCSectionELF knows ELF and already provides the flags.
SectionKind is an abstraction used by common code that uses a plain
MCSection.
Use the flags to compute the SectionKind. This removes a lot of
guessing and boilerplate from the MCSectionELF construction.
llvm-svn: 227476
|
| |
|
|
| |
llvm-svn: 227474
|
| |
|
|
|
|
| |
This has to be done in the DLL because the state doesn't cross DLL boundaries.
llvm-svn: 227471
|
| |
|
|
| |
llvm-svn: 227470
|
| |
|
|
|
|
| |
copy-pasto in tests
llvm-svn: 227468
|
| |
|
|
| |
llvm-svn: 227466
|
| |
|
|
|
|
| |
fuzzer library based on LLVM_USE_SANITIZE_COVERAGE being set or unset.
llvm-svn: 227464
|
| |
|
|
| |
llvm-svn: 227463
|
| |
|
|
| |
llvm-svn: 227462
|
| |
|
|
|
|
| |
The schedule model is not complete yet, and could be improved.
llvm-svn: 227461
|
| |
|
|
| |
llvm-svn: 227460
|
| |
|
|
|
|
| |
time for real).
llvm-svn: 227459
|
| |
|
|
|
|
|
|
|
|
|
| |
For large stack offsets the compiler generates multiple immediate mode
sub/add instructions in the prologue/epilogue. This patch makes the
compiler place the final amount to be added/subtracted into a register,
which is then added/substracted with a single operation.
Differential Revision: http://reviews.llvm.org/D7226
llvm-svn: 227458
|
| |
|
|
|
|
| |
i32 instead of i1.
llvm-svn: 227457
|
| |
|
|
| |
llvm-svn: 227456
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Patch by Nemanja Ivanovic.
As was uncovered by the failing test case (when run on non-PPC
platforms), the feature set when compiling with -march=ppc64le was not
being picked up. This change ensures that if the -mcpu option is not
specified, the correct feature set is picked up regardless of whether
we are on PPC or not.
llvm-svn: 227455
|