- Nov 23, 2022
-
-
Kito Cheng authored
Introduce a RVVTypeCache to hold the cache instead of using a local static variable to maintain a cache. Also made construct of RVVType to private, make sure that could be only created by a cache manager. Reviewed By: sammccall Differential Revision: https://reviews.llvm.org/D138429
-
Akshay Baviskar authored
Adds RegionBranchOpInterface for AffineIf Op and tests it using buffer deallocation pass. Reviewed By: bondhugula Differential Revision: https://reviews.llvm.org/D130962
-
Matthias Springer authored
CollapseShapeOp/ExpandShapeOp that do not change the rank (or increase/reduce it) are invalid. Differential Revision: https://reviews.llvm.org/D138498
-
Nicolas Vasilache authored
This revision refactors and cleans up a bunch of infra related to vector, shapes and indexing into more reusable APIs. Differential Revision: https://reviews.llvm.org/D138501
-
Max Kazantsev authored
-
WuXinlong authored
This patch add the instructions of Zcf extension. Zcf is a subset of C Ext which include the single-precision floating-point instructions. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D134176
-
Tom Stellard authored
Reviewed By: mgorny Differential Revision: https://reviews.llvm.org/D137854
-
Michał Górny authored
Fix Findzstd CMake to handle shared libraries on OpenBSD correctly. This userland does not use shared library symlinks without SOVERSION, so the result of find_library() does not ever end with zstd_SHARED_LIBRARY_SUFFIX. To work around this, reverse the logic to compare the result against zstd_STATIC_LIBRARY_SUFFIX and assume shared library otherwise. While at it, fix the conditions not to fall back to "result is static library" path if it actually was recognized as a shared library but zstd_shared target already existed. Fixes #59056 Differential Revision: https://reviews.llvm.org/D138361
-
Fangrui Song authored
We can add .riscv.attributes synthetic section here in the future.
-
Philip Reames authored
Most of the code for this was taken from https://reviews.llvm.org/D133552, with one bug fix by me. I'm landing the plumbing so that we can focus on the cost model pieces in the review.
-
Daniel Rodríguez Troitiño authored
The exports trie used to be pointed by the information in LC_DYLD_INFO, but when chained fixups are present, the exports trie is pointed by LC_DYLD_EXPORTS_TRIE instead. Modify ObjCopy code to calculate the right offset and size needed depending on the existence of LC_DYLD_INFO or LC_DYLD_EXPORTS_TRIE, read the exports from either of those places, and write the export information as pointed to either of those places. Depends on D134571. Reviewed By: alexander-shaposhnikov Differential Revision: https://reviews.llvm.org/D137879
-
Matt Arsenault authored
-
Matt Arsenault authored
Equality is directly stated as true in the LangRef, and I believe this works for every compare type.
-
Matt Arsenault authored
-
Haohai Wen authored
Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D138485
-
Ruiling Song authored
global/scratch_load will return in order they are issued. No need to insert a s_waitcnt for WAW hazard. Reviewed By: foad Differential Revision: https://reviews.llvm.org/D138476
-
Daniel Rodríguez Troitiño authored
The exports trie used to be pointed by the information in LC_DYLD_INFO, but when chained fixups are present, the exports trie is pointed by LC_DYLD_EXPORTS_TRIE instead. Modify the Object library to give access to the information pointed by each of the load commands, and to fallback from one into the other when the exports are requested. Modify ObjectYAML to support dumping the export trie when pointed by LC_DYLD_EXPORTS_TRIE and to parse the existence of a export trie also when the load command is present. This is a split of D134250 with improvements on top. Reviewed By: alexander-shaposhnikov Differential Revision: https://reviews.llvm.org/D134571
-
Phoebe Wang authored
This fixes #58685 Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D138428
-
Xiang Li authored
Fix build error caused by createPrintModulePass moving to diffrent header.
-
Ben Shi authored
A scalar which exceeds 4 bytes should be returned via stack, other than via registers, on an AVRTiny device. Reviewed By: aykevl Differential Revision: https://reviews.llvm.org/D138201
-
Nico Weber authored
config.llvm_plugin_ext is used by lit to set the %pluginext substitution. bolt's tests don't use %pluginext, so they don't need to set config.llvm_plugin_ext. Differential Revision: https://reviews.llvm.org/D138325
-
chenglin.bi authored
or (xor x, y), x --> or x, y or (xor x, y), y --> or x, y or (xor x, y), (and x, y) --> or x, y or (xor x, y), (or x, y) --> or x, y Reviewed By: foad Differential Revision: https://reviews.llvm.org/D138401
-
Fangrui Song authored
GCC only defines `__ppc64__` for darwin while the darwin support has been removed from llvm-project. The existence of `__ppc64__` makes some software think we are compiling for big-endian PowerPC Mac; also it lures users to write code which is not portable to GCC. It is straightforward if a distro wants to keep the macro: add `-D__ppc64__=1` to a Clang configuration file. Reviewed By: thesamesam, nemanjai Differential Revision: https://reviews.llvm.org/D137511
-
Peiming Liu authored
Differential Revision: https://reviews.llvm.org/D138533
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Fangrui Song authored
This relands the ODR indicator part of D138095 (reverted by 06c74b5e): a `__odr_asan_gen_*` symbol should use a mangled name as its associated symbol does.
-
Alexander Yermolovich authored
Now that BOLT supports DWARF5 re-enabling it for these two tests. This is update to https://reviews.llvm.org/D125366 Reviewed By: rafauler Differential Revision: https://reviews.llvm.org/D138338
-
Fangrui Song authored
Broke 2/3 tests on macOS which seem to be related to `free(demangled_name)` in DemangleCXXABI.
-
Roman Lebedev authored
Otherwise, `compiler-rt/test/asan/TestCases/pr33372.cpp` fails with an assertion: ``` clang-16: /repositories/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:11988: void llvm::SelectionDAG::createOperands(llvm::SDNode *, ArrayRef<llvm::SDValue>): Assertion `SDNode::getMaxNumOperands() >= Vals.size() && "too many operands to fit into SDNode"' failed. ``` I'm not sure if this should be even more conservative, or if we have a named constant for this in middle-end.
-
Ayke van Laethem authored
These macros are defined in avr-gcc and are useful when working with assembly. For example, startup code needs to copy the contents of .data from flash to RAM, but should use elpm (instead of lpm) on devices with more than 64kB flash. Without __AVR_HAVE_ELPM__, there is no way to know whether the elpm instruction is supported. This partially fixes https://github.com/llvm/llvm-project/issues/56157. Differential Revision: https://reviews.llvm.org/D137572
-
Peiming Liu authored
Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D138173
-
Peiming Liu authored
Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D138172
-
Peiming Liu authored
Reviewed By: aartbik Differential Revision: https://reviews.llvm.org/D138171
-
Zequan Wu authored
-
Roman Lebedev authored
Now, there's a big caveat here - these bytes are abstract bytes, not the i8 we have in LLVM, so strictly speaking this is not exactly legal, see e.g. https://github.com/AliveToolkit/alive2/issues/860 ^ the "bytes" "could" have been a pointer, and loading it as an integer inserts an implicit ptrtoint. But at the same time, InstCombine's `InstCombinerImpl::SimplifyAnyMemTransfer()` would expand a memtransfer of 1/2/4/8 bytes into integer-typed load+store, so this isn't exactly a new problem. Note that in memory, poison is byte-wise, so we really can't widen elements, but SROA seems to be inconsistent here. Fixes #59116.
-
Roman Lebedev authored
-
Roman Lebedev authored
-
Roman Lebedev authored
-
David Blaikie authored
Looks like std::conditional wasn't included in 14d48692 (& maybe other typedefs that should be using this technique either got missed or have regressed since that change was made) This was noticed by a 1.4% clang.dwp regression due to f4fb72e6 introducing more instantiations of std::conditional - this change reduces that regression to 0.6% at least. I'm also looking at other instantiations caused by that change that might be able to be addressed - but a quick grep shows ~200 "type" typedefs missing _LIBCPP_NODEBUG, so maybe a systematic application of the typedef might be suitable? Differential Revision: https://reviews.llvm.org/D131082
-