- Sep 04, 2020
-
-
Vitaly Buka authored
New name better represents the state of chunk.
-
Vitaly Buka authored
-
Fangrui Song authored
std::length_error needs stdexcept.
-
Matt Arsenault authored
This has not used tied operands for a long time.
-
Craig Topper authored
The optimization in ExpandIntOp_UINT_TO_FP was removed in D72728 in January 2020.
-
Ryan Prichard authored
Simplify: defined(__ARM_DWARF_EH__) || !defined(__arm__) to: !defined(_LIBUNWIND_ARM_EHABI) A later patch benefits from the simplicity. This change will result in the two DWARF macros being defined when __USING_SJLJ_EXCEPTIONS__ is defined, but: * That's already the case with the __APPLE__ and _WIN32 clauses. * That's also already the case with other architectures. * With __USING_SJLJ_EXCEPTIONS__, most of the unwinder is #ifdef'ed away. Generally, when __USING_SJLJ_EXCEPTIONS__ is defined, most of the libunwind code is removed by the preprocessor. e.g. None of the hpp files are included, and almost all of the .c and .cpp files are defined away, except in Unwind-sjlj.c. Unwind_AppleExtras.cpp is an exception because it includes two hpp files, which it doesn't use. Remove the unneeded includes for consistency with the general rule. Reviewed By: steven_wu Differential Revision: https://reviews.llvm.org/D86767
-
Amy Huang authored
This adds the size to forward declared class DITypes, if the size is known. Fixes an issue where we determine whether to emit fragments based on the type size, so fragments would sometimes be incorrectly emitted if there was no size. Bug: https://bugs.llvm.org/show_bug.cgi?id=47338 Differential Revision: https://reviews.llvm.org/D87062
-
Michael Liao authored
- When an operand is changed into an immediate value or like, ensure their target flags being cleared or set properly. Differential Revision: https://reviews.llvm.org/D87109
-
Richard Smith authored
Previously we had two overloads where the only real difference beyond parameter order was whether a reference parameter is const, where one overload treated the reference parameter as an in-parameter and the other treated it as an out-parameter!
-
Richard Smith authored
References to different declarations of the same entity aren't different values, so shouldn't have different representations.
-
- Sep 03, 2020
-
-
Fangrui Song authored
It is used by clusterfuzz (https://github.com/google/clusterfuzz/pull/2009/) and having this compatibility option for a while can help they do bisection with the latest llvm-symbolizer. Reviewed By: jhenderson Differential Revision: https://reviews.llvm.org/D87067
-
Vitaly Buka authored
Asan does not use metadata with primary allocators. It should match AP64::kMetadataSize whic is 0. Depends on D86917. Reviewed By: morehouse Differential Revision: https://reviews.llvm.org/D86919
-
Vitaly Buka authored
There are no know bugs related to this, still it may fix some latent ones. Main concerns with preexisting code: 1. Inconsistent atomic/non-atomic access to the same field. 2. Assumption that bitfield chunk_state is always the first byte without even taking into account endianness. Reviewed By: morehouse Differential Revision: https://reviews.llvm.org/D86917
-
Erik Pilkington authored
Previously, this code discarded the result of CheckPlaceholderExpr for non-matrix subexpressions. Not only is this wasteful, but it was creating a Warc-repeated-use-of-weak false-positive on the attached testcase, since the discarded expression was still registered as a use of the weak property. rdar://66162246 Differential revision: https://reviews.llvm.org/D87102
-
Dokyung Song authored
This patch scales the energy computed by the Entropic schedule based on the execution time of each input. The input execution time is compared with the average execution time of inputs in the corpus, and, based on the amount by which they differ, the energy is scaled from 0.1x (for inputs executing slow) to 3x (for inputs executing fast). Note that the exact scaling criteria and formula is borrowed from AFL. On FuzzBench, this gives a sizeable throughput increase, which in turn leads to more coverage on several benchmarks. For details, see the following report. https://storage.googleapis.com/fuzzer-test-suite-public/exectime-report/index.html Differential Revision: https://reviews.llvm.org/D86092
-
LLVM GN Syncbot authored
-
Puyan Lotfi authored
This hashing scheme has been useful out of tree, and I want to start experimenting with it. Specifically I want to experiment on the MIRVRegNamer, MIRCanononicalizer, and eventually the MachineOutliner. This diff is a first step, that optionally brings stable hashing to the MIRVRegNamer (and as a result, the MIRCanonicalizer). We've tested this hashing scheme on a lot of MachineOperand types that llvm::hash_value can not handle in a stable manner. This stable hashing was also the basis for "Global Machine Outliner for ThinLTO" in EuroLLVM 2020 http://llvm.org/devmtg/2020-04/talks.html#TechTalk_58 Credits: Kyungwoo Lee, Nikolai Tillmann Differential Revision: https://reviews.llvm.org/D86952
-
Arthur Eubanks authored
This also changes -lint from an analysis to a pass. It's similar to -verify, and that is a normal pass, and lives in llvm/IR. Reviewed By: ychen Differential Revision: https://reviews.llvm.org/D87057
-
Dokyung Song authored
[libFuzzer] Evenly select inputs to cross over with from the corpus regardless of the input's coverage. This patch adds an option "cross_over_uniform_dist", which, if 1, considers all inputs in the corpus for the crossover input selection. More specifically, this patch uses a uniform distribution of all inputs in the corpus for the CrossOver input selection. Note that input selection for mutation is still fully determined by the scheduling policy (i.e., vanilla or Entropic); the uniform distribution only applies to the secondary input selection, only for the crossover mutation of the base input chosen by the scheduling policy. This way the corpus inputs that have useful fragments in them, even though they are deprioritized by the scheduling policy, have chances of getting mixed with other inputs that are prioritized and selected as base input for mutation. Differential Revision: https://reviews.llvm.org/D86954
-
Bryan Chan authored
-
Fangrui Song authored
Both tests operate on `%T/testbin`. If the two tests run concurrently, one may fail. This is likely the root cause of flaky failures reported by https://lists.llvm.org/pipermail/llvm-dev/2020-September/144781.html https://llvm.org/docs/CommandGuide/lit.html says: `%T parent directory of %t (not unique, deprecated, do not use)` Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D87103
-
Luboš Luňák authored
The tests are unsupported on linux, but they assert in Thread::GetStopDescriptionRaw() because of empty stop reason description. And it is empty because InstrumentationRuntimeTSan::NotifyBreakpointHit() fails to get report from InstrumentationRuntimeTSan::RetrieveReportData(), which is possibly(?) the reason why this is unsupported on linux. Add a dummy stop reason description for this case, which changes the test result from failing to unsupported.
-
Wenlei He authored
Although LLVM supports vectorization of loops containing log2, it did not support using SVML implementation of it. Added support so that when clang is invoked with -fveclib=SVML now an appropriate SVML library log2 implementation will be invoked. Follow up on: https://reviews.llvm.org/D77114 Tests: Added unit tests to svml-calls.ll, svml-calls-finite.ll. Can be run with llvm-lint. Created a simple c++ file that tests log2, and used clang+ to build it, and output final assembly. Reviewed By: wenlei, craig.topper Differential Revision: https://reviews.llvm.org/D86730
-
Jamie Schmeiser authored
This reverts commit 7bc9924c due to failure caused by missing a space between trailing >>, required by some versions of C++:wq.
-
Amy Huang authored
Make sure the sizes for forward declared classes aren't emitted in DWARF. This comes before https://reviews.llvm.org/D87062, which adds sizes to all classes with definitions. Bug: https://bugs.llvm.org/show_bug.cgi?id=47338 Differential Revision: https://reviews.llvm.org/D87070
-
Simon Pilgrim authored
Use forward declarations and move the include down to dependent files that actually use it. This also exposes a number of implicit dependencies on KnownBits.h
-
Lei Zhang authored
These deafult values are gotten from Vulkan required limits. Reviewed By: hanchung Differential Revision: https://reviews.llvm.org/D87090
-
Louis Dionne authored
-
John Brawn authored
Currently the libcxx/atomics/ext-int.verify.cpp test fails when run with -std=c++03 because there's an extra error due to using list initialization. Fix this by using parentheses instead.
-
David Green authored
-
Simon Pilgrim authored
-
Simon Pilgrim authored
This is already included in PHIEliminationUtils.h
-
Simon Pilgrim authored
-
Simon Pilgrim authored
Remove \returns tag from a void function
-
Sanjay Patel authored
-
Sanjay Patel authored
-
Jan Korous authored
-
Dimitry Andric authored
Since the parameter is not used anywhere, and the default size of 16 apparently causes PR47359, remove it. This ensures that IntervalMap will automatically determine the optimal size, using its NodeSizer struct. Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D87044
-
Walter Erquinigo authored
Caused by D86662. The fix is only checking some fields when the expect_debug_info_size flag is true. For some reason this was not failing on a local linux machine.
-
Dokyung Song authored
This patch adds an option "keep_seed" to keep all initial seed inputs in the corpus. Previously, only the initial seed inputs that find new coverage were added to the corpus, and all the other initial inputs were discarded. We observed in some circumstances that useful initial seed inputs are discarded as they find no new coverage, even though they contain useful fragments in them (e.g., SQLITE3 FuzzBench benchmark). This newly added option provides a way to keeping seed inputs in the corpus for those circumstances. With this patch, and with -keep_seed=1, all initial seed inputs are kept in the corpus regardless of whether they find new coverage or not. Further, these seed inputs are not replaced with smaller inputs even if -reduce_inputs=1. Differential Revision: https://reviews.llvm.org/D86577
-