| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 90521
|
| |
|
|
|
|
|
| |
that I'm working on. This is manifesting as a miscompile of 255.vortex
on some targets. No check lines yet because it fails.
llvm-svn: 90520
|
| |
|
|
|
|
| |
in the Methods table now.
llvm-svn: 90519
|
| |
|
|
|
|
|
| |
gvn (this is just a skeleton so far). This will ultimately be used
to fix a nasty miscompilation with GVN.
llvm-svn: 90518
|
| |
|
|
| |
llvm-svn: 90517
|
| |
|
|
|
|
| |
BlockDataRegion*, giving us choice in our degree of context-sensitivity.
llvm-svn: 90516
|
| |
|
|
| |
llvm-svn: 90515
|
| |
|
|
| |
llvm-svn: 90514
|
| |
|
|
|
|
| |
Fixup throws and rethrows to use invoke as appropriate.
llvm-svn: 90513
|
| |
|
|
|
|
| |
that contains an instruction
llvm-svn: 90512
|
| |
|
|
| |
llvm-svn: 90511
|
| |
|
|
|
|
|
| |
probably want to do some sort of performance assessment before enabling it,
though.
llvm-svn: 90510
|
| |
|
|
| |
llvm-svn: 90509
|
| |
|
|
| |
llvm-svn: 90508
|
| |
|
|
|
|
| |
a compile time perf optimization to avoid a load.
llvm-svn: 90507
|
| |
|
|
|
|
| |
BlockInvocationContext to represent the invocation of a block.
llvm-svn: 90506
|
| |
|
|
|
|
|
| |
as a constant integer. Also, some minor cleanup and improvements to the
diagnostics.
llvm-svn: 90504
|
| |
|
|
| |
llvm-svn: 90503
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The coalescer is supposed to clean these up, but when setting up parameters
for a function call, there may be copies to physregs. If the defining
instruction has been LICM'ed far away, the coalescer won't touch it.
The register allocation hint does not always work - when the register
allocator is backtracking, it clears the hints.
This patch takes care of a few more cases that r90163 missed.
llvm-svn: 90502
|
| |
|
|
|
|
|
|
| |
implicit_def to the end of the source block.
- When reaching value is replaced with another, update the cache as well.
llvm-svn: 90501
|
| |
|
|
|
|
| |
create the enum type in the same scope as you would a record type.
llvm-svn: 90500
|
| |
|
|
|
|
| |
MemRegion.cpp.
llvm-svn: 90499
|
| |
|
|
|
|
| |
allows fields to find their context DIE from the map.
llvm-svn: 90498
|
| |
|
|
|
|
| |
instruction. Extend ParseParameterList() to use this new function so that calls to llvm.dbg.declare can pass inline metadata
llvm-svn: 90497
|
| |
|
|
| |
llvm-svn: 90494
|
| |
|
|
| |
llvm-svn: 90492
|
| |
|
|
|
|
|
| |
Make it an inner class of Parser to assuage access control.
No functionality change.
llvm-svn: 90491
|
| |
|
|
| |
llvm-svn: 90490
|
| |
|
|
| |
llvm-svn: 90489
|
| |
|
|
| |
llvm-svn: 90488
|
| |
|
|
| |
llvm-svn: 90487
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Pointed out by Javier Martinez (who also provided a patch). Since
this logic is not used on (for example) x86, I guess nobody noticed.
Tested by generating SHL, SRL, SRA on various choices of i64 for all
possible shift amounts, and comparing with gcc. Since I did this on
x86-32, I had to force the use of ExpandShiftWithUnknownAmountBit.
What I'm saying here is that I don't have a testcase I can add to the
repository.
llvm-svn: 90482
|
| |
|
|
| |
llvm-svn: 90481
|
| |
|
|
|
|
| |
don't infinitely recurse for cases we can't evaluate.
llvm-svn: 90480
|
| |
|
|
|
|
| |
PathDiagnostics before they are emitted. Fixes <rdar://problem/7439668>.
llvm-svn: 90478
|
| |
|
|
|
|
| |
std::string&.
llvm-svn: 90477
|
| |
|
|
| |
llvm-svn: 90474
|
| |
|
|
|
|
| |
end up on the same line.
llvm-svn: 90473
|
| |
|
|
|
|
|
| |
a new virtual function is declared/instantiated. it is used
in couple of places.
llvm-svn: 90470
|
| |
|
|
|
|
| |
old syntax isn't supported.
llvm-svn: 90469
|
| |
|
|
|
|
| |
Also, add a test for generator a C file with a very deep call stack.
llvm-svn: 90468
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
instantiation, to ensure that we mark class template specilizations as
abstract when we need to and perform checking of abstract classes.
Also, move the checking that determines whether we are creating a
variable of abstract class type *after* we check whether the type is
complete. Otherwise, we won't see when we have an abstract class
template specialization that is implicitly instantiated by this
declaration. This is the "something else" that Sebastian had noted
earlier.
llvm-svn: 90467
|
| |
|
|
|
|
| |
in block invocations are invalidated (just like function calls).
llvm-svn: 90466
|
| |
|
|
|
|
| |
need to copy its attributes down to the instantiated class.
llvm-svn: 90463
|
| |
|
|
|
|
| |
RegionStoreManager::RemoveDeadBindings(): only the VarRegions for variables marked with the '__block' annotation should have their lifetime extended by a BlockDataRegion.
llvm-svn: 90462
|
| |
|
|
| |
llvm-svn: 90461
|
| |
|
|
|
|
|
|
|
|
|
| |
temporaries that are within our current evaluation context. That way,
nested evaluation contexts (e.g., within a sizeof() expression) won't
see temporaries from outer contexts. Also, make sure to push a new
evaluation context when instantiating the initializer of a variable;
this may be an unevaluated context or a potentially-evaluated context,
depending on whether it's an in-class initializer or not. Fixes PR5672.
llvm-svn: 90460
|
| |
|
|
| |
llvm-svn: 90459
|
| |
|
|
|
|
| |
Thanks.
llvm-svn: 90458
|
| |
|
|
| |
llvm-svn: 90454
|