- Feb 16, 2022
-
-
Nikita Popov authored
These are leftovers from when there were separate MSSA/non-MSSA check lines.
-
Tim Northover authored
It provides some functions needed by add/sub.
-
Kristof Beyls authored
-
Simon Pilgrim authored
Expand the ISD::AVGCEILU to determine the known bits of the result. First part of PR53622 Differential Revision: https://reviews.llvm.org/D119629
-
Marek Kurdej authored
Fixes https://github.com/llvm/llvm-project/issues/52649. This was already fixed in commit https://github.com/llvm/llvm-project/commit/e967d97a35a93c883528a9672159edff05f5addb.
-
Anastasia Stulova authored
Reflect the latest development in clang docs. Differential Revision: https://reviews.llvm.org/D119719
-
Nathan Sidwell authored
parseNestedName's main loop allowed parsing a grammar that was more flexible than the actual grammar. This refactors that to rule out some more incorrect manglings. 1) The 'L' extension only applies to unqualified-name components, so check it just there. 2) The 'M' suffix is, AFAICT, removed from the grammar. Rather than eliminate it, let's parse it after we've parsed a component. Added some additional bad mangling tests, which are now rejected. I don't break the 'T' and 'D[tT]' cases out of the loop, even though they can only appear at first position, as it seems simpler to just check there is nothing SoFar. Reviewed By: ChuanqiXu Differential Revision: https://reviews.llvm.org/D119542
-
Nathan Sidwell authored
The Itanium mangler constructors use both NSDMI and explicit member construction for default values. This is confusing. *) Use NSDMIs wherever possible *) Use forwarding ctor for the nesting case with an llvm::raw_null_ostream (and explicitly set NullOut flag in that ctor). *) Copy the ModuleSubstitutions. This is a bug with no effect in the current mangling, but not in the newer mangling. Reviewed By: ChuanqiXu Differential Revision: https://reviews.llvm.org/D119550
-
Nemanja Ivanovic authored
The added run lines build a bitcode file for x86 and an object file for whatever the default target is that is running the test. This causes an incompatibility between the files. Add the triple to the llvm-mc invocation.
-
Florian Hahn authored
Add a few test cases with clobbers (writes and lifetime.end) that should prevent memcpy->byval forwarding, but those clobbers are missed at the moment.
-
Andrzej Warzynski authored
This patch updates `validModule` not to use `getModule`. `getModule` will dereference `module`, but that will lead to a seg-fault if `module` is a `nullptr`. Differential Revision: https://reviews.llvm.org/D119705
-
Shengchen Kan authored
Reviewed By: pengfei Differential Revision: https://reviews.llvm.org/D119914
-
Pavel Labath authored
After applying the same for as in TestThreadBacktraceRepeat, the test appears to pass reliably. The skip decorator was added many years ago, so it's not clear whether this is what caused it to hang.
-
Sven van Haastregt authored
It is necessary to guard atomic_double type according to https://www.khronos.org/registry/OpenCL/specs/3.0-unified/html/OpenCL_C.html#_footnotedef_54. Platform that disable cl_khr_int64_base_atomics and cl_khr_int64_extended_atomics will have compiling errors even if atomic_double is not used. Patch by Haonan Yang. Differential Revision: https://reviews.llvm.org/D119398
-
Arlo Siemsen authored
D115300 added Rust as a new PDB language type. This change allows LLDB to recognize the new language type. Reviewed By: rnk Differential Revision: https://reviews.llvm.org/D119044
-
Balazs Benics authored
This is a followup for D118690. I'm removing the offending RUN line, to resolve the build breakage: https://lab.llvm.org/buildbot/#/builders/91/builds/3975/steps/8/logs/stdio Exit Code: 1 Command Output (stderr): -- /scratch/buildbot/bothome/clang-ve-ninja/llvm-project/clang/test/Analysis/analyze-function-guide.cpp:58:22: error: CHECK-EMPTY2-NOT: excluded string found in input // CHECK-EMPTY2-NOT: Every top-level function was skipped. ^ <stdin>:1:1: note: found here Every top-level function was skipped. ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Differential Revision: https://reviews.llvm.org/D118690
-
Balazs Benics authored
This reverts commit 620d99b7. Let's see if removing the two offending RUN lines makes this patch pass. Not ideal to drop tests but, it's just a debugging feature, probably not that important.
-
Nikita Popov authored
We should not assume that the cet.h header exists just because we're on x86 linux. Only include it if __CET__ is defined. This makes the code more similar to what compiler-rt does in https://github.com/llvm/llvm-project/blob/ee423d93ead39e94c2970b3cc7ef6e6faa75d10b/compiler-rt/lib/builtins/assembly.h#L17 (though that one also has a __has_include() check -- I've not found that to be necessary). Differential Revision: https://reviews.llvm.org/D119697
-
Nikita Popov authored
This is a followup to D119695 using the suggestion by joerg. Rather than manually declaring madvise() on __sun__, this uses posix_madvise() if available, which does get declared properly on Illumos. Differential Revision: https://reviews.llvm.org/D119856
-
Qiu Chaofan authored
These tests are dumped without optimization, which makes them too lengthy and contain meaningless load/stores. Clean them up to prepare for future headers update.
-
Jan Svoboda authored
Commit 4a794d84 caused build failure with -Werror -Wpessimizing-move on the clang-ppc64-aix buildbot. This patch applies Clang's suggestion to remove `std::move`.
-
Zakk Chen authored
The goal is support tail and mask policy in RVV builtins. We focus on IR part first. If the passthru operand is undef, we use tail agnostic, otherwise use tail undisturbed. My plan is to handle more complex operations in follow-up patches. Reviewers: frasercrmck Differential Revision: https://reviews.llvm.org/D118253
-
Siva Chandra Reddy authored
-
Chuanqi Xu authored
This one tries to fix: https://github.com/llvm/llvm-project/issues/53357. Simply, this one would check (x & y) and ~(x | y) in haveNoCommonBitsSet. Since they shouldn't have common bits (we could traverse the case by enumerating), and we could convert this one to (x & y) | ~(x | y) . Then the compiler could handle it in InstCombineAndOrXor. Further more, since ((x & y) + (~x & ~y)) would be converted to ((x & y) + ~(x | y)), this patch would fix it too. https://alive2.llvm.org/ce/z/qsKzRS Reviewed By: spatel, xbolva00, RKSimon, lebedev.ri Differential Revision: https://reviews.llvm.org/D118094
-
Chuanqi Xu authored
This patch tries to implement RVO for coroutine's return object got from get_return_object. From [dcl.fct.def.coroutine]/p7 we could know that the return value of get_return_object is either a reference or a prvalue. So it makes sense to do copy elision for the return value. The return object should be constructed directly into the storage where they would otherwise be copied/moved to. Test Plan: folly, check-all Reviewed By: junparser Differential revision: https://reviews.llvm.org/D117087
-
Shao-Ce SUN authored
Reviewed By: skan Differential Revision: https://reviews.llvm.org/D119846
-
Sheng authored
This gives a approximate error location. Although not very accurate, it suffices to debug. Reviewed By: myhsu Differential Revision: https://reviews.llvm.org/D119684
-
Sheng authored
Refactor the instructions in M68kInstrControl.td to use the VarLenCodeEmitter. This patch is tested by the existing test cases. Reviewed By: myhsu, ricky26 Differential Revision: https://reviews.llvm.org/D119665
-
Min-Yih Hsu authored
Supporting relocatable and pc-relative immediate values for the new code emitter. Differential Revision: https://reviews.llvm.org/D119101
-
Jonas Devlieghere authored
I was looking at Stream::PutRawBytes and thought I spotted a bug because both loops are using `i < src_len` as the loop condition despite them iterating in opposite directions. On closer inspection, the existing code is correct, because it relies on well-defined unsigned integer wrapping. Correct doesn't mean readable, so this patch changes the loop condition to compare against 0 when decrementing i while still covering the edge case of src_len potentially being 0 itself. Differential revision: https://reviews.llvm.org/D119857
-
Mubariz Afzal authored
This reverts ea0676f9
-
Serguei Katkov authored
Volatile store does not provide any special rules for reordering with atomics. Usual must alias anaylsis is enough here. This makes the bahavior similar to how volatile load is handled. Reviewers: reames, nikic Reviewed By: reames Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D119818
-
Shao-Ce SUN authored
This reverts commit fe25c06c.
-
Shao-Ce SUN authored
For ten years, it seems that `MCRegisterInfo` is not used by any target. Reviewed By: skan Differential Revision: https://reviews.llvm.org/D119846
-
Jeff Bailey authored
The prior page was the proposal doc, this one is now more about what the project intends to do, written in the present tense. Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D119379
-
Carl Ritson authored
For AMDGPU the insertion point for a block may not be the first non-PHI instruction. This happens when a block contains EXEC mask manipulation related to control flow (converging lanes). Use SkipPHIsAndLabels to determine the block insertion point so that the target can skip any block prologue instructions. Reviewed By: rampitec, ruiling Differential Revision: https://reviews.llvm.org/D119399
-
Jeff Bailey authored
This implements a basic arm64 loader for Linux, and all the currently enabled linker tests pass. TLS is not implemented, and functions using it will have undefined behaviour. Notably, the TLS test is currently disabled on x86_64. Much of the structure is copied from x86_64 to allow for a refactoring of the start code between architectures. Tested: ninja libc_loader_tests on aarch64-linux. Co-authored-by:
Raman Tenneti <rtenneti@google.com> Reviewed By: sivachandra Differential Revision: https://reviews.llvm.org/D119641
-
Serguei Katkov authored
-