- Apr 19, 2023
-
-
Noah Goldstein authored
Bug was because we recognized patterns like `(shl 4, Z)` as a power of 2 we could take Log2 of (`2 + Z`), but doing `(shl X, (2 + Z))` can cause a poison shift. https://alive2.llvm.org/ce/z/yuJm_k The fix is to verify that `Log2(Y)` will be a non-poisonous shift amount. We can do this with: `nsw` flag: - https://alive2.llvm.org/ce/z/yyyJBr - https://alive2.llvm.org/ce/z/YgubD_ `nuw` flag: - https://alive2.llvm.org/ce/z/-4mpyV - https://alive2.llvm.org/ce/z/a6ik6r Prove `Y != 0`: - https://alive2.llvm.org/ce/z/ced4su - https://alive2.llvm.org/ce/z/X-JJHb Reviewed By: nikic Differential Revision: https://reviews.llvm.org/D148609 -
Lang Hames authored
These tests passed on my ppc64le test machine. If they survive testing by the buildbots then we can leave them enabled, and this will allow us to land the new ppc64 JITLink backend (https://reviews.llvm.org/D148192).
-
Fangrui Song authored
The placement is currently wrong in the presence of function entry related instrumentations (prefixdata, -fpatchable-function-entry=, -fsanitize=kcfi, etc).
-
Caslyn Tonelli authored
Employ a similar tactic introduced by https://reviews.llvm.org/D94362 for gwp_asan tests. zxtest `ASSERT_DEATH` syntax differs from gtest in that it expects a lambda. zxtest does not have `EXPECT_DEATH`, so it introduced for Fuchsia builds and wraps the expression with a lambda to create a compatible syntax between zxtest and gtest for death tests. An example of where this compatiblity is needed is in `never_allocated.cpp`. Differential Revision: https://reviews.llvm.org/D147189
-
Rahman Lavaee authored
-
LLVM GN Syncbot authored
-
Prem Chintalapudi authored
This patch ports PerfJITEventListener to a JITLink plugin, but adds unwind record support and drops debuginfo support temporarily. Debuginfo can be enabled in the future by providing a way to obtain a DWARFContext from a LinkGraph. See D146060 for an experimental implementation that adds debuginfo parsing. Reviewed By: lhames Differential Revision: https://reviews.llvm.org/D146169
-
Lei Zhang authored
It's common to see such cases for contraction from convolution with input channel as 3. Although we aren't utilizing all 4 lanes for dot product, it should still be better than performing the multiply and reduction separately. Reviewed By: kuhar Differential Revision: https://reviews.llvm.org/D148642
-
Bill Wendling authored
The "getField" method is a bit confusing considering we also have a "getFieldName" method. Instead, use "getFieldDecl" rather than "getField". Differential Revision: https://reviews.llvm.org/D147743
-
Jason Molenda authored
A default number of addressing bits was hardcoded in ABIMacOSX_arm64::FixAddress while we updated different environments to fetch the value dynamically. Remove the old hardcoded value. Differential Revision: https://reviews.llvm.org/D148603 rdar://108068497
-
Vitaly Buka authored
-
Vitaly Buka authored
For unknown reason it fails to link.
-
Siva Chandra Reddy authored
Reviewed By: jeffbailey Differential Revision: https://reviews.llvm.org/D147350
-
Alexey Bataev authored
[SLP]Add final resize to ShuffleCostEstimator::finalize member function and basic add member functions. Implemented the reshuffling in finalize member function + add basic support for add member functions, used during vector build. Part of D110978 Differential Revision: https://reviews.llvm.org/D148279
-
Siva Chandra Reddy authored
Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D148602
-
Vassil Vassilev authored
Original commit message: " [clang-repl] Enable debugging of JIT-ed code. This change follows llvm/llvm-project@21b5ebd and makes use of the jitlink infrastructure. In order to use this feature inside lldb one needs to run the lldb command: settings set plugin.jit-loader.gdb.enable on This works currently only on Darwin since jitlink is not a default ELF/x86-64 backend yet. Differential revision: https://reviews.llvm.org/D148481 " This patch reverts commit e64fbf2c and adds the missing library dependencies which caused the initial failure. -
Peiming Liu authored
The removed tests evaluate the same kernels in existing tests, namely `sparse_conv2d.mlir` and `spares_conv3d.mlir`. Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D148644
-
Leonard Chan authored
This reverts commit cdf71d2c. Relanding this because this only affects fuchsia builders and we moved our hwasan builders to a non-blocking pool in the meantime.
-
David Tenty authored
Missed by the original commit of D147016 which updated the DataLayout for Power. Differential Revision: https://reviews.llvm.org/D147016
-
Tue Ly authored
-
Alexey Bataev authored
Revert "[SLP]Add final resize to ShuffleCostEstimator::finalize member function and basic add member functions." This reverts commit cd341f3f to fix a crash revealed by buildbot https://lab.llvm.org/buildbot#builders/124/builds/7108.
-
Philip Reames authored
This transformation creates an copysign node whose argument types do not match. RISCV does not handle such a case which results in a crash today. Looking at the relevant code in DAG, it looks like the process of enabling the non-matching types case was never completed for vectors at all. The transformation which triggered the RISCV crash is a specialization of another transform (specifically due to one use for profitability) which isn't enabled by default. Given that, I chose to match the preconditions for that other transform. Other options here include: * Updating RISCV codegen to handle the mismatched argument type case for vectors. This is slightly tricky as I don't see an obvious profitable lowering for this case which doesn't involve simply adding back in the round/trunc. * Disabling the transform via a target hook. This patch does involve two changes for AArch64 codegen. These could be called regressions, but well, the code after actually looks better than the code before. Differential Revision: https://reviews.llvm.org/D148638
-
Jonas Paulsson authored
Make CheckAtomicAlignment() return the computed pointer for reuse to avoid emitting it twice. Reviewed By: efriedma Differential Revision: https://reviews.llvm.org/D148422
-
Bing1 Yu authored
getAllOnesConstant can only take v8i32 instead of v8f32 Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D148608
-
David Tenty authored
The alignment of function pointers was added to the Datalayout by D57335 but currently is unset for the Power target. This will cause us to compute a conservative minimum alignment of one if places like Value::getPointerAlignment. This patch implements the function pointer alignment in the Datalayout for the Power backend and Power targets in clang, so we can query the value for a particular Power target. We come up with the correct value one of two ways: - If the target uses function descriptor objects (i.e. ELFv1 & AIX ABIs), then a function pointer points to the descriptor, so use the alignment we would emit the descriptor with. - If the target doesn't use function descriptor objects (i.e. ELFv2), a function pointer points to the global entry point, so use the minimum alignment for code on Power (i.e. 4-bytes). Reviewed By: nemanjai Differential Revision: https://reviews.llvm.org/D147016
-
Kevin Sala authored
This patch removes the Err data member from the AsyncInfoWrapperTy class. Now the error is stored externally, in the caller side, and it is explicitly passed to the AsyncInfoWrapperTy::finalize() function as a reference. Differential Revision: https://reviews.llvm.org/D148027
-
Benjamin Kramer authored
This was incorrect when the number of dropped source dims was smaller than the number of dropped dst dims. We still need to insert zeros if there is anything dropped from the src. Differential Revision: https://reviews.llvm.org/D148636
-
Paul Robinson authored
Differential Revision: https://reviews.llvm.org/D148021
-
Nikita Popov authored
If the memset is large, checking every single byte of the global may be very slow. Add an upper bound on the size of memset we handle. For the common special case of memset zeroinitializer to zero, add a fastpath that checks just that and is not length limited. Fixes https://github.com/llvm/llvm-project/issues/62191.
-
Siva Chandra Reddy authored
Reviewed By: lntue Differential Revision: https://reviews.llvm.org/D148611
-
- Apr 18, 2023
-
-
Slava Zakharin authored
The code was using the original operand of the operation, while it should have been using the remapped operands via the adaptor. Differential Revision: https://reviews.llvm.org/D148587
-
Guillaume Chatelet authored
This patch broke the build bots. This reverts commit 6fdc244e.
-
Guillaume Chatelet authored
These sequence of calls don't really make sense for head_tail and loop_and_tail.
-
Simon Pilgrim authored
Use a modified version of the D103695 script to determine more accurate throughput/latency/codesize/size-latency cost estimates
-
Alex Brachet authored
Differential Revision: https://reviews.llvm.org/D148583
-
Ivan Kosarev authored
Removes the need for the custom code in parseCustomOperand(). Reviewed By: foad Differential Revision: https://reviews.llvm.org/D147241
-
Vassil Vassilev authored
This reverts commit 1e4891e6. Some bots complain about undefined llvm_orc_registerJITLoaderGDBAllocAction.
-
Guillaume Chatelet authored
-
Vassil Vassilev authored
This change follows llvm/llvm-project@21b5ebd and makes use of the jitlink infrastructure. In order to use this feature inside lldb one needs to run the lldb command: settings set plugin.jit-loader.gdb.enable on This works currently only on Darwin since jitlink is not a default ELF/x86-64 backend yet. Differential revision: https://reviews.llvm.org/D148481
-
Nikita Popov authored
-