| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
Hopefully this unbreaks the bots.
llvm-svn: 304865
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This creates a new library called BinaryFormat that has all of
the headers from llvm/Support containing structure and layout
definitions for various types of binary formats like dwarf, coff,
elf, etc as well as the code for identifying a file from its
magic.
Differential Revision: https://reviews.llvm.org/D33843
llvm-svn: 304864
|
| |
|
|
|
|
| |
clang::ExternalASTSource::CompleteType(clang::ObjCInterfaceDecl*)' was hidden.
llvm-svn: 304863
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
RecursiveASTVisitor was not properly recursing through a
SubstTemplateTypeParmTypes, resulting in crashes in pack expansion where we
couldn't always find an unexpanded pack within a pack expansion.
We also have an issue where substitution of deduced template arguments for an
implicit deduction guide creates the "impossible" case of naming a
non-dependent member of the current instantiation, but within a specialization
that is actually instantiated from a different (partial/explicit)
specialization of the template. We resolve this by declaring that constructors
that do so can only be used to deduce specializations of the primary template.
I'm running this past CWG to see if people agree this is the right thing to do.
llvm-svn: 304862
|
| |
|
|
|
|
| |
This now just requires not calling assignOffsets after it.
llvm-svn: 304861
|
| |
|
|
|
|
|
|
| |
Before this patch in -r we compute the OutputSection sizes early in
the various calls to assignOffsets. With this change we can remove
most of those calls.
llvm-svn: 304860
|
| |
|
|
|
|
|
|
| |
The WebAssembly threads proposal has changed such that C++
implementations can now declare that atomics up to 64 bits are
"lock free" in C++'s terms.
llvm-svn: 304859
|
| |
|
|
|
|
|
|
|
|
| |
GNU version of strerror_r returns a result pointer that doesn't match the input
buffer. The result pointer is in fact a pointer to some internal storage.
TSAN was recording a write to this location, which was incorrect.
Fixed https://github.com/google/sanitizers/issues/696
llvm-svn: 304858
|
| |
|
|
|
|
| |
exact call was made in the if above and we already know it returned true. NFC
llvm-svn: 304857
|
| |
|
|
|
|
| |
same code. NFC
llvm-svn: 304856
|
| |
|
|
|
|
| |
take advantage of APInt optimizations. NFC
llvm-svn: 304855
|
| |
|
|
|
|
|
|
|
|
| |
using getActiveBits/countLeadingZeros
Previously you would have to use operator==(uint64_t) which does the getActiveBits call and a uint64_t comparison. But we can get all we need to know from the getActiveBits call.
This method will be used in another commit.
llvm-svn: 304854
|
| |
|
|
|
|
|
|
| |
Builds sucessfully with Sphinx v1.5.5
Differential Revision: https://reviews.llvm.org/D33736
llvm-svn: 304853
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
template is valid with or without it (with different meanings).
If we see "dependent.x<...", and what follows the '<' is a valid expression,
we must parse the '<' as a comparison rather than a template angle bracket.
When we later come to instantiate, if we find that the LHS of the '<' actually
names an overload set containing function templates, produce a diagnostic
suggesting that the 'template' keyword was missed rather than producing a
mysterious diagnostic saying that the function must be called (and pointing
at what looks to already be a function call!).
llvm-svn: 304852
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
in llvm/test/Transforms/Util/PredicateInfo/
A few tests in llvm/test/Transforms/Util/PredicateInfo/ are using -reverse-iterate.
The option -reverse-iterate is enabled with +Asserts in usual cases, but it can be turned on/off regardless of LLVM_ENABLE_ASSERTIONS.
I wonder if this were incompatible to https://reviews.llvm.org/D33908 (r304757).
Differential Revision: https://reviews.llvm.org/D33854
llvm-svn: 304851
|
| |
|
|
|
|
|
| |
Spills of undef values shouldn't impact the placement of the relevant
spills. Drive by review.
llvm-svn: 304850
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
memcmp() expansion
I'd like to enable CGP memcmp expansion for x86, but the output from CGP would regress the
special cases (memcmp(x,y,N) != 0 for N=1,2,4,8,16,32 bytes) that we already handle.
I'm not sure if we'll actually be able to produce the optimal code given the block-at-a-time
limitation in the DAG. We might have to just avoid those special-cases here in CGP. But
regardless of that, I think this is a win for the more general cases.
http://rise4fun.com/Alive/cbQ
Differential Revision: https://reviews.llvm.org/D33963
llvm-svn: 304849
|
| |
|
|
|
|
|
|
|
| |
Remove extra tabs.
Builds sucessfully with Sphinx v1.5.5
Differential Revision: https://reviews.llvm.org/D33736
llvm-svn: 304848
|
| |
|
|
|
|
|
|
|
|
| |
more exception safe"
Also: Move constexpr / triviality extension tests into the std tree and make them conditional on _LIBCPP_VERSION / _MSVC_STL_VERSION.
https://reviews.llvm.org/D32671
llvm-svn: 304847
|
| |
|
|
| |
llvm-svn: 304846
|
| |
|
|
| |
llvm-svn: 304845
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
This patch introduces a new command line option, called brief, to
llvm-dwarfdump. When -brief is used, the attribute forms for the
.debug_info section will not be emitted to output.
Patch by Spyridoula Gravani!
rdar://problem/21474365
Differential Revision: https://reviews.llvm.org/D33867
llvm-svn: 304844
|
| |
|
|
|
|
|
| |
dependencies and add comments to tell future maintainers about those
requirements.
llvm-svn: 304843
|
| |
|
|
| |
llvm-svn: 304842
|
| |
|
|
| |
llvm-svn: 304841
|
| |
|
|
|
|
|
|
|
| |
Sony's techinical writer found during review.
I got an OK from Eric Christopher to commit doxygen comments without prior code
review upstream.
llvm-svn: 304840
|
| |
|
|
|
|
| |
warnings; other minor fixes (NFC).
llvm-svn: 304839
|
| |
|
|
|
|
|
| |
3 of the tests were testing exactly the same thing: memcmp(x, y, 16) != 0.
I changed that to test 4, 7, and 16 bytes, so we can see how those differ.
llvm-svn: 304838
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
In D33899, I'm adding a `raw_ostream &` parameter to the function
objects passed to `cl::SetVersionPrinter`. Adjust the call in
clang-apply-replacements for this.
Reviewers: klimek, alexfh
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D33959
llvm-svn: 304837
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Other llvm tools display their registered targets when showing version
information, but for some reason clang has never done this.
To support this, D33899 adds the llvm parts, which make it possible to
print version information to arbitrary raw_ostreams. This change adds
a call to printRegisteredTargetsForVersion in clang's PrintVersion, and
adds a raw_ostream parameter to two other PrintVersion functions.
Reviewers: beanz, chandlerc, dberris, mehdi_amini, zturner
Reviewed By: mehdi_amini
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D33900
llvm-svn: 304836
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
I would like to add printing of registered targets to clang's version
information. For this to work correctly, the VersionPrinter logic in
CommandLine.cpp should support printing to arbitrary raw_ostreams,
instead of always defaulting to outs().
Add a raw_ostream& parameter to the function pointer type used for
VersionPrinter, and while doing so, introduce a typedef for convenience.
Note that VersionPrinter::print() will still default to using outs(),
the clang part will necessarily go into a separate review.
Reviewers: beanz, chandlerc, dberris, mehdi_amini, zturner
Reviewed By: mehdi_amini
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D33899
llvm-svn: 304835
|
| |
|
|
|
|
|
|
|
|
| |
Reviewers: RKSimon, DavidKreitzer
Differential Revision: https://reviews.llvm.org/D33684
Patch by: Aleen Farhana <Farhana.aleen@gmail.com>
llvm-svn: 304834
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
function
Seems like at least one reasonable interpretation of optnone is that the
optimizer never "looks inside" a function. This fix is consistent with
that interpretation.
Specifically this came up in the situation:
f3 calls f2 calls f1
f2 is always_inline
f1 is optnone
The application of readnone to f1 (& thus to f2) caused the inliner to
kill the call to f2 as being trivially dead (without even checking the
cost function, as it happens - not sure if that's also a bug).
llvm-svn: 304833
|
| |
|
|
|
|
| |
those specifically mentioned.
llvm-svn: 304832
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D33736
llvm-svn: 304831
|
| |
|
|
| |
llvm-svn: 304830
|
| |
|
|
| |
llvm-svn: 304829
|
| |
|
|
|
|
|
|
|
|
|
| |
Fix static initializers to use the proper unlocked value for the poll
field of the tas and futex locks.
Patch by Terry Wilmarth
Differential Revision: https://reviews.llvm.org/D33794
llvm-svn: 304828
|
| |
|
|
|
|
|
|
| |
We now used the InputSectionDescriptions in
OutputSectionCommand::finalize. This will allow moving
clearOutputSections earlier.
llvm-svn: 304827
|
| |
|
|
| |
llvm-svn: 304826
|
| |
|
|
|
|
|
|
| |
- Add -x <language> option to switch between IR and MIR inputs.
- Change MIR parser to read from stdin when filename is '-'.
- Add a simple mir roundtrip test.
llvm-svn: 304825
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The patch makes instruction count the highest priority for
LSR solution for X86 (previously registers had highest priority).
Reviewers: qcolombet
Differential Revision: http://reviews.llvm.org/D30562
From: Evgeny Stupachenko <evstupac@gmail.com>
llvm-svn: 304824
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: rsmith, craig.topper, efriedma
Reviewed By: efriedma
Subscribers: efriedma, cfe-commits
Tags: #clang-c
Differential Revision: https://reviews.llvm.org/D33926
llvm-svn: 304823
|
| |
|
|
| |
llvm-svn: 304822
|
| |
|
|
|
|
|
| |
This removes a mapping from OutputSection to OutputSectionCommand and
is another step in moving clearOutputSections earlier.
llvm-svn: 304821
|
| |
|
|
| |
llvm-svn: 304820
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
LVIPrinter pass was previously relying on the LVICache. We now directly call the
the LVI functions which solves the value if the LVI information is not already
available in the cache. This has 2 benefits over the printing of LVI cache:
1. higher coverage (i.e. catches errors) in LVI code when cache value is
invalidated.
2. relies on the core functions, and not dependent on the LVI cache (which may
be scrapped at some point).
It would still catch any cache invalidation errors, since we first go through
the cache.
Reviewers: reames, dberlin, sanjoy
Reviewed by: reames
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D32135
llvm-svn: 304819
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
FindCUDA.cmake script.
Patch by: Singapuram Sanjay
Reviewers: grosser, philip.pfaffe
Reviewed By: philip.pfaffe
Subscribers: pollydev, mgorny
Tags: #polly
Differential Revision: https://reviews.llvm.org/D33669
llvm-svn: 304818
|
| |
|
|
|
|
| |
In importArrays instead of silently ignoring the file.
llvm-svn: 304817
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
The change cleans up and unifies the handling of relocation
entries in WasmObjectWriter. Type index relocation no longer
need to be handled separately.
The only externally visible change should be that type
index relocations are no longer grouped at the end.
Differential Revision: https://reviews.llvm.org/D33918
llvm-svn: 304816
|