| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
Simplify RALinScan::DowngradeRegister with TRI::getOverlaps while we are there.
llvm-svn: 122940
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This pass precomputes CFG block frequency information that can be used by the
register allocator to find optimal spill code placement.
Given an interference pattern, placeSpills() will compute which basic blocks
should have the current variable enter or exit in a register, and which blocks
prefer the stack.
The algorithm is ready to consume block frequencies from profiling data, but for
now it gets by with the static estimates used for spill weights.
This is a work in progress and still not hooked up to RegAllocGreedy.
llvm-svn: 122938
|
|
|
|
| |
llvm-svn: 122937
|
|
|
|
|
|
|
|
| |
up freebsd bootloader. However, this doesn't make much sense for Darwin, whose
-Os is meant to optimize for size only if it doesn't hurt performance.
rdar://8821501
llvm-svn: 122936
|
|
|
|
|
|
|
| |
the original type of the switch statement key.
rdar://8781238
llvm-svn: 122935
|
|
|
|
|
|
|
| |
works only on MinGW32. On 64-bit, the function to call is "__chkstk".
Patch by KS Sreeram!
llvm-svn: 122934
|
|
|
|
|
|
|
|
| |
beginning of the "main" function. The assembler complains about the invalid
suffix for the 'call' instruction. The right instruction is "callq __main".
Patch by KS Sreeram!
llvm-svn: 122933
|
|
|
|
|
|
| |
worklist, the key will need to become std::pair<BasicBlock*, Value*>.
llvm-svn: 122932
|
|
|
|
|
|
|
|
|
|
| |
initialize *all* of the bits to zero. Also, when the pattern of a
template argument pack expansion, make sure to set the ellipsis
location along all paths.
This should clear up the valgrind failure that popped up in Clang.
llvm-svn: 122931
|
|
|
|
|
|
| |
number string as found in the resources/LLDB-info.plist file.
llvm-svn: 122930
|
|
|
|
| |
llvm-svn: 122929
|
|
|
|
|
|
| |
compares two parameter-type-lists. No functionality change.
llvm-svn: 122928
|
|
|
|
|
|
|
|
| |
TypeSourceInfo when transforming a function parameter. The callees of
this routine already assume that TypeSourceInfo will be present, and
we want to always be sure that it exists.
llvm-svn: 122927
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) Declaration of function parameter packs
2) Instantiation of function parameter packs within function types.
3) Template argument deduction of function parameter packs when
matching two function types.
We're missing all of the important template-instantiation logic for
function template definitions, along with template argument deduction
from the argument list of a function call, so don't even think of
trying to use these for real yet.
llvm-svn: 122926
|
|
|
|
|
|
|
|
|
| |
r1025 = s/zext r1024, 4
r1026 = extract_subreg r1025, 4
to:
r1026 = copy r1024
llvm-svn: 122925
|
|
|
|
|
|
| |
parameter-type-list
llvm-svn: 122924
|
|
|
|
|
|
| |
property when it is 'readonly'. // rdar://8820813
llvm-svn: 122923
|
|
|
|
|
|
| |
previously added ordinal number of the currently running test case.
llvm-svn: 122922
|
|
|
|
| |
llvm-svn: 122921
|
|
|
|
| |
llvm-svn: 122920
|
|
|
|
|
|
| |
calculated.
llvm-svn: 122912
|
|
|
|
| |
llvm-svn: 122911
|
|
|
|
| |
llvm-svn: 122909
|
|
|
|
|
|
|
|
| |
compute the value range
in the predecessor block, leading to an incorrect conclusion for the edge value. Found by inspection.
llvm-svn: 122908
|
|
|
|
|
|
|
|
|
|
| |
My i386 llvm-gcc nightly tester found a regression for
SingleSource/Benchmarks/McGill/chomp that a bisect blamed on 122743.
That seems strange but apparently the combination of earlycse and instcombine
did something bad. Chris says he intended to remove the instcombine pass, so
let's go ahead and try that. We'll see if there are any performance losses.
llvm-svn: 122907
|
|
|
|
|
|
|
|
|
| |
fix the issue in
hasBlockValue() that was causing iterator invalidations. Many thanks to Dimitry Andric for
tracking down those invalidations!
llvm-svn: 122906
|
|
|
|
| |
llvm-svn: 122905
|
|
|
|
|
|
|
|
| |
parameter packs, along with ParmVarDecl::isParameterPack(), which
looks for function parameter packs. Use these routines to fix some
obvious FIXMEs.
llvm-svn: 122904
|
|
|
|
|
|
| |
template argument packs. Plus, remove a FIXME that I fixed yesterday.
llvm-svn: 122903
|
|
|
|
|
|
|
| |
corresponding template parameter, make sure that prior converted
template arguments are available for substitution.
llvm-svn: 122902
|
|
|
|
|
|
| |
describing the ordinal number of the currently running test case.
llvm-svn: 122901
|
|
|
|
| |
llvm-svn: 122900
|
|
|
|
|
|
|
| |
for template template argument pack expansions (which was no longer
used) and another that was a placeholder for an llvm_unreachable.
llvm-svn: 122898
|
|
|
|
|
|
| |
at debugserver-124.
llvm-svn: 122897
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
expansions with something that is easier to use correctly: a new
template argment kind, rather than a bit on an existing kind. Update
all of the switch statements that deal with template arguments, fixing
a few latent bugs in the process. I"m happy with this representation,
now.
And, oh look! Template instantiation and deduction work for template
template argument pack expansions.
llvm-svn: 122896
|
|
|
|
|
|
|
| |
Fixed the display of complex numbers in lldb_private::DataExtractor::Dump(...)
and also fixed other edge display cases in lldb_private::ClangASTType::DumpTypeValue(...).
llvm-svn: 122895
|
|
|
|
| |
llvm-svn: 122894
|
|
|
|
| |
llvm-svn: 122893
|
|
|
|
| |
llvm-svn: 122891
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
for template template argument pack expansions. This allows fun such
as:
template<template<class> class ...> struct apply_impl { /*...*/ };
template<template<class> class ...Metafunctions> struct apply {
typedef typename apply_impl<Metafunctions...>::type type;
};
However, neither template argument deduction nor template
instantiation is implemented for template template argument packs, so
this functionality isn't useful yet.
I'll probably replace the encoding of template template
argument pack expansions in TemplateArgument so that it's harder to
accidentally forget about the expansion. However, this is a step in
the right general direction.
llvm-svn: 122890
|
|
|
|
|
|
| |
by overriding TargetFrameInfo::getFrameIndexOffset to take into account the new frame index information.
llvm-svn: 122889
|
|
|
|
|
|
| |
implemented, however.
llvm-svn: 122888
|
|
|
|
|
|
| |
regressing code quality.
llvm-svn: 122887
|
|
|
|
| |
llvm-svn: 122886
|
|
|
|
|
|
| |
code.
llvm-svn: 122885
|
|
|
|
| |
llvm-svn: 122884
|
|
|
|
| |
llvm-svn: 122883
|
|
|
|
| |
llvm-svn: 122882
|
|
|
|
| |
llvm-svn: 122881
|
|
|
|
|
|
| |
entities easier.
llvm-svn: 122880
|