| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
files. NFC.
llvm-svn: 299947
|
| |
|
|
|
|
|
|
| |
https://reviews.llvm.org/D31875
Patch by Leslie Zhai!
llvm-svn: 299946
|
| |
|
|
|
|
|
|
|
| |
Refactor the USAT, SSAT, USAT16 and SSAT16 instruction descriptions
for Thumb2.
Differential Revision: https://reviews.llvm.org/D31933
llvm-svn: 299945
|
| |
|
|
|
|
| |
Turn GVNHoist back on by default now that PR32153 has been fixed.
llvm-svn: 299944
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
FAILED: lib/sanitizer_common/CMakeFiles/RTSanitizerCommon.arm.dir/sanitizer_linux.cc.o
lib/sanitizer_common/sanitizer_linux.cc:1340:24: error: invalid instruction
BLX(ip)
^
lib/sanitizer_common/sanitizer_linux.cc:1313:19: note: expanded from macro 'BLX'
# define BLX(R) "mov lr, pc; bx" #R "\n"
^
<inline asm>:6:13: note: instantiated into assembly here
mov lr, pc; bxip
^~~~
llvm-svn: 299943
|
| |
|
|
| |
llvm-svn: 299942
|
| |
|
|
| |
llvm-svn: 299941
|
| |
|
|
|
|
|
|
|
|
|
|
| |
to be disabled when COMPILER_RT_BUILD_SANITIZERS=OFF and/or COMPILER_RT_BUILD_XRAY=OFF.
Reviewer: dberris
Subscribers: dberris, mgorny, llvm-commits, clm
Differential Revision: https://reviews.llvm.org/D31864
llvm-svn: 299940
|
| |
|
|
| |
llvm-svn: 299939
|
| |
|
|
| |
llvm-svn: 299938
|
| |
|
|
| |
llvm-svn: 299937
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
In rL299692 I improved strip-dead-debug-info's ability to drop CUs that are not
referenced from the current module. However, in doing so I neglected to realize
that some SPs could be referenced entirely from inlined functions. It appears
I was not the only one to make this mistake, because DebugInfoFinder, doesn't
find those SPs either. Fix this in DebugInfoFinder and then use that to make
sure not to drop those CUs in strip-dead-debug-info.
Reviewers: aprantl
Reviewed By: aprantl
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D31904
llvm-svn: 299936
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: The patch implements the conversion method from CXCursorKind to clangd::CompletionItemKind.
Contributed by stanionascu!
Reviewers: cfe-commits, bkramer, krasimir
Reviewed By: krasimir
Tags: #clang-tools-extra
Differential Revision: https://reviews.llvm.org/D31853
llvm-svn: 299935
|
| |
|
|
| |
llvm-svn: 299934
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The files there can always be referred to using their full path, which
is what most of the code has been doing already, so this makes the
situation more consistent. Also fix the the code in the FreeBSD plugin
to use the new paths.
Reviewers: eugene, emaste
Subscribers: lldb-commits, kettenis, mgorny, krytarowski
Differential Revision: https://reviews.llvm.org/D31877
llvm-svn: 299933
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D31899
llvm-svn: 299932
|
| |
|
|
|
|
|
|
|
| |
Use the same handling in the generic legalizer code as for the other
libcalls (G_FREM, G_FPOW).
Enable it on ARM for float and double so we can test it.
llvm-svn: 299931
|
| |
|
|
|
|
| |
Reviewed by Richard Smith (D29877)!
llvm-svn: 299930
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Legalize only if the type is marked as Legal or Custom. If not, return Unsupported as LegalizerHelper is not able to handle non-power-of-2 types right now.
Reviewers: qcolombet, aditya_nandakumar, dsanders, t.p.northover, kristof.beyls, javed.absar, ab
Reviewed By: kristof.beyls, ab
Subscribers: dberris, rovka, igorb, llvm-commits
Differential Revision: https://reviews.llvm.org/D31711
llvm-svn: 299929
|
| |
|
|
|
|
|
| |
This reverts commit r299925 because it broke the buildbots. See e.g.
http://lab.llvm.org:8011/builders/clang-cmake-armv7-a15/builds/6008
llvm-svn: 299928
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This fixes a few outstanding bugs:
* incorrect breaking of NSString literals containing double-width characters;
* inconsistent formatting of ObjC dictionary literals containing NSString
literals;
* AlwaysBreakBeforeMultilineStrings ignoring implicitly-concatenated NSString
literals.
Reviewers: djasper
Reviewed By: djasper
Subscribers: klimek, cfe-commits
Differential Revision: https://reviews.llvm.org/D31706
llvm-svn: 299927
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A fix for the bug reported in PR30911.
The issue arises when multiple CALLSEQ_BEGIN nodes are unscheduled as
the last node to be unscheduled will gain access to the CallResource
register. But when a node is being picked, only CALLSEQ_END nodes are
checked against the CallResource and have their chains evaluated.
This then means that other CALLSEQ_BEGIN nodes can be scheduled
before the existing call sequence has been finalised. This patch adds
a check against the FrameSetup nodes in DelayForLiveRegs to prevent
this from happening.
Differential Revision: https://reviews.llvm.org/D31536
llvm-svn: 299926
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Module::getOrInsertFunction is using C-style vararg instead of
variadic templates.
From a user prospective, it forces the use of an annoying nullptr
to mark the end of the vararg, and there's not type checking on the
arguments. The variadic template is an obvious solution to both
issues.
llvm-svn: 299925
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: Fix coverity cid 1374240
Reviewers: dberlin
Reviewed By: dberlin
Differential Revision: https://reviews.llvm.org/D31928
llvm-svn: 299924
|
| |
|
|
|
|
|
|
| |
This patch enables LSan for arm Linux.
Differential Revision: https://reviews.llvm.org/D29586
llvm-svn: 299923
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
xray_fdr_logging.cc
Previously in r297800, a work-around was created to use TSC emulation on x86_64 when RDTSCP was not available on the host. A similar change was needed in the file xray_fdr_logging.cc which this patch ports over to that file.
Eventually the code should be refactored as there will be 3 locations with the same code, but that can be done as a separate step. This patch is just to keep the test from failing on my machine due to an illegal instruction since RDTSCP is not available on my x86_64 linux VM.
Reviewers: dberris
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D31909
llvm-svn: 299922
|
| |
|
|
|
|
|
|
| |
This is a compiler part of https://reviews.llvm.org/D29586. Enable LSan on arm Linux.
Differential Revision: https://reviews.llvm.org/D31760
llvm-svn: 299921
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: alexfh
Reviewed By: alexfh
Subscribers: cfe-commits
Tags: #clang-tools-extra
Differential Revision: https://reviews.llvm.org/D31860
llvm-svn: 299920
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: djasper
Reviewed By: djasper
Subscribers: Eugene.Zelenko, klimek, cfe-commits
Differential Revision: https://reviews.llvm.org/D31408
llvm-svn: 299919
|
| |
|
|
| |
llvm-svn: 299918
|
| |
|
|
|
|
| |
if all the elements are Undef or ConstantInt.
llvm-svn: 299917
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We can move this functionality into LLVM's tools instead, as it no
longer is strictly required for the compiler-rt testing infrastructure.
It also is blocking the successful bootstrapping of the clang compiler
due to a missing virtual destructor in one of the flag parsing library.
Since this binary isn't critical for the XRay runtime testing effort
anymore (yet), we remove it in the meantime with the hope of moving the
functionality in LLVM proper instead.
Reviewers: kpw, pelikan, rnk, seurer, eugenis
Subscribers: llvm-commits, mgorny
Differential Revision: https://reviews.llvm.org/D31926
llvm-svn: 299916
|
| |
|
|
| |
llvm-svn: 299915
|
| |
|
|
|
| |
Suggested-by: Roman Gareev <gareevroman@gmail.com>
llvm-svn: 299914
|
| |
|
|
| |
llvm-svn: 299913
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(h/t to Chandler for pointing this out)
The test in question was not at all testing what it was supposed to
test. We do not //care// about placing `!make.implicit` in inner
constant branch (since it will be folded away anyway). We care about
placing `!make.implicit` in the outer branch that switches between
either version of the loop.
Having said that, it is _correct_ to leave behind the `!make.implicit`
in the inner branch, but there is no need to do so.
llvm-svn: 299912
|
| |
|
|
|
|
|
|
|
|
|
| |
When allowed, we can hoist a division out of a loop in favor of a
multiplication by the reciprocal. Fixes PR32157.
Patch by vit9696!
Differential Revision: https://reviews.llvm.org/D30819
llvm-svn: 299911
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Check the legality of ISD::[US]MULO to see whether
Intrinsic::[us]mul_with_overflow will legalize into a function call (and, thus,
will use the CTR register). Fixes PR32485.
Patch by Tim Neumann!
Differential Revision: https://reviews.llvm.org/D31790
llvm-svn: 299910
|
| |
|
|
| |
llvm-svn: 299909
|
| |
|
|
|
|
|
|
| |
We were removing comdats from externalized functions (function declarations
can't be comdat), but were not doing the same for variable. Failure to do this
would cause bugpoint to fail ("Declaration may not be in a Comdat!").
llvm-svn: 299908
|
| |
|
|
| |
llvm-svn: 299907
|
| |
|
|
| |
llvm-svn: 299906
|
| |
|
|
| |
llvm-svn: 299905
|
| |
|
|
|
|
|
|
|
|
| |
have >1 value."
It's not ready yet this was an accidental commit :(
This reverts r299903
llvm-svn: 299904
|
| |
|
|
|
|
|
|
| |
value.
Fixes PR 32607.
llvm-svn: 299903
|
| |
|
|
|
|
|
|
|
| |
function call optimization".
The former term is probably more familiar to users. Also add references to
the command line flags used to enable the features described in the doc.
llvm-svn: 299902
|
| |
|
|
| |
llvm-svn: 299901
|
| |
|
|
|
|
|
|
|
|
|
| |
The getter was equivalent to AttributeList::getAttributes(unsigned),
which seems like a better way to express getting the AttributeSet for a
given index. This static helper was only used in one place anyway.
The constructor doesn't benefit from inlining and doesn't need to be in
a header.
llvm-svn: 299900
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This re-lands r299875.
I introduced a bug in Clang code responsible for replacing K&R, no
prototype declarations with a real function definition with a prototype.
The bug was here:
// Collect any return attributes from the call.
- if (oldAttrs.hasAttributes(llvm::AttributeList::ReturnIndex))
- newAttrs.push_back(llvm::AttributeList::get(newFn->getContext(),
- oldAttrs.getRetAttributes()));
+ newAttrs.push_back(oldAttrs.getRetAttributes());
Previously getRetAttributes() carried AttributeList::ReturnIndex in its
AttributeList. Now that we return the AttributeSetNode* directly, it no
longer carries that index, and we call this overload with a single node:
AttributeList::get(LLVMContext&, ArrayRef<AttributeSetNode*>)
That aborted with an assertion on x86_32 targets. I added an explicit
triple to the test and added CHECKs to help find issues like this in the
future sooner.
llvm-svn: 299899
|
| |
|
|
| |
llvm-svn: 299898
|