- Oct 14, 2020
-
-
Reid Kleckner authored
This reverts commit 5d74c435. The gtest tests appear to be flaky, and are failing in various places.
-
Denis Antrushin authored
Update few tests after statepoint format change (D87154). These tests exercise functionality not affected by the format change, so they left unchanged.
-
Roman Lebedev authored
As being pointed out by @efriedma in https://reviews.llvm.org/rGaaafe350bb65#inline-4883 of course we can't just call ptrtoint in sign-extending case and be done with it, because it will zero-extend. I'm not sure what i was thinking there. This is very much not an NFC, however looking at the user of BuildConstantFromSCEV() i'm not sure how to actually show that it results in a different constant expression.
-
Nikita Popov authored
If the memcpy operands are the same (which is allowed since D86815) then the memcpy is effectively a no-op and the partially overlapping memset is not dead. Differential Revision: https://reviews.llvm.org/D89192
-
LLVM GN Syncbot authored
-
LLVM GN Syncbot authored
-
Nikita Popov authored
MemCpyOpt can shorten a memset if it is later partially overwritten by a memcpy. It checks that the destination is not read in between, but we also need to make sure that the destination cannot be observed via unwinding. Differential Revision: https://reviews.llvm.org/D89190
-
Artem Dergachev authored
This reverts commit fd4b3f12.
-
Artem Dergachev authored
This reverts commit b76dc111.
-
Artem Dergachev authored
This reverts commit 44b7cf29.
-
Scott Linder authored
Add some minimal documentation for DILabel, originally introduced in D45024. Update the name and semantics of the `variables:` field in the documentation for `DISubprogram`; the field is now called `retainedNodes:` and is a heterogeneous list of `DILocalVariable` and `DILabel`. Reviewed By: aprantl Differential Revision: https://reviews.llvm.org/D89082
-
Ahsan Saghir authored
This patch adds support for assemble disassemble intrinsics for MMA. Reviewed By: bsaleil, #powerpc Differential Revision: https://reviews.llvm.org/D88739
-
LLVM GN Syncbot authored
-
LLVM GN Syncbot authored
-
Artem Dergachev authored
With this change, we're more or less ready to allow users outside of the Static Analyzer to take advantage of path diagnostic consumers for emitting their warnings in different formats. Differential Revision: https://reviews.llvm.org/D67422
-
Artem Dergachev authored
IssueHash is an attempt to introduce stable warning identifiers that won't change when code around them gets moved around. Path diagnostic consumers print issue hashes for the emitted diagnostics. This move will allow us to ultimately move path diagnostic consumers to libAnalysis. Differential Revision: https://reviews.llvm.org/D67421
-
Artem Dergachev authored
The AnalyzerOptions object contains too much information that's entirely specific to the Analyzer. It is also being referenced by path diagnostic consumers to tweak their behavior. In order for path diagnostic consumers to function separately from the analyzer, make a smaller options object that only contains relevant options. Differential Revision: https://reviews.llvm.org/D67420
-
Xun Li authored
This patch addresses https://bugs.llvm.org/show_bug.cgi?id=47787 (and hence https://bugs.llvm.org/show_bug.cgi?id=47767 as well). In latter instrumentation code, we always use the beginning of the alloca as the base for instrumentation, ignoring any offset into the alloca. Because of that, we should only instrument a lifetime marker if it's actually pointing to the beginning of the alloca. Differential Revision: https://reviews.llvm.org/D89191
-
Nikita Popov authored
The previous code added the scope on each iteration, so that the same scope was represented many times in the same !noalias metadata. That's legal, and semantically equivalent to only storing the scope once, but it's also wasteful and may pessimize further optimization if AATags get intersected naively, as done by the AliasSetTracker.
-
Stella Stamenova authored
The build of MLIR occasionally fails (especially on Windows) because there is missing dependency between MLIRLLVMIR and MLIROpenMPOpsIncGen. 1) LLVMDialect.cpp includes LLVMDialect.h 2) LLVMDialect.h includes OpenMPDialect.h 3) OpenMPDialect.h includes OpenMPOpsDialect.h.inc, OpenMPOpsEnums.h.inc and OpenMPOps.h.inc The OpenMP .inc files are generated by MLIROpenMPOpsIncGen, so MLIRLLVMIR which builds LLVMDialect.cpp should depend on MLIROpenMPOpsIncGen Reviewed By: mehdi_amini Differential Revision: https://reviews.llvm.org/D89275
-
Nicolas Vasilache authored
TensorConstantOp bufferization currently uses the vector dialect to store constant data into memory. Due to natural vector size and alignment properties, this is problematic with n>1-D vectors whose most minor dimension is not naturally aligned. Instead, this revision linearizes the constant and introduces a linalg.reshape to go back to the desired shape. Still this is still to be considered a workaround and a better longer term solution will probably involve `llvm.global`. Differential Revision: https://reviews.llvm.org/D89311
-
Louis Dionne authored
-
Konstantin Zhuravlyov authored
Differential Revision: https://reviews.llvm.org/D89042
-
Konstantin Zhuravlyov authored
It has been unsupported for few years now. Differential Revision: https://reviews.llvm.org/D89125
-
Hafiz Abid Qadeer authored
Currently the 'emulator' value is fixed at build time. This patch allows changing the emulator at testing time and enables us to run the tests on different board or simulators without needing to run CMake again to change the value of emulator. With this patch in place, the value of 'emulator' can be changed at test time from the command line like this: $ llvm-lit --param=emulator="..." Reviewed By: delcypher Differential Revision: https://reviews.llvm.org/D84708
-
Mircea Trofin authored
Differential Revision: https://reviews.llvm.org/D89250
-
- Oct 13, 2020
-
-
Sanjay Patel authored
This is bigger/uglier than before, but it should allow fixing all of the broken paths more easily. Test coverage added with rGfab028b9 and other commits. This is not NFC - the scalable vector test would crash without this patch.
-
Sanjay Patel authored
This is treated as a special-case in the base class implementation of getIntrinsicInstrCost().
-
Christian Sigg authored
This combines two separate ops (D88972: `gpu.create_token`, D89043: `gpu.host_wait`) into one. I do after all like the idea of combining the two ops, because it matches exactly the pattern we are going to have in the other gpu ops that will implement the AsyncOpInterface (launch_func, copies, alloc): If the op is async, we return a !gpu.async.token. Otherwise, we synchronize with the host and don't return a token. The use cases for `gpu.wait async` and `gpu.wait` are further apart than those of e.g. `gpu.h2d async` and `gpu.h2d`, but I like the consistent meaning of the `async` keyword in GPU ops. Reviewed By: herhut Differential Revision: https://reviews.llvm.org/D89160
-
Jay Foad authored
Implement computeKnownBitsForTargetInstr for G_AMDGPU_BUFFER_LOAD_UBYTE and G_AMDGPU_BUFFER_LOAD_USHORT. This allows generic combines to remove some unnecessary G_ANDs. Differential Revision: https://reviews.llvm.org/D89316
-
Raphael Isemann authored
We are still implementing our own logic for this that looks for a VCS file in the place where it was before the monorepo migration. This removes this logic and just uses the CMake function that LLVM/Clang are using. Reviewed By: JDevlieghere, kastiglione Differential Revision: https://reviews.llvm.org/D88950
-
Raphael Isemann authored
While debugging another bug I found out that we currently don't set any limit for the number of diagnostics Clang emits. If a user does something that generates a lot of errors (like including some long header file from within the expression function), then we currently spam the LLDB output with potentially thousands of Clang error diagnostics. Clang sets a default limit of 20 errors, but given that LLDB is often used interactively for small expressions I would say a limit of 5 is enough. The limit is implemented as a setting, so if a user cares about seeing having a million errors printed to their terminal then they can just increase the settings value. Reviewed By: shafik, mib Differential Revision: https://reviews.llvm.org/D88889
-
Raphael Isemann authored
RegisterInfo's `reg_name`/`reg_alt_name` fields are C-Strings and are supposed to only be generated from a ConstString. The reason for that is that `DynamicRegisterInfo::GetRegisterInfo` and `RegInfoBasedABI::GetRegisterInfoByName` try to optimise finding registers by name by only comparing the C string pointer values instead of the underlying strings. This only works if both C strings involved in the comparison come from a ConstString. If one of the two C strings doesn't come from a ConstString the comparison won't work (and most likely will silently fail). I added an assert in b0060c3a which checks that both strings come from a ConstString. Apparently not all ABI plugins are generating their register names via ConstString, so this code is now not just silently failing but also asserting. In D88375 we did a shady fix for the MIPS plugins by just copying the ConstString setup code to that plugin, but we still need to fix ABISysV_arc, ABISysV_ppc and ABISysV_ppc64 plugins. I would say we just fix the remaining plugins by removing the whole requirement to have the register names coming from ConstStrings. I really doubt that we actually save any time with the whole ConstString search trick (searching ~50 strings that have <4 characters doesn't sound more expensive than calling the really expensive ConstString constructor + comparing the same amount of pointer values). Also whatever small percentage of LLDB's runtime is actually spend in this function is anyway not worth the complexity of this approach. This patch just removes all this and just does a normal string comparison. Reviewed By: JDevlieghere, labath Differential Revision: https://reviews.llvm.org/D88490
-
Raphael Isemann authored
That's supposed to be used to implement things such as `settings set target.run-args{basename==test&&arch==x86_64} arg1` but it's not actually fully implemented or tested anywhere. Reviewed By: JDevlieghere Differential Revision: https://reviews.llvm.org/D88910 -
Raphael Isemann authored
This patch adds several build system targets that run the normal test suite but against the Watch/TV/iPhone simulators. Reviewed By: JDevlieghere Differential Revision: https://reviews.llvm.org/D89224
-
Paulo Matos authored
Adds more testing in basic-assembly.s and a new test tables.s. Adds support to yaml reading and writing of tables as well. Differential Revision: https://reviews.llvm.org/D88815
-
Eduardo Caldas authored
Differential Revision: https://reviews.llvm.org/D89146
-
Sanjay Patel authored
-
Sjoerd Meijer authored
-
Sanjay Patel authored
This provides coverage for existing special-cases and a sampling of other intrinsics. Current output appears to be wrong in several cases.
-