- Apr 06, 2023
-
-
Yeting Kuo authored
Also the patch loose the fixed vector contraint in llvm/lib/IR/Verifier.cpp. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D147380
-
Matthias Springer authored
These ops are useful for unit testing. (They do not fold/canonicalize with affine.apply etc.) Differential Revision: https://reviews.llvm.org/D145696
-
Craig Topper authored
Differential Revision: https://reviews.llvm.org/D147643
-
Matthias Springer authored
Differential Revision: https://reviews.llvm.org/D145695
-
Matthias Springer authored
Differential Revision: https://reviews.llvm.org/D145694
-
Maryam Moghadas authored
This patch is to fix the xxperm vector operand swap condition so that the single-use operand is in V2 to prevent copying, it also fixes the subtarget condition to exploit the xpperm. Reviewed By: stefanp Differential Revision: https://reviews.llvm.org/D146632
-
Matthias Springer authored
Ops can implement this interface to specify lower/upper bounds for their result values and block arguments. Bounds can be specified for: * Index-type values * Dimension sizes of shapes values The bounds are added to a constraint set. Users can query this constraint set to compute bounds wrt. to a user-specified set of values. Only EQ bounds are supported at the moment. This revision also contains interface implementations for various tensor dialect ops, which illustrates how to implement this interface. Differential Revision: https://reviews.llvm.org/D145681
-
Philip Reames authored
This adds coverage for the code change in 27b6ddbf.
-
Philip Reames authored
-
Yaxun (Sam) Liu authored
The compiler-rt library path can be either {resource_dir}/lib/{triple} or {resource_dir}/lib/{OS}/{arch} depending on whether LLVM_ENABLE_PER_TARGET_RUNTIME_DIR_default is ON or OFF. Currently, the rpath added by -rtlib-add-rpath only adds the latter. This patch checks both and adds the one that exists. Reviewed by: Fangrui Song Differential Revision: https://reviews.llvm.org/D146686 -
Jim Ingham authored
We were checking "WasTheLastResumeForUserExpression" but that returns true even if that expression was completed, provided we haven't run again. This uses a better check. This is actually fairly hard to trigger. It happens the first time you hit an objc_exception_throw breakpoint and invoke that frame recognizer for that. But I couldn't trigger it using a Python based frame recognizer. So I wrote a test for the objc_exception_throw_breakpoint recognizer which should have been there anyway... It fails (the target auto-continues) w/o this patch and succeeds with it. Differential Revision: https://reviews.llvm.org/D147587
-
Nico Weber authored
-
Chia-hung Duan authored
This reverts commit 41514770.
-
Chia-hung Duan authored
Differential Revision: https://reviews.llvm.org/D147667
-
Vitaly Buka authored
We don't lock allocator for this call.
-
Vitaly Buka authored
Asan and lsan use non-locked version as well. IgnoreObjectLocked name is missleading.
-
Aart Bik authored
Reviewed By: Peiming Differential Revision: https://reviews.llvm.org/D147576
-
Ilia Kuklin authored
Implement emission of DWARF CFI instructions for MSP430. This includes descriptions of stack frame layout and location of callee-saved registers that could be used for backtracing. Differential Revision: https://reviews.llvm.org/D146966
-
Dávid Bolvanský authored
-
Bill Wendling authored
This makes the two interfaces for designators more similar so that it's easier to merge them together in a future refactoring. Differential Revision: https://reviews.llvm.org/D147580
-
Richard Smith authored
This is important to break deserialization cycles, where a lambda in a default member initializer can refer to the field as its context declaration, and the initializer of the field can refer back to the lambda. This is a follow-up to bc73ef00, which applied the same fix to variable declarations for the same reason.
-
Matt Arsenault authored
This was assuming all register operands were assigned to physical registers. This should ignore the operands which weren't assigned in this run. Fixes #61134
-
Aart Bik authored
Reviewed By: Peiming Differential Revision: https://reviews.llvm.org/D147571
-
Han Zhu authored
-
Dávid Bolvanský authored
-
Jeff Byrnes authored
-
Ziqing Luo authored
This commit relands 87b5807d, where a test fails on a few specific targets. Now hard-code a target for the test.
-
V Donaldson authored
Modify code generation for assigned gotos to generate a runtime error for most cases that violate F90 Clause 8.2.4, rather than treating a nonconformant GOTO as a nop. For example, generate a runtime error for a GOTO that attempts to branch to a label for a FORMAT statement. Relax the requirement that an assigned GOTO with a label list must branch to a label in the list, and instead allow a branch to any valid assigned GOTO target in scope.
-
Jon Phillips authored
The previous implementation of the option corrupted the parenthesis state stack. (See https://reviews.llvm.org/D102706.) Fixes #55708. Fixes #53212. Fixes #52846. Fixes #59954. Differential Revision: https://reviews.llvm.org/D146042
-
Chia-hung Duan authored
Reviewed By: cferris Differential Revision: https://reviews.llvm.org/D146570
-
Chia-hung Duan authored
Replace the uses of raw map()/unmap(), .etc calls with MemMap. Also remove the direct use of MapPlatformData in the secondary allocator. Also add setMemoryPermission() in MemMap. Reviewed By: cryptoad Differential Revision: https://reviews.llvm.org/D146454
-
Chia-hung Duan authored
Introduce a new data structure to manage the allocated pages from the system. This is meant to deprecate certain memory system call wrappers in Scudo, e.g., map()/unmap(). Besides, we would like to make MapPlatformData to be appeared in platform specific data structure only. Given that there are several allocators in Scudo and each of them has different way of page management. The deprecation will be done in several CLs. In this commit, we start from SizeClassAllocator64. Reviewed By: cferris Differential Revision: https://reviews.llvm.org/D146009
-
Jon Chesterfield authored
Pass disabled since approximately D104962 for miscompiling openmp The functions under ReplaceConstant miscompile phis as noted in D112717 and have no users in tree other than the disabled pass. It seems likely it has no users out of tree. Deletes the test cases associated with the disabled pass as well. Reviewed By: rampitec Differential Revision: https://reviews.llvm.org/D147586
-
Justin Lebar authored
threadIdx.x and similar functions never return undef. Simple enough to say, but why does it matter? Consider the following IR that reads threadIdx.x and blockIdx.x. %a = call i32 @llvm.nvvm.read.ptx.sreg.ctaid.x(), !range !138 %b = call i32 @llvm.nvvm.read.ptx.sreg.tid.x(), !range !139 %c = shl nuw nsw i32 %a, 6 %linear_index = or i32 %c, %b %linear_index.fr = freeze i32 %linear_index If %a or %b may be undef, then computeKnownBits will not recurse through the freeze instruction. Therefore we will not know anything about the known bits of linear_index.fr, even though we have range metadata! Bad Things fall out of this. Differential Revision: https://reviews.llvm.org/D147589
-
Valentin Clement authored
Keep the extended value when lowering optional assumed type dummy argument. The extended value is needed to lower correctly the rest of the code. Reviewed By: PeteSteinfeld, jeanPerier Differential Revision: https://reviews.llvm.org/D147575
-
Joseph Huber authored
Summary: If the target for these tools doesn't exist we should simply assume that they will be provided externally. This allows building `libc` standalone with an external installation of `clang`.
-
Matthew Voss authored
The format of the LTO debug options generated for orbis-ld changed, breaking this test. https://lab.llvm.org/buildbot/#/builders/230/builds/11367
-
Alexey Lapshin authored
Not all platform support C++11 thread_local. Use portable LLVM_THREAD_LOCAL macro instead. Differential Revision: https://reviews.llvm.org/D147649
-
Joseph Huber authored
The OpenMP offloading device runtime depends on multiple tools. We should ensure that these tools are build before invoking the OpenMP build. Reviewed By: tra Differential Revision: https://reviews.llvm.org/D147654
-
Joseph Huber authored
The packaged version of the `libc` library does not depend on the CUDA installation because it only uses `clang` and emits LLVM-IR. However, for testing we directly need the CUDA toolkit to emit and execute the files. This patch explicitly passes `--cuda-path` to the relevant compilations for NVPTX testing. Reviewed By: tra Differential Revision: https://reviews.llvm.org/D147653
-