- Sep 29, 2022
-
-
Nikita Popov authored
The previous version of the patch would incorrect convert an existing argmemonly attribute into an inaccessiblemem_or_argmemonly attribute. ----- This updates checkFunctionMemoryAccess() to infer a precise FunctionModRefBehavior, rather than an approximation split into read/write and argmemonly. Afterwards, we still map this back to imprecise function attributes. This still allows us to infer some cases that we previously did not handle, namely inaccessiblememonly and inaccessiblemem_or_argmemonly. In practice, this means we get better memory attributes in the presence of intrinsics like @llvm.assume. Differential Revision: https://reviews.llvm.org/D134527
-
Nikita Popov authored
Test for the issue reported in https://reviews.llvm.org/D134527#3821010.
-
Timm Bäder authored
This reverts commit c0902959. One of the test cases fails. Revert this until I know a way to make it work reliably.
-
Muhammad Omair Javaid authored
This patch disables split-complex.ll for aarch64-pc-windows-msvc. split-complex.ll fails with a crash when run on AArch64/Windows. I have reported following issue: llvm-project/issues/58053
-
David Green authored
The -fallow-half-arguments-and-returns option was removed in 59528e4bdb27ed4ab3, replaced with an always-on target option under AArch64/Arm. There are two tests - fp16-sema.c and renderscripts.rs that test that an error is produced for __fp16 function args/returns, which are now expected to pass for Arm/AArch64. i.e they no longer give the same error as before on native Arm/AArch64 machines. Alter the targets of those tests to compensate.
-
Denys Shabalin authored
Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D134869
-
Adrian Kuegel authored
Rename some interface methods to be consistent with the new accessor names. This is a preparation for adding a ReduceOp, which then will implement getIteratorTypes() and getOutputs() instead of iterator_types() and outputs(). Differential Revision: https://reviews.llvm.org/D134868
-
Timm Bäder authored
-
Timm Bäder authored
-
Timm Bäder authored
We can use another if constexpr here to make this shorter and easier to understand.
-
Timm Bäder authored
It's used in the bytecode dump of the function itself, so useful to identify which function is being called.
-
Timm Bäder authored
-
Timm Bäder authored
Just use a constexpr if here instead of two different implementations. [#
-
Timm Bäder authored
-
Timm Bäder authored
Follow up to https://reviews.llvm.org/D133934
-
Timm Bäder authored
We are otherwise leaking some memory the records might allocate themselves. Differential Revision: https://reviews.llvm.org/D134054
-
Timm Bäder authored
-
Timm Bäder authored
-
Timm Bäder authored
-
Timm Bäder authored
It's called BaseSize in the Record class as well, so call it BaseSize when creating the Record.
-
Timm Bäder authored
Handle DeclRefExprs of enum types. They are otherwise handled like integers. Differential Revision: https://reviews.llvm.org/D134020
-
Timm Bäder authored
The type information is lost when pushing things on the stack. When later pop()ing items of the wrong type, we can instead simply get garbage values and those problems are hard to find. Add another stack to record the type of item we pushed and use that for debugging. Differential Revision: https://reviews.llvm.org/D133941
-
Timm Bäder authored
-
Timm Bäder authored
Implement visiting UnaryExprOrTypeTraitExprs to handle sizeof() expressions. Differential Revision: https://reviews.llvm.org/D133934
-
Timm Bäder authored
Instead of two overloads, use a if constexpr to differentiate between pointer and non-pointer parameters
-
Timm Bäder authored
We don't need the full include here.
-
Timm Bäder authored
-
Timm Bäder authored
This is dead code right now but will be used for implementing array fillers, where we need some information from the initializer when allocaing the Descriptors. Differential Revision: https://reviews.llvm.org/D133856
-
Amir Ayupov authored
Reviewed By: spupyrev Differential Revision: https://reviews.llvm.org/D134819
-
Thomas Symalla authored
In D132837, an existing v_fma combine was extended to regard nested fma instructions. Originally, the inner FMA was checked for being used only once. In its current state, this check is missing, which causes some regressions. In this patch, this check was added. Reviewed By: foad Differential Revision: https://reviews.llvm.org/D134856
-
Florian Hahn authored
Factor out the logic to create induction resume values for a specific induction. This will be used in D92132 to support widened IVs during epilogue vectorization. Reviewed By: Ayal Differential Revision: https://reviews.llvm.org/D134211
-
David Green authored
This cc1 option -fallow-half-arguments-and-returns allows __fp16 to be passed by argument and returned, without giving an error. It is currently always enabled for Arm and AArch64, by forcing the option in the driver. This means any cc1 tests (especially those needing arm_neon.h) need to specify the option too, to prevent the error from being emitted. This changes it to a target option instead, set to true for Arm and AArch64. This allows the option to be removed. Previously it was implied by -fnative_half_arguments_and_returns, which is set for certain languages like open_cl, renderscript and hlsl, so that option now too controls the errors. There were are few other non-arm uses of -fallow-half-arguments-and-returns but I believe they were unnecessary. The strictfp_builtins.c tests were converted from __fp16 to _Float16 to avoid the issues. Differential Revision: https://reviews.llvm.org/D133885
-
Denys Shabalin authored
Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D134808
-
Muhammad Omair Javaid authored
This patch disables MC/ELF/cfi-version.ll test as windows does not emit .debug_frame needed by the test. This was previously disabled for arm64 but windows on arm uses aarch64-pc-windows* triple. Replacing arm64 with aarch64 to accomodate windows aarch64 triple(s). Reviewed By: DavidSpickett Differential Revision: https://reviews.llvm.org/D134863
-
Nicolas Vasilache authored
Reviewed By: pifon2a Differential Revision: https://reviews.llvm.org/D134834
-
Stefan Gränitz authored
[WinEH] Prepare test win64-funclet-preisel-intrinsics.ll for extension to nested try-catch case (NFC)
-
Nicolas Vasilache authored
[mlir][memref]Add pattern to forward memref.extract_aligned_pointer_as_index(view_like_op) to its source Differential Revision: https://reviews.llvm.org/D134835
-
Juan Manuel MARTINEZ CAAMAÑO authored
[DebugInfo][InferAddressSpaces] Propagate DebugLoc when cloning an instruction in InferAddressSpaces Differential Revision: https://reviews.llvm.org/D134428
-
Juan Manuel MARTINEZ CAAMAÑO authored
In addition, replace outdated XFAIL test by a new one. Differential Revision: https://reviews.llvm.org/D134439
-
Florian Hahn authored
Simplify the code by using CastInst::CreateBitOrPointerCast directly. By not going through the builder, the temporary instruction also won't get registered in InsertedValues & co, which means less work overall and simplifies the clean-up.
-