- Apr 18, 2024
-
-
Florian Hahn authored
Merge branch 'users/fhahn/tysan-a-type-sanitizer-llvm' into users/fhahn/tysan-a-type-sanitizer-clang Conflicts: llvm/include/llvm/Bitcode/LLVMBitCodes.h
-
Florian Hahn authored
Created using spr 1.3.4
-
Nashe Mncube authored
A bug was found where mops instructions were being generated that aliased the source and size registers. This is unpredictable behaviour. This patch uses the earlyclobber constraint on the input source register so that it doesn't alias with the size register. Also a test is introduced which checks affected instructions can't violate this constraint.
-
Matthew Devereau authored
This patch enables constant folding for 128 bit floating-point logf calls. This is achieved by querying if the host system has the logf128() symbol available with a CMake test. If so, replace the runtime call with the compile time value returned from logf128.
-
Ramkumar Ramachandra authored
In the process of collecting instructions to scalarize, LoopVectorize uses faulty reasoning whereby it also adds instructions that will be scalar after vectorization. If an instruction satisfies isScalarAfterVectorization() for the given VF, it should not be appended to InstsToScalarize. Add this extra guard, fixing a crash. Fixes #55096.
-
Aiden Grossman authored
This patch defines SYS_gettid as __NR_gettid if SYS_gettid is not available to avoid compile time errors due to SYS_gettid not being defined. This happens with certain libcs (like bionic) that do not define SYS_gettid.
-
Timm Bäder authored
-
David Spickett authored
Reverts llvm/llvm-project#88965 This caused a test suite failure: https://lab.llvm.org/buildbot/#/builders/185/builds/6583 NOEXE: test-suite::aarch64-acle-fmv-features.test ``` /home/tcwg-buildbot/worker/clang-aarch64-lld-2stage/test/test-suite/SingleSource/UnitTests/AArch64/acle-fmv-features.c:98:1: error: redefinition of 'check_sha1' 98 | CHECK(sha1, { | ^ /home/tcwg-buildbot/worker/clang-aarch64-lld-2stage/test/test-suite/SingleSource/UnitTests/AArch64/acle-fmv-features.c:36:17: note: expanded from macro 'CHECK' 36 | static void check_##X(void) { \ | ^ <scratch space>:150:1: note: expanded from here 150 | check_sha1 | ^ ``` I presume that the useless features need to be removed from the fmv test as well.
-
Chuanqi Xu authored
Although we want to treat the module initializer as a transparent concept to users, but it shows that people need to understand the concept to understand how to understand and distribute modules. So it is better to mention this too.
-
David Spickett authored
https://discourse.llvm.org/t/running-lldb-in-a-container/76801/4 found that the obvious way to use this variable doesn't work, despite what our docs and examples say. Perhaps in the past it did but now you need to use ";" as a separator to make sure the final command line works properly. For example "-A foo" becomes "-A foo" when python goes to run the runner script. The script sees this as one command line element, not two. What you actually want is "-A;foo" which we convert to "-A" "foo" which the script sees as one option and one value for that option. The "Script:" printout from dotest is misleading here because it does `" ".join(cmd)` so it looks like it's ok but in fact it's not. I'm not changing that format though because printing the command as a Python list is not useful outside of this specific situation.
-
Guray Ozen authored
This PR add `TmaDescriptorBuilder` - class simplifies TMA generation. - Makes the code ready to support various Tma configurations - removes strings and use the enums from `mlir.nvgpu.ENUMs`. - Example "swizzle = swizzle_128b, l2promo=none, oob=zero, interleave=none" to enums in `mlir.nvgpu` dialects. - Enums have string equivalent that are used during the IR writing and generation (see `TmaDescriptorBuilder::tensormap_descriptor_ty`). - Improves readability and abstracts out TMA descriptor builders in reusable component. --------- Co-authored-by:Manish Gupta <manigupta@google.com>
-
Jie Fu authored
llvm-project/clang/lib/Serialization/ASTWriter.cpp:5077:59: error: lambda capture 'SemaRef' is not used [-Werror,-Wunused-lambda-capture] auto AddEmittedDeclRefOrZero = [this, &SemaDeclRefs, &SemaRef](Decl *D) { ~~~^~~~~~~ 1 error generated. -
Durgadoss R authored
The first argument to the nvvm_shfl_sync_* family of intrinsics is the thread_mask (aka member_mask). This patch renames the corresponding operand in the Op to reflect the same i.e. `dst` -> `thread_mask`. While we are there, add summary and description for this Op. Signed-off-by:Durgadoss R <durgadossr@nvidia.com>
-
Chuanqi Xu authored
module purview For, ``` export module A; static int impl() { ... } export int func() { return impl(); } ``` Previously, even with reduced BMI, the function `impl` will be emitted into the BMI. After the patch, the static entities in module purview won't get emitted eagerly. Now the static entities may only be emitted if required. Note that, this restriction is actually more relaxed than the language standard required. The language spec said, the program is ill-formed if any TU-local entities get exposed. However, we can't do this since there are many static entities in the headers of existing libraries. Forbidding that will cause many existing program fail immediately. Another note here is, we can't do this for non-static non-exported entities, they can be used for other module units within the same module. -
Isha Agarwal authored
Updated cet test to: -Check different modules based on different cet options -Added negative tests also --------- Signed-off-by:Isha Agarwal <isha.agarwal@intel.com>
-
Pavel Labath authored
It breaks expression evaluation on arm, and the x86 breakage has been fixed in 6cea7c49. This reverts commit 915c84b1.
-
Guray Ozen authored
-
martinboehme authored
Reverts llvm/llvm-project#88865 There were failing tests in the CI that I didn't notice. Sorry.
-
Pierre van Houtryve authored
We take the terminator from EntryBB and put it in ComputeEnd. Make sure we also move the DT edges, we previously only did it assuming a non-conditional branch. Fixes SWDEV-453943
-
martinboehme authored
See also discussion in #88726.
-
Mike Weller authored
Fix `bugprone-forwarding-reference-overload` so it doesn't report a constructor that is deleted.
-
Nikita Popov authored
Fix build after 1baa3850.
-
Nikita Popov authored
In #88217 a large set of matchers was changed to only accept poison values in splats, but not undef values. This is because we now use poison for non-demanded vector elements, and allowing undef can cause correctness issues. This patch covers the remaining matchers by changing the AllowUndef parameter of getSplatValue() to AllowPoison instead. We also carry out corresponding renames in matchers. As a followup, we may want to change the default for things like m_APInt to m_APIntAllowPoison (as this is much less risky when only allowing poison), but this change doesn't do that. There is one caveat here: We have a single place (X86FixupVectorConstants) which does require handling of vector splats with undefs. This is because this works on backend constant pool entries, which currently still use undef instead of poison for non-demanded elements (because SDAG as a whole does not have an explicit poison representation). As it's just the single use, I've open-coded a getSplatValueAllowUndef() helper there, to discourage use in any other places.
-
Chuanqi Xu authored
ASTWrite would write some special records for the consumer of the AST can get the information easily. This is fine. But currently all the special records are written eagerly, which is conflicting with reduced BMI. In reduced BMI, we hope to write things as less as possible. It is not a goal for reduced BMI to retain all the informations. So in this patch we won't record the special declarations eagerly before we starting write. But only writing the sepcial records after we writes decls and types, then only the reached declarations will be collected.
-
Chuanqi Xu authored
ASTWriter::WriteASTCore ASTWriter::WriteASTCore is a big function and slightly hard to read. This patch extracts the logics to force emitting special declarations and writing special records for these declarations into member functions. This is helpful to improve the readability and also helpful for the following patch to write special declarations lazily.
-
Dmitrii Agibov authored
-
Vassil Vassilev authored
Fixes #56517.
-
Timm Bäder authored
This can happen in C.
-
Andreas Jonson authored
Rename has/dropPoisonGeneratingFlagsOrMetadata to has/dropPoisonGeneratingAnnotations and make it also handle nonnull, align and range return attributes on calls, similar to the existing handling for !nonnull, !align and !range metadata.
-
Craig Topper authored
-
Timm Bäder authored
Fixes the Codegen/CSKY/csky-hard-abi.c test
-
Nikita Popov authored
-
Nikita Popov authored
The llvm.smix should be llvm.smin.
-
Fraser Cormack authored
We need clang and llvm to build in-tree.
-
Fraser Cormack authored
-
Fraser Cormack authored
Building the libclc project in-tree with debug tools can be very slow. This commit adds an option for a user to specify a dierctory from which to import (e.g., release-built) tools. All tools required by the project must be imported from the same location, for simplicity. Original patch downstream authored by @jchlanda.
-
Fraser Cormack authored
This should make it more obvious it applies only to libclc.
-
Fraser Cormack authored
This tool now behaves like the others, for consistency.
-
Aiden Grossman authored
This patch updates the FAQ and lexicon links under design overview to actually work instead of being incomplete and thus completely missing from the output.
-
Timm Baeder authored
We always capitalize bitfield as "BitField".
-