| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
| |
-Wrange-loop-analysis is a subgroup of -Wloop-analysis and will warn when
a range-based for-loop makes copies of the elements in the range. If possible,
suggest the proper type to prevent copies, or the non-reference to help
distinguish copy versus non-copy forms. Existing warnings in -Wloop-analysis
are moved to -Wfor-loop-analysis, also a subgroup of -Wloop-analysis.
Differential Revision: http://reviews.llvm.org/D4169
llvm-svn: 234804
|
| |
|
|
|
|
| |
TestGdbRemoteRegisterState.test_grp_register_save_restore_works_no_suffix_debugserver_dsym test on OS X according to the bug 23181
llvm-svn: 234803
|
| |
|
|
|
|
|
|
|
|
| |
This is almost NFC, but I'm removing some assertions against `nullptr`.
The assertions aren't worth all that much since we'll typically get
segfaults at the same site (and I imagine ASan catches this sort of
thing), and besides: the whole idea is to replace the `DIDescriptor`
hierarchy with raw pointers to the new one.
llvm-svn: 234802
|
| |
|
|
| |
llvm-svn: 234801
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of calling the somewhat confusingly-named
`DIVariable::isInlinedFnArgument()`, do the check directly here.
There's possibly a small functionality change here: instead of
`dyn_cast<>`'ing `DV->getScope()` to `MDSubprogram`, I'm looking up the
scope chain for the actual subprogram. I suspect that this is a no-op
for function arguments so in practise there isn't a real difference.
I've also added a `FIXME` to check the `inlinedAt:` chain instead, since
I wonder if that would be more reliable than the
`MDSubprogram::describes()` function.
Since this was the only user of `DIVariable::isInlinedFnArgument()`,
delete it.
llvm-svn: 234799
|
| |
|
|
|
|
| |
an option to export all symbols.
llvm-svn: 234798
|
| |
|
|
| |
llvm-svn: 234797
|
| |
|
|
|
|
|
|
| |
`DIGlobalVariable::getGlobal()` isn't really helpful, it just does a
`dyn_cast_or_null<>`. Simplify its only user by doing the cast directly
and delete the code.
llvm-svn: 234796
|
| |
|
|
| |
llvm-svn: 234795
|
| |
|
|
|
|
| |
windows yet.
llvm-svn: 234794
|
| |
|
|
| |
llvm-svn: 234793
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The only difference between the two is a `dyn_cast<>` to
`GlobalVariable`. If optimizations have left anything behind when a
global gets replaced, then it doesn't seem like the debug info is dead.
I can't seem to find an optimization that would leave behind a
non-`GlobalVariable` without nulling the reference entirely, so I
haven't added a testcase (but I'll be deleting `getGlobal()` in a future
commit).
llvm-svn: 234792
|
| |
|
|
| |
llvm-svn: 234791
|
| |
|
|
| |
llvm-svn: 234790
|
| |
|
|
| |
llvm-svn: 234789
|
| |
|
|
|
|
| |
[-Werror=attributes]". Very well then! NFC
llvm-svn: 234788
|
| |
|
|
| |
llvm-svn: 234787
|
| |
|
|
| |
llvm-svn: 234786
|
| |
|
|
|
|
| |
Use early-return style that's preferred in LLVM and updating the naming in places I touched with other changes in the last few days. Hopefully, NFC.
llvm-svn: 234785
|
| |
|
|
| |
llvm-svn: 234784
|
| |
|
|
| |
llvm-svn: 234783
|
| |
|
|
|
|
|
| |
Other accessors assume this already; not sure how `replaceFunction()`
got left behind.
llvm-svn: 234782
|
| |
|
|
| |
llvm-svn: 234781
|
| |
|
|
| |
llvm-svn: 234780
|
| |
|
|
|
|
| |
We use dummy calls to adjust the liveness of values over statepoints in the midst of the insertion. If there are no values which need held live, there's no point in actually inserting the holder.
llvm-svn: 234779
|
| |
|
|
|
|
|
|
| |
I don't really like this function at all -- I think it should be as
simple as `return getFunction() == F` -- but for now this seems like the
best we can do.
llvm-svn: 234778
|
| |
|
|
| |
llvm-svn: 234777
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit r234717, reapplying r234698 (in spirit).
As described in r234717, the original `Verifier` check had a
use-after-free. Instead of storing pointers to "interesting" debug info
intrinsics whose bit piece expressions should be verified once we have
typerefs, do a second traversal. I've added a testcase to catch the
`llc` crasher.
Original commit message:
Verifier: Check for incompatible bit piece expressions
Convert an assertion into a `Verifier` check. Bit piece expressions
must fit inside the variable, and mustn't be the entire variable.
Catching this in the verifier will help us find bugs sooner, and makes
`DIVariable::getSizeInBits()` dead code.
llvm-svn: 234776
|
| |
|
|
|
|
| |
the generation reacts to affinity set to none, or disabled, or no affinity available, or oversubscription. Some cleanup actions based on review comments to follow: need to use meaningful names instead of digital constants, e.g. use enumerators.
llvm-svn: 234775
|
| |
|
|
| |
llvm-svn: 234774
|
| |
|
|
|
|
|
|
| |
target-cpu and target-features attribute strings as the caller.
Differential Revision: http://reviews.llvm.org/D8984
llvm-svn: 234773
|
| |
|
|
| |
llvm-svn: 234772
|
| |
|
|
| |
llvm-svn: 234771
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
`-lpthread` was removed for `g++ -std=c++11` on Linux due to llvm.org/pr21553,
but the original issue doesn't seem to be reproducible anymore. Even if it were,
it had nothing to do with compiling inferiors.
Reviewers: sbest, sivachandra, chying
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D8991
llvm-svn: 234770
|
| |
|
|
|
|
|
|
|
|
| |
statepoint [NFC]
Since we're restructuring the CFG, we also need to make sure to update the analsis passes. While I'm touching the code, I dedicided to restructure it a bit. The code involved here was very confusing. This change moves the normalization to essentially being a pre-pass before the main insertion work and updates a few comments to actually say what is happening and *why*.
The restructuring should be covered by existing tests. I couldn't easily see how to create a test for the invalidation bug. Suggestions welcome.
llvm-svn: 234769
|
| |
|
|
|
|
|
|
|
|
|
| |
Revert "Remove default in fully-covered switch (to fix Clang -Werror -Wcovered-switch-default)"
Revert "R600: Add carry and borrow instructions. Use them to implement UADDO/USUBO"
Revert "LegalizeDAG: Try to use Overflow operations when expanding ADD/SUB"
Using overflow operations fails CodeGen/Generic/2011-07-07-ScheduleDAGCrash.ll
on hexagon, nvptx, and r600. Revert while I investigate.
llvm-svn: 234768
|
| |
|
|
|
|
| |
Patch by Yunzhong Gao!
llvm-svn: 234767
|
| |
|
|
|
|
| |
This is related to the issues addressed in 234651. These assertions check the properties ensured by that change at the place of use. Note that a similiar property is checked in checkBasicSSA, but without the reachability constraint. Technically, the liveness would be correct to include unreachable values, but this would be problematic for actual relocation.
llvm-svn: 234766
|
| |
|
|
| |
llvm-svn: 234765
|
| |
|
|
| |
llvm-svn: 234764
|
| |
|
|
|
|
|
|
|
| |
In case of different types used for the condition of the selects the
select(select) -> select(and) normalisation cannot be performed.
See also: http://reviews.llvm.org/D7622
llvm-svn: 234763
|
| |
|
|
|
|
| |
Patch by Loïc Jaquemet!
llvm-svn: 234762
|
| |
|
|
|
|
|
|
|
|
| |
The check in question is attempting to help find cases where we haven't relocated a pointer at a safepoint we should have. It does this by coercing the value to null at any safepoint which doesn't relocate it.
Unfortunately, this turns out to be rather expensive in terms of memory usage and time. The number of stores inserted can grow with O(number of values x number of statepoints). On at least one example I looked at, over half of peak memory usage was coming from this check.
With this change, the check is no longer enabled by default in Asserts builds. It is enabled for expensive asserts builds and has a command line option to enable it in both Asserts and non-Asserts builds.
llvm-svn: 234761
|
| |
|
|
|
|
| |
-Wcovered-switch-default)
llvm-svn: 234760
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
v2: tighten the sub64 tests
v3: rename to CARRY/BORROW
v4: fixup test cmdline
add known bits computation
use sign extend instead of sub 0,x
better add test
v5: remove redundant break
move lowering to separate functions
fix comments
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Reviewers: arsenm
llvm-svn: 234759
|
| |
|
|
|
|
|
|
|
|
| |
Patch by Chilledheart (rwindz0@gmail.com).
Reviewed By: rafael
Differential Revision: http://reviews.llvm.org/D8773
llvm-svn: 234758
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The document is still incomplete in some degrees, but updated to reflect the
latest changes. Anyway we can detail it if any one think it is not enough. For
the sake of it, some useful examples are listed below:
Refer to r113618 "Add X86 MMX type to bitcode and Type" for how to add a new
type.
> One notable change from then is only one thing that ``lib/VMCore`` is renamed
to ``lib/IR``.
Refer to r194760 "Add addrspacecast instruction" for how to add a new
instruction.
Patch by Chilledheart (rwindz0@gmail.com).
Reviewed By: echristo
Differential Revision: http://reviews.llvm.org/D8897
llvm-svn: 234757
|
| |
|
|
|
|
|
| |
This is a follow-up to r234728 and r234729. It looks like explicit
instantiation of `MipsELFFile` is redundant and triggers Visual C++ warning.
llvm-svn: 234756
|
| |
|
|
|
|
|
|
|
|
| |
v2: consider BooleanContents when processing overflow
Signed-off-by: Jan Vesely <jan.vesely@rutgers.edu>
Reviewers: resistor, jholewinsky (nvidia parts)
Differential Revision: http://reviews.llvm.org/D6340
llvm-svn: 234755
|
| |
|
|
|
|
| |
Patch by Martin Probst.
llvm-svn: 234754
|