| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
presence of `noreturn` calls"
This reverts commit cea84ab93aeb079a358ab1c8aeba6d9140ef8b47.
llvm-svn: 352069
|
| |
|
|
|
|
|
|
|
|
| |
This does *not* implement full SHT_GROUP semantic, yet it is a simple step forward:
Sections within a group are still considered valid, but they do not behave as
specified by the standard in case of garbage collection.
Differential Revision: https://reviews.llvm.org/D56437
llvm-svn: 352068
|
| |
|
|
| |
llvm-svn: 352067
|
| |
|
|
| |
llvm-svn: 352066
|
| |
|
|
|
|
| |
Reported on the NetBSD 8 buildbot.
llvm-svn: 352064
|
| |
|
|
|
|
|
|
| |
This is the most common usage for isUndefInRange,
so make the code slightly less duplicated and more
readable.
llvm-svn: 352063
|
| |
|
|
|
|
| |
Write a couple of variations on vector geps w/both scalars and vectors live over safepoints. Use update_test_checks to show all the IR.
llvm-svn: 352062
|
| |
|
|
|
|
|
|
| |
After submitting https://reviews.llvm.org/D57138, I realized it was slightly more conservative than needed. The scalar indices don't appear to be a problem on a vector gep, we even had a test for that.
Differential Revision: https://reviews.llvm.org/D57161
llvm-svn: 352061
|
| |
|
|
|
|
|
|
|
| |
Fix remaining unittest errors caused by
__attribute__((no_caller_saved_registers))
Related commit which caused the buildbots to fail:
rL352050
llvm-svn: 352060
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This is an alternative to https://reviews.llvm.org/D57103. After discussion, we dedicided to check this in as a temporary workaround, and pursue a true fix under the original thread.
The issue at hand is that the base rewriting algorithm doesn't consider the fact that GEPs can turn a scalar input into a vector of outputs. We had handling for scalar GEPs and fully vector GEPs (i.e. all vector operands), but not the scalar-base + vector-index forms. A true fix here requires treating GEP analogously to extractelement or shufflevector.
This patch is merely a workaround. It simply hides the crash at the cost of some ugly code gen for this presumable very rare pattern.
Differential Revision: https://reviews.llvm.org/D57138
llvm-svn: 352059
|
| |
|
|
|
|
| |
This fixes 'gtest/gtest.h' file not found when building unit tests after r351863.
llvm-svn: 352058
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This tunes several of the default parameters used within the allocator:
- disable the deallocation type mismatch on Android by default; this
was causing too many issues with third party libraries;
- change the default `SizeClassMap` to `Dense`, it caches less entries
and is way more memory efficient overall;
- relax the timing of the RSS checks, 10 times per second was too much,
lower it to 4 times (every 250ms), and update the test so that it
passes with the new default.
Reviewers: eugenis
Reviewed By: eugenis
Subscribers: srhines, delcypher, #sanitizers, llvm-commits
Differential Revision: https://reviews.llvm.org/D57116
llvm-svn: 352057
|
| |
|
|
|
|
|
|
| |
expandFixedPointMul. NFCI.
Match the (much shorter) name used in various legalization methods.
llvm-svn: 352056
|
| |
|
|
|
|
|
| |
Related commit which caused the buildbots to fail:
rL352050
llvm-svn: 352055
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I discovered that in ICC (where this list comes from), that the two
pentium_iii versions were actually identical despite the two different
names (despite them implying a difference). Because of this, they ended
up having identical manglings, which obviously caused problems when used
together.
This patch makes pentium_iii_no_xmm_regs an alias for pentium_iii so
that it can still be used, but has the same meaning as ICC. However, we
still prohibit using the two together which is different (albeit better)
behavior.
Change-Id: I4f3c9a47e48490c81525c8a3d23ed4201921b288
llvm-svn: 352054
|
| |
|
|
| |
llvm-svn: 352053
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D57088
llvm-svn: 352052
|
| |
|
|
| |
llvm-svn: 352051
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
FunctionType::ExtInfo holds such properties of a function which are needed
mostly for code gen. We should not compare these bits when checking for
structural equivalency.
Checking ExtInfo caused false ODR errors during CTU analysis (of tmux).
Reviewers: a_sidorin, a.sidorin, shafik
Subscribers: rnkovacs, dkrupp, Szelethus, cfe-commits
Differential Revision: https://reviews.llvm.org/D53699
llvm-svn: 352050
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Clear the cached file statuses, otherwise we will leave some garbage texts on
the status bar when clangd crashes.
Reviewers: ilya-biryukov
Subscribers: ioeric, MaskRay, jkorous, arphaman, kadircet, cfe-commits
Differential Revision: https://reviews.llvm.org/D56540
llvm-svn: 352049
|
| |
|
|
|
|
| |
https://bugs.llvm.org/show_bug.cgi?id=40434
llvm-svn: 352048
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to an incomplete type.
When attempting to correct a misspelled pseudo destructor call as in:
struct Foo;
void foo(Foo *p) {
p.~Foo();
}
a call is made in canRecoverDotPseudoDestructorCallsOnPointerObjects
to LookupDestructor without checking that the record has a definition.
This causes an assertion later in LookupSpecialMember which assumes that
the record has a definition.
Patch By Roman Zhikharevich!
Differential Revision: https://reviews.llvm.org/D57111
Reviewed By: riccibruno
llvm-svn: 352047
|
| |
|
|
| |
llvm-svn: 352046
|
| |
|
|
|
|
| |
Added x86 scalar sadd_with_overflow/ssub_with_overflow costs.
llvm-svn: 352045
|
| |
|
|
|
|
|
|
| |
Add generic costs calculation for UADDSAT/USUBSAT intrinsics, this fallbacks to using generic costs for uadd_with_overflow/usub_with_overflow + a select.
Differential Revision: https://reviews.llvm.org/D56907
llvm-svn: 352044
|
| |
|
|
|
|
|
|
| |
Added x86 scalar uadd_with_overflow/usub_with_overflow costs.
Differential Revision: https://reviews.llvm.org/D56907
llvm-svn: 352043
|
| |
|
|
| |
llvm-svn: 352042
|
| |
|
|
|
|
|
|
|
| |
This reverts commit a6982414edf315c39ae93f3c3322476217119e99 (llvm-svn: 352036),
because it causes a memory leak in the pass manager. Failing bot
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-bootstrap/builds/10351/steps/check-llvm%20asan/logs/stdio
llvm-svn: 352041
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: kadircet
Reviewed By: kadircet
Subscribers: ioeric, MaskRay, jkorous, arphaman, cfe-commits
Differential Revision: https://reviews.llvm.org/D57093
llvm-svn: 352040
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The file contents could be of str type. Should use byte length instead
of str length, otherwise utf-8 encoded files may not get properly parsed
for completion.
Source issue: https://github.com/ncm2/ncm2-pyclang#2
Commited on behalf of `roxma'
Differential Revision: https://reviews.llvm.org/D56429
llvm-svn: 352039
|
| |
|
|
|
|
|
|
|
| |
Select zero extending and sign extending load for MIPS32.
Use size from MachineMemOperand to determine number of bytes to load.
Differential Revision: https://reviews.llvm.org/D57099
llvm-svn: 352038
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use CombinerHelper to combine extending load instructions.
G_LOAD combined with G_ZEXT, G_SEXT or G_ANYEXT gives G_ZEXTLOAD,
G_SEXTLOAD or G_LOAD with same type as def of extending instruction
respectively.
Similarly G_ZEXTLOAD combined with G_ZEXT gives G_ZEXTLOAD and
G_SEXTLOAD combined with G_SEXT gives G_SEXTLOAD with same type
as def of extending instruction.
Differential Revision: https://reviews.llvm.org/D56914
llvm-svn: 352037
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of manually computing DT and PDT, we can get the from the pass
manager, which ideally has them already cached. With the new pass
manager, we could even preserve DT/PDT on a per function basis in a
module pass.
I think this also addresses the TODO about re-using the computed DTs for
BFI. IIUC, GetBFI will fetch the DT from the pass manager and when we
will fetch the cached version later.
Reviewers: vsk, hiraditya, tejohnson, thegameg, sebpop
Reviewed By: vsk
Differential Revision: https://reviews.llvm.org/D57092
llvm-svn: 352036
|
| |
|
|
| |
llvm-svn: 352035
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reapplies commit r351987 with a failed test fix. Now the test
accepts both DW_OP_GNU_push_tls_address and DW_OP_form_tls_address
opcode.
Original commit message:
```
This is a fix for a regression introduced by the rL348194 commit. In
that change new type (MEK_DTPREL) of MipsMCExpr expression was added,
but in some places of the code this type of expression considered as
unexpected.
This change fixes the bug. The MEK_DTPREL type of expression is used for
marking TLS DIEExpr only and contains a regular sub-expression. Where we
need to handle the expression, we retrieve the sub-expression and
handle it in a common way.
```
llvm-svn: 352034
|
| |
|
|
| |
llvm-svn: 352033
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D56485.
llvm-svn: 352032
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Seems the previous statement does not hold up anymore.
Reviewers: steveire
Reviewed By: steveire
Differential Revision: https://reviews.llvm.org/D57102
llvm-svn: 352031
|
| |
|
|
|
|
|
|
| |
After creating new PHI instructions during isel pseudo expansion, the NoPHIs
property of MF should be reset in case it was previously set.
Review: Ulrich Weigand
llvm-svn: 352030
|
| |
|
|
|
|
| |
flag for masked loads. Add truncating and compressing for masked stores.
llvm-svn: 352029
|
| |
|
|
|
|
| |
into a truncating masked store.
llvm-svn: 352027
|
| |
|
|
| |
llvm-svn: 352026
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Generate DILabel metadata and call llvm.dbg.label after label
statement to associate the metadata with the label.
After fixing PR37395.
After fixing problems in LiveDebugVariables.
After fixing NULL symbol problems in AddressPool when enabling
split-dwarf-file.
After fixing PR39094.
After landing D54199 and D54465 to fix Chromium build failed.
Differential Revision: https://reviews.llvm.org/D45045
llvm-svn: 352025
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When we choose whether or not we should mark block as dead, we have an
inconsistent logic in markup of live blocks.
- We take candidate IF its terminator branches on constant AND it is immediately
in current loop;
- We mark successor live IF its terminator doesn't branch by constant OR it branches
by constant and the successor is its always taken block.
What we are missing here is that when the terminator branches on a constant but is
not taken as a candidate because is it not immediately in the current loop, we will
mark only one (always taken) successor as live. Therefore, we do NOT do the actual
folding but may NOT mark one of the successors as live. So the result of markup is
wrong in this case, and we may then hit various asserts.
Thanks Jordan Rupprech for reporting this!
Differential Revision: https://reviews.llvm.org/D57095
Reviewed By: rupprecht
llvm-svn: 352024
|
| |
|
|
| |
llvm-svn: 352023
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This addresses the issues raised in D56844. It removes the accessors from the
breakpad record structures by making the fields public. Also, I refactor the
UUID parsing code to remove hard-coded constants.
Reviewers: lemo
Subscribers: clayborg, lldb-commits
Differential Revision: https://reviews.llvm.org/D57037
llvm-svn: 352021
|
| |
|
|
| |
llvm-svn: 352020
|
| |
|
|
|
|
|
|
|
| |
reading/editing
Recommits 350048, 350050 That broke buildbots because of some typos in
the test case.
llvm-svn: 352019
|
| |
|
|
|
|
|
|
| |
Similarly to libc++, we want to use hermetic static libc++abi.
Differential Revision: https://reviews.llvm.org/D57136
llvm-svn: 352018
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This is useful when the static libc++abi library is being linked into
shared libraries that may be used in with other shared libraries that
use different C++ library. We want to avoid avoid exporting libc++abi
or libc++ symbols in those cases. This achieved by a new CMake option
which can be enabled by libc++abi vendors as needed.
Differential Revision: https://reviews.llvm.org/D56026
llvm-svn: 352017
|