Commit
7b64a590600645234412bce8cb6becf45f276de4
by tlivelyReland "[WebAssembly][InstrEmitter] Foundation for multivalue call lowering"
This reverts commit 649aba93a27170cb03a4b17c98a19b9237a880b8, now that the approach started there has been shown to be workable in the patch series culminating in https://reviews.llvm.org/D74192.
|
 | llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h |
 | llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp |
 | llvm/lib/Target/WebAssembly/WebAssemblyISD.def |
 | llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp |
 | llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp |
 | llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h |
 | llvm/include/llvm/Target/TargetMachine.h |
 | llvm/lib/CodeGen/PrologEpilogInserter.cpp |
 | llvm/lib/Target/WebAssembly/WebAssemblyInstrCall.td |
 | llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.h |
 | llvm/test/CodeGen/WebAssembly/multivalue.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp |
Commit
d51910967fd34ca6462dc2211cb954d22367da9b
by tlivelyReland "[WebAssembly] Split and recombine multivalue calls for ISel"
This reverts commit 8acedb595d039f68ad15f9e5f2e6cb79729307e4 and relands a prerequisite for the patch series culminating in https://reviews.llvm.org/D74192.
|
 | llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp |
 | llvm/lib/Target/WebAssembly/WebAssemblyInstrCall.td |
 | llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp |
Commit
9d37f5afac4a3b9194b9001bed84f58ca8bd6c02
by tlively[WebAssembly] Implement multivalue call_indirects
Summary: Unlike normal calls, call_indirects have immediate arguments that caused a MachineVerifier failure without a small tweak to loosen the verifier's requirements for variadicOpsAreDefs instructions.
One nice thing about the new call_indirects is that they do not need to participate in the PCALL_INDIRECT mechanism because their post-isel hook handles moving the function pointer argument and adding the flags and typeindex arguments itself.
Reviewers: aheejin
Subscribers: dschuff, sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74191
|
 | llvm/lib/Target/WebAssembly/WebAssemblyInstrCall.td |
 | llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp |
 | llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp |
 | llvm/test/CodeGen/WebAssembly/multivalue.ll |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h |
 | llvm/lib/CodeGen/MachineVerifier.cpp |
 | llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp |
Commit
2c8ee5329bb1ff44ac5d827e3767b2e6ebdaf806
by daniel_l_sandersFix assertion on `!eq(?, 0)`
Instead of asserting, emit a proper error message
|
 | llvm/test/TableGen/eq-unset.td |
 | llvm/lib/TableGen/TGParser.cpp |
Commit
236fcbc21a7a88724240e818653fbb328a24bfbb
by rnkAdd coding standard recommending use of qualifiers in cpp files
There is prior art for this in the code base itself, and a recent example of this here: c45f8d49897f
This came up in discussion on this review where @maskray was going the opposite direction: https://reviews.llvm.org/D68772
Given that there is disagreement, we should make a choice and document it.
Thanks to John McCall for the precise wording.
Reviewed By: MaskRay, rjmccall
Differential Revision: https://reviews.llvm.org/D74515
|
 | llvm/docs/CodingStandards.rst |
Commit
cf4574299a279beeb8acb894583962ec0f41286c
by sidneym[hexagon] Fix testcase issue with windows builder.
|
 | clang/test/Driver/hexagon-toolchain-elf.c |
Commit
0c2b09a9b6246aebd301ad75b5d78ac1e7daa9c4
by rnk[IR] Lazily number instructions for local dominance queries
Essentially, fold OrderedBasicBlock into BasicBlock, and make it auto-invalidate the instruction ordering when new instructions are added. Notably, we don't need to invalidate it when removing instructions, which is helpful when a pass mostly delete dead instructions rather than transforming them.
The downside is that Instruction grows from 56 bytes to 64 bytes. The resulting LLVM code is substantially simpler and automatically handles invalidation, which makes me think that this is the right speed and size tradeoff.
The important change is in SymbolTableTraitsImpl.h, where the numbering is invalidated. Everything else should be straightforward.
We probably want to implement a fancier re-numbering scheme so that local updates don't invalidate the ordering, but I plan for that to be future work, maybe for someone else.
Reviewed By: lattner, vsk, fhahn, dexonsmith
Differential Revision: https://reviews.llvm.org/D51664
|
 | llvm/lib/Analysis/AliasAnalysis.cpp |
 | llvm/lib/Analysis/CaptureTracking.cpp |
 | llvm/lib/Analysis/MemoryDependenceAnalysis.cpp |
 | llvm/lib/Analysis/CMakeLists.txt |
 | llvm/lib/IR/SymbolTableListTraitsImpl.h |
 | llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp |
 | llvm/unittests/Analysis/CMakeLists.txt |
 | llvm/lib/Target/ARM/ARMParallelDSP.cpp |
 | llvm/include/llvm/Analysis/AliasAnalysis.h |
 | llvm/include/llvm/Analysis/OrderedInstructions.h |
 | llvm/unittests/IR/BasicBlockTest.cpp |
 | llvm/lib/Analysis/InstructionPrecedenceTracking.cpp |
 | llvm/lib/IR/Instruction.cpp |
 | llvm/utils/gn/secondary/llvm/lib/Analysis/BUILD.gn |
 | llvm/include/llvm/Analysis/CaptureTracking.h |
 | llvm/include/llvm/Analysis/OrderedBasicBlock.h |
 | llvm/lib/Analysis/OrderedBasicBlock.cpp |
 | llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h |
 | llvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn |
 | llvm/lib/IR/BasicBlock.cpp |
 | llvm/unittests/Analysis/CaptureTrackingTest.cpp |
 | llvm/include/llvm/IR/BasicBlock.h |
 | llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp |
 | llvm/unittests/Analysis/OrderedBasicBlockTest.cpp |
 | llvm/include/llvm/IR/Instruction.h |
 | llvm/lib/Analysis/OrderedInstructions.cpp |
Commit
b91d9ec0bb8caedcdd1ddf0506fc19d6c55efae3
by aditya_nandakumar[GlobalISel]: Fix some non determinism exposed in CSE due to not notifying observers about mutations + add verification for CSE
https://reviews.llvm.org/D67133
While investigating some non determinism (CSE doesn't produce wrong code, it just doesn't CSE some times) in GISel CSE on an out of tree target, I realized that the core issue was that there were lots of code that mutates (setReg, setRegClass etc), but doesn't notify observers (CSE in this case but this could be any other observer). In order to make the Observer be available in various parts of code and to avoid having to thread it through various API, the MachineFunction now has the observer as field. This allows it to be easily used in helper functions such as constrainOperandRegClass. Also added some invariant verification method in CSEInfo which can catch these issues (when CSE is enabled).
|
 | llvm/include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h |
 | llvm/include/llvm/CodeGen/MachineFunction.h |
 | llvm/lib/CodeGen/GlobalISel/Utils.cpp |
 | llvm/lib/CodeGen/GlobalISel/Legalizer.cpp |
 | llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h |
 | llvm/lib/CodeGen/GlobalISel/CSEInfo.cpp |
 | llvm/lib/CodeGen/GlobalISel/GISelChangeObserver.cpp |
 | llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp |
Commit
52861809994c9199ceb45b98d982ab736a376e67
by tlively[WebAssembly] Fix RegStackify and ExplicitLocals to handle multivalue
Summary: There is still room for improvement in the handling of multivalue nodes in both passes, but the current algorithm is at least correct and optimizes some simpler cases. In order to make future optimizations of these passes easier and build confidence that the current algorithms are correct, this CL also adds a script that automatically and exhaustively generates interesting multivalue test cases.
Reviewers: aheejin, dschuff
Subscribers: sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D72902
|
 | llvm/test/CodeGen/WebAssembly/multivalue-stackify.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp |
 | llvm/test/CodeGen/WebAssembly/multivalue-stackify.py |
 | llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp |
 | llvm/test/CodeGen/WebAssembly/multivalue.ll |
Commit
e28d9bae4b3be60e90daa69a2eeb3254c952e051
by richardPR44958: Allow member calls and typeid / dynamic_cast on mutable objects and objects with mutable subobjects.
The standard wording doesn't really cover these cases; accepting all such cases seems most in line with what we do in other cases and what other compilers do. (Essentially this means we're assuming that objects external to the evaluation are always in-lifetime.)
|
 | clang/lib/AST/ExprConstant.cpp |
 | clang/test/SemaCXX/constant-expression-cxx2a.cpp |
Commit
1f441342433dc39f691ded7821126b8d2a59df88
by rnkFix NDEBUG build after instruction ordering
|
 | llvm/include/llvm/IR/BasicBlock.h |
Commit
8b9cb120812449dbe67d2252ebf619c4c9cac816
by ndesaulniers[Driver] -pg -mfentry should respect target specific decisions for -mframe-pointer=all
Summary: $ clang -O2 -pg -mfentry foo.c
was adding frame pointers to all functions. This was exposed via compiling the Linux kernel for x86_64 with CONFIG_FUNCTION_TRACER enabled.
-pg was unconditionally setting the equivalent of -fno-omit-frame-pointer, regardless of the presence of -mfentry or optimization level. After this patch, frame pointers will only be omitted at -O0 or if -fno-omit-frame-pointer is explicitly set for -pg -mfentry.
See also: https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=3c5273a96ba8dbf98c40bc6d9d0a1587b4cfedb2;hp=c9d75a48c4ea63ab27ccdb40f993236289b243f2#patch2 (modification to ix86_frame_pointer_required())
Fixes: pr/44934
Reviewers: void, manojgupta, dberris, MaskRay, hfinkel
Reviewed By: MaskRay
Subscribers: cfe-commits, llozano, niravd, srhines
Tags: #clang
Differential Revision: https://reviews.llvm.org/D74698
|
 | clang/test/Driver/mfentry.c |
 | clang/lib/Driver/ToolChains/Clang.cpp |
Commit
ca9ba76481f1d2bf1bcf488e235f89847f39c6a4
by tlively[WebAssembly] Replace all calls with generalized multivalue calls
Summary: Extends the multivalue call infrastructure to tail calls, removes all legacy calls specialized for particular result types, and removes the CallIndirectFixup pass, since all indirect call arguments are now fixed up directly in the post-insertion hook.
In order to keep supporting pretty-printed defs and uses in test expectations, MCInstLower now inserts an immediate containing the number of defs for each call and call_indirect. The InstPrinter is updated to query this immediate if it is present and determine which MCOperands are defs and uses accordingly.
Depends on D72902.
Reviewers: aheejin
Subscribers: dschuff, mgorny, sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74192
|
 | llvm/test/DebugInfo/WebAssembly/dbg-value-move-reg-stackify.mir |
 | llvm/lib/Target/WebAssembly/WebAssemblyPeephole.cpp |
 | llvm/test/CodeGen/WebAssembly/tailcall.ll |
 | llvm/test/CodeGen/WebAssembly/multivalue.ll |
 | llvm/test/CodeGen/WebAssembly/reg-stackify.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td |
 | llvm/test/CodeGen/WebAssembly/signext-arg.ll |
 | llvm/test/MC/WebAssembly/basic-assembly.s |
 | llvm/test/CodeGen/WebAssembly/atomic-fence.mir |
 | llvm/test/CodeGen/WebAssembly/global.ll |
 | llvm/test/CodeGen/WebAssembly/libcalls.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp |
 | llvm/test/MC/WebAssembly/weak-alias.s |
 | llvm/test/CodeGen/WebAssembly/unsupported-function-bitcasts.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyMemIntrinsicResults.cpp |
 | llvm/test/CodeGen/WebAssembly/call-pic.ll |
 | llvm/test/CodeGen/WebAssembly/mem-intrinsics.ll |
 | llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll |
 | llvm/lib/Target/WebAssembly/CMakeLists.txt |
 | llvm/test/CodeGen/WebAssembly/unused-argument.ll |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.h |
 | llvm/test/CodeGen/WebAssembly/f16.ll |
 | llvm/test/CodeGen/WebAssembly/byval.ll |
 | llvm/lib/Target/WebAssembly/WebAssembly.h |
 | llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp |
 | llvm/test/CodeGen/WebAssembly/lower-global-dtors.ll |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h |
 | llvm/test/CodeGen/WebAssembly/returned.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyCallIndirectFixup.cpp |
 | llvm/test/CodeGen/WebAssembly/call.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp |
 | llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp |
 | llvm/test/CodeGen/WebAssembly/f32.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp |
 | llvm/test/CodeGen/WebAssembly/function-bitcasts.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp |
 | llvm/test/CodeGen/WebAssembly/simd-unsupported.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp |
 | llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj-options.ll |
 | llvm/test/DebugInfo/WebAssembly/dbg-value-move-clone.mir |
 | llvm/test/CodeGen/WebAssembly/return-address-emscripten.ll |
 | llvm/test/CodeGen/WebAssembly/llround-conv-i32.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyISD.def |
 | llvm/lib/Target/WebAssembly/WebAssemblyInstrCall.td |
 | llvm/test/CodeGen/WebAssembly/frem.ll |
 | llvm/test/MC/WebAssembly/reloc-code.ll |
 | llvm/test/CodeGen/WebAssembly/exception.ll |
 | llvm/test/CodeGen/WebAssembly/f64.ll |
 | llvm/test/CodeGen/WebAssembly/eh-labels.mir |
Commit
7a4ddfb774aa928c48dd520945f86a918691a604
by llvmgnsyncbot[gn build] Port ca9ba76481f
|
 | llvm/utils/gn/secondary/llvm/lib/Target/WebAssembly/BUILD.gn |
Commit
24ad121582454e625bdad125c90d9ac0dae948c8
by richardAdd -std=c++20 flag, replace C++2a with C++20 throughout the Clang user interface and documentation, and update __cplusplus for C++20.
WG21 considers the C++20 standard to be finished (even though it still has some more steps to pass through in the ISO process).
The old flag names are accepted for compatibility, as usual, and we still have lots of references to C++2a in comments and identifiers; those can be cleaned up separately.
|
 | clang/include/clang/Basic/DiagnosticLexKinds.td |
 | clang/test/Parser/cxx2a-concept-declaration.cpp |
 | clang/include/clang/Basic/DiagnosticGroups.td |
 | clang/test/Preprocessor/init.c |
 | clang/test/CXX/basic/basic.lookup/basic.lookup.unqual/p3.cpp |
 | clang/test/Driver/unknown-std.cpp |
 | clang/test/SemaCXX/cxx1z-constexpr-lambdas.cpp |
 | clang/test/CXX/dcl.decl/dcl.fct.def/dcl.fct.def.default/p1.cpp |
 | clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p4.cpp |
 | clang/test/CXX/dcl.dcl/dcl.attr/dcl.attr.nodiscard/p2.cpp |
 | clang/test/Lexer/cxx2a-spaceship.cpp |
 | clang/test/Lexer/cxx2a_keyword_as_cxx17.cpp |
 | clang/test/SemaCXX/cxx2a-initializer-aggregates.cpp |
 | clang/include/clang/Basic/LangStandards.def |
 | clang/include/clang/Basic/StmtNodes.td |
 | clang/test/SemaCXX/cxx1z-decomposition.cpp |
 | clang/test/CXX/drs/dr2xx.cpp |
 | clang/www/cxx_status.html |
 | clang/docs/LanguageExtensions.rst |
 | clang/include/clang/Basic/DiagnosticSemaKinds.td |
 | clang/test/CXX/expr/expr.prim/expr.prim.lambda/p8.cpp |
 | clang/test/CXX/drs/dr6xx.cpp |
 | clang/include/clang/Basic/DiagnosticCommonKinds.td |
 | clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3.cpp |
 | clang/test/Parser/explicit-bool.cpp |
 | clang/test/Parser/cxx1z-decomposition.cpp |
 | clang/include/clang/Basic/DiagnosticParseKinds.td |
 | clang/include/clang/Basic/DiagnosticASTKinds.td |
 | clang/test/SemaCXX/cxx2a-compat.cpp |
 | clang/lib/Frontend/InitPreprocessor.cpp |
 | clang/include/clang/Basic/DiagnosticFrontendKinds.td |
 | clang/test/Parser/cxx2a-inline-nested-namespace-definition.cpp |
 | clang/test/SemaCXX/cxx17-compat.cpp |
 | clang/test/SemaCXX/member-init.cpp |
Commit
0d7ff220ed0eeffda3839546ac1f30e98f60128e
by riddleriver[mlir] Refactor TypeConverter to add conversions without inheritance
Summary: This revision refactors the TypeConverter class to not use inheritance to add type conversions. It instead moves to a registration based system, where conversion callbacks are added to the converter with `addConversion`. This method takes a conversion callback, which must be convertible to any of the following forms(where `T` is a class derived from `Type`: * Optional<Type> (T type) - This form represents a 1-1 type conversion. It should return nullptr or `llvm::None` to signify failure. If `llvm::None` is returned, the converter is allowed to try another conversion function to perform the conversion. * Optional<LogicalResult>(T type, SmallVectorImpl<Type> &results) - This form represents a 1-N type conversion. It should return `failure` or `llvm::None` to signify a failed conversion. If the new set of types is empty, the type is removed and any usages of the existing value are expected to be removed during conversion. If `llvm::None` is returned, the converter is allowed to try another conversion function to perform the conversion.
When attempting to convert a type, the TypeConverter walks each of the registered converters starting with the one registered most recently.
Differential Revision: https://reviews.llvm.org/D74584
|
 | mlir/lib/Conversion/StandardToLLVM/ConvertStandardToLLVM.cpp |
 | mlir/include/mlir/Dialect/SPIRV/SPIRVLowering.h |
 | mlir/include/mlir/Transforms/DialectConversion.h |
 | mlir/lib/Dialect/SPIRV/SPIRVLowering.cpp |
 | mlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVM.h |
 | mlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp |
 | mlir/include/mlir/Conversion/LinalgToLLVM/LinalgToLLVM.h |
 | mlir/include/mlir/Support/STLExtras.h |
 | mlir/test/lib/TestDialect/TestPatterns.cpp |
 | mlir/docs/DialectConversion.md |
 | mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp |
 | mlir/lib/Transforms/DialectConversion.cpp |
Commit
ea789f819f26a1b003a1bf07466fc9fa2fe558ec
by tclin914Remove unused option that gcc ignored
Reviewers: efriedma, MaskRay
Reviewed By: efriedma, MaskRay
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D72825
|
 | clang/test/Driver/clang_f_opts.c |
 | clang/include/clang/Driver/Options.td |
Commit
7b76767dbc4b1894c2c7ff397875cb2285e70446
by Jonas Devlieghere[lldb/Core] Remove blatant code duplication by using a template (NFC)
Remove a bunch of duplicate code by using a templated base class.
|
 | lldb/source/Core/PluginManager.cpp |
Commit
492d4a992d88516da471b60ecd9a37ea80dbf9a4
by tclin914[NFC] Update the testcase clang_f_opts.c for the removed options
|
 | clang/test/Driver/clang_f_opts.c |
Commit
bad1389f1252d1b77c5e31f0dadee92eb38d23a1
by Jonas Devlieghere[lldb/Core] Remove dead Get*PluginCreateCallbackForPluginName (NFC)
The plugin manager had dedicated Get*PluginCreateCallbackForPluginName methods for each type of plugin, and only a small subset of those were used. This removes the dead duplicated code.
|
 | lldb/include/lldb/Core/PluginManager.h |
 | lldb/source/Core/PluginManager.cpp |
Commit
a82b63a7411b34e0e6d4e96d4d2c2deaeb266e47
by riddleriver[mlir][DialectConversion] Forward capture callback to fix build on older GCC
Older GCC confuses the type of 'callback' after it gets captured, so add a forward capture to move it properly.
|
 | mlir/include/mlir/Transforms/DialectConversion.h |
Commit
28728bf06f556dc8be5bc1fa7712eeee9906ba68
by echristoFix a signed/unsigned warning promoted to error.
|
 | clang-tools-extra/clang-tidy/readability/RedundantStringCStrCheck.cpp |
Commit
f581e655ec3f34dcd704ffc9586bfb615a459942
by timshen[MLIR] Add std.assume_alignment op.
Reviewers: ftynse, nicolasvasilache, andydavis1
Subscribers: bixia, sanjoy.google, mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, arpith-jacob, mgester, lucyrfox, aartbik, liufengdb, Joonsoo, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74378
|
 | mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td |
 | mlir/lib/Conversion/StandardToLLVM/ConvertStandardToLLVM.cpp |
 | mlir/lib/Dialect/StandardOps/Ops.cpp |
 | mlir/include/mlir/Dialect/StandardOps/Ops.td |
 | mlir/test/Conversion/StandardToLLVM/convert-to-llvmir.mlir |
 | mlir/test/IR/core-ops.mlir |
 | mlir/test/IR/invalid-ops.mlir |
Commit
b762bbd4c86806095a11dbe4d594059bd3fd5bc5
by timshen[MLIR] change NVVM.mma.sync to the most useful variant.
Summary: the .row.col variant turns out to be the popular one, contrary to what I thought as .row.row. Since .row.col is so prevailing (as I inspect cuDNN's behavior), I'm going to remove the .row.row support here, which makes the patch a little bit easier.
Reviewers: ftynse
Subscribers: jholewinski, bixia, sanjoy.google, mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74655
|
 | mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td |
 | mlir/test/Dialect/LLVMIR/nvvm.mlir |
 | mlir/test/Target/nvvmir.mlir |
 | mlir/test/Dialect/LLVMIR/invalid.mlir |
 | mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp |
Commit
05c3907b88a086afb8d7d6ab06cc31786d296464
by aktoonFix test for profile remapper
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74799
|
 | llvm/test/Transforms/SampleProfile/remap.ll |
Commit
061f3a50dd824f1eb2394d0f699f3f2ee374b21a
by richardP0593R6: Pseudo-destructor expressions end object lifetimes.
This only has an observable effect on constant evaluation.
|
 | clang/lib/AST/ExprConstant.cpp |
 | clang/test/CXX/expr/expr.const/p2-0x.cpp |
 | clang/www/cxx_status.html |
 | clang/test/SemaCXX/constant-expression-cxx2a.cpp |
Commit
80c3ea4e633b440cb4bc2c36856d811353e474bb
by Jonas DevlieghereRe-land "[lldb/CMake] Auto-generate the Initialize and Terminate calls for plugin"
This patch changes the way we initialize and terminate the plugins in the system initializer. It uses an approach similar to LLVM's TARGETS_TO_BUILD with a def file that enumerates the plugins.
Previous attempts to land this failed on the Windows bot because there's a dependency between the different process plugins. Apparently ProcessWindowsCommon needs to be initialized after all other process plugins but before ProcessGDBRemote.
Differential revision: https://reviews.llvm.org/D73067
|
 | lldb/source/Plugins/Plugins.def.in |
 | lldb/source/API/SystemInitializerFull.cpp |
 | lldb/source/Plugins/CMakeLists.txt |
 | lldb/tools/lldb-test/SystemInitializerTest.cpp |
Commit
ae738911641660a63a102923c2beb070d6cebf39
by Jonas Devlieghere[lldb/Docs] Update the Windows documentation
Update the build instructions for Windows with my recent experience.
|
 | lldb/docs/resources/build.rst |
Commit
e68205844db3079116c777f34d273149b8b74cad
by Jonas Devlieghere[lldb/Docs] Update the features matrix
Use YES/NO instead of OK, known issues instead of bugs and fix some other small inconsistencies
|
 | lldb/docs/status/status.rst |
Commit
d7db094ef790f16a6252ac83a48958de23851aee
by Jonas Devlieghere[lldb] Move ArchitectureCreateInstance into ldb-private-interfaces
There's no reason this should be the only one living in the PluginManager itself.
|
 | lldb/include/lldb/Core/PluginManager.h |
 | lldb/include/lldb/lldb-private-interfaces.h |
 | lldb/source/Core/PluginManager.cpp |
 | lldb/include/lldb/lldb-forward.h |
Commit
7c4b70402c6679427a5a2d4508355af7d4c61678
by Jonas Devlieghere[lldb] Sort forward declarations in lldb-forward.h
Sort forward declarations alphabetically. Also remove the two LLVM forward declares as they frankly don't belong here.
|
 | lldb/include/lldb/lldb-forward.h |
Commit
26f356350bd56f5418e5fae230b1a6931774c8f1
by modocache[LazyCallGraph] Fix ambiguous index value
After having committed https://reviews.llvm.org/D72226, 2 buildbots running GCC 5.4.0 began failing. The cause was the order in which those compilers evaluated the left- and right-hand sides of the expression `RC.SCCIndices[C] = RC.SCCIndices.size();`. This commit splits the expression into multiple statements to avoid ambiguity, and adds a test case that exercises the code that caused the test failures on those older compilers (which was originally included in the reviewed patch, https://reviews.llvm.org/D72226).
|
 | llvm/lib/Analysis/LazyCallGraph.cpp |
 | llvm/unittests/Analysis/CGSCCPassManagerTest.cpp |
Commit
d840e5452315e69d44cfe44b766e633964681b6a
by maskray[DebugInfo][test] Fix section flags/type to avoid warning/error in the future
A future MC change may add a warning/error when a .section directive specifies incorrect sh_flags/sh_type. Fix the tests to use correct sh_flags/sh_type.
|
 | llvm/test/DebugInfo/X86/dwarfdump-header.s |
 | llvm/test/DebugInfo/X86/dwarfdump-str-offsets.s |
 | llvm/test/tools/llvm-dwarfdump/X86/debug-names-find-dwo.s |
 | llvm/test/DebugInfo/X86/dwarfdump-str-offsets-invalid-6.s |
 | llvm/test/tools/llvm-dwarfdump/X86/typeunit-name.s |
 | llvm/test/DebugInfo/X86/dwarfdump-rnglists.s |
 | llvm/test/DebugInfo/X86/dwarfdump-rnglists-dwarf64.s |
 | llvm/test/DebugInfo/X86/dwarfdump-str-offsets-dwp.s |
 | llvm/test/tools/llvm-dwarfdump/X86/debug_loc_dwo.s |
 | llvm/test/tools/llvm-dwarfdump/X86/eh-frame-return-address-reg.s |
 | llvm/test/tools/llvm-dwarfdump/X86/verify_debug_abbrev.s |
 | llvm/test/DebugInfo/X86/invalid-unit-header.s |
 | llvm/test/DebugInfo/X86/dwarfdump-line-dwo.s |
Commit
a71feda24ea092ec14474216532b3ce9883b81ab
by SourabhSingh.Tomar[DebugInfo]: Added support for DWARFv5 Info section header parsing in llvm-dwp utility.
Summary: This patch teaches llvm-dwp to parse DWARFv5 info section header. Tested this using asm test case caontaining DWARFv5 info. Assemling it to DWO object, checking corresponding content using llvm-dwarfdump. Then finally, packaging it to DWP using llvm-dwp and again checking corresponding content using llvm-dwarfdump.
Reviewers: dblaikie, aprantl, probinson.
Reviewed By: dblaikie.
Differential Revision: https://reviews.llvm.org/D74425
|
 | llvm/test/tools/llvm-dwp/X86/info-v5.s |
 | llvm/test/tools/llvm-dwp/X86/wrong-unit-type-info-v5.s |
 | llvm/tools/llvm-dwp/llvm-dwp.cpp |
Commit
2365238b9d0bc566f2e6dd1f10f0f3cb623292f4
by modocacheRe-land new pass manager coro-split and coro-elide
This re-applies patches https://reviews.llvm.org/D71899 and https://reviews.llvm.org/D71900, which were reverted in https://reviews.llvm.org/rG11053a1cc61 and https://reviews.llvm.org/rGe999aa38d16. The underlying problem that caused two buildbots to fail with these patches is explained in https://reviews.llvm.org/rG26f356350bd -- older compliers disagree with the order in which the left- and right-hand side of an assignment in LazyCallGraph ought to be evaluated, which caused an assertion in SmallVector::operator[] to fire when the test suite was run.
|
 | llvm/test/Transforms/Coroutines/coro-elide.ll |
 | llvm/test/Transforms/Coroutines/coro-split-eh.ll |
 | llvm/test/Transforms/Coroutines/coro-materialize.ll |
 | llvm/lib/Transforms/Coroutines/CoroSplit.cpp |
 | llvm/test/Transforms/Coroutines/coro-split-00.ll |
 | llvm/test/Transforms/Coroutines/coro-split-eh-01.ll |
 | llvm/test/Transforms/Coroutines/coro-split-hidden.ll |
 | llvm/include/llvm/Transforms/Coroutines/CoroSplit.h |
 | llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-00.ll |
 | llvm/test/Transforms/Coroutines/coro-split-dbg.ll |
 | llvm/test/Transforms/Coroutines/coro-split-musttail.ll |
 | llvm/test/Transforms/Coroutines/restart-trigger.ll |
 | llvm/test/Transforms/Coroutines/coro-split-eh-00.ll |
 | llvm/test/Transforms/Coroutines/coro-heap-elide.ll |
 | llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-01.ll |
 | llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-02.ll |
 | llvm/test/Transforms/Coroutines/coro-param-copy.ll |
 | llvm/test/Transforms/Coroutines/no-suspend.ll |
 | llvm/test/Transforms/Coroutines/coro-debug.ll |
 | llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split.ll |
 | llvm/test/Transforms/Coroutines/coro-padding.ll |
 | llvm/test/Transforms/Coroutines/coro-frame-arrayalloca.ll |
 | llvm/test/Transforms/Coroutines/coro-spill-corobegin.ll |
 | llvm/test/Transforms/Coroutines/coro-split-02.ll |
 | llvm/include/llvm/Transforms/Coroutines/CoroElide.h |
 | llvm/lib/Passes/PassRegistry.def |
 | llvm/test/Transforms/Coroutines/coro-alloc-with-param-O0.ll |
 | llvm/test/Transforms/Coroutines/coro-split-musttail1.ll |
 | llvm/test/Transforms/Coroutines/coro-frame.ll |
 | llvm/test/Transforms/Coroutines/coro-alloc-with-param.ll |
 | llvm/test/Transforms/Coroutines/coro-split-alloc.ll |
 | llvm/test/Transforms/Coroutines/coro-frame-unreachable.ll |
 | llvm/test/Transforms/Coroutines/coro-spill-after-phi.ll |
 | llvm/lib/Transforms/Coroutines/CoroElide.cpp |
 | llvm/test/Transforms/Coroutines/coro-alloc-with-param-O2.ll |
 | llvm/lib/Passes/PassBuilder.cpp |
 | llvm/test/Transforms/Coroutines/coro-catchswitch.ll |
Commit
5a187d8ed11fc85365d0d3452a5001a913b2dc4b
by modocache[Coroutines][4/6] New pass manager: coro-cleanup
Summary: Depends on https://reviews.llvm.org/D71900.
The fourth in a series of patches that ports the LLVM coroutines passes to the new pass manager infrastructure. This patch implements 'coro-cleanup'.
No existing regression tests check the behavior of coro-cleanup on its own, so this patch adds one. (A test named 'coro-cleanup.ll' exists, but it relies on the entire coroutines pipeline being run. It's updated to test the new pass manager in the 5th patch of this series.)
Reviewers: GorNishanov, lewissbaker, chandlerc, junparser, deadalnix, wenlei
Reviewed By: wenlei
Subscribers: wenlei, EricWF, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71901
|
 | llvm/include/llvm/Transforms/Coroutines/CoroCleanup.h |
 | llvm/lib/Passes/PassBuilder.cpp |
 | llvm/lib/Transforms/Coroutines/CoroCleanup.cpp |
 | llvm/lib/Passes/PassRegistry.def |
 | llvm/test/Transforms/Coroutines/coro-cleanup-lowering.ll |
Commit
72961071f35a7da7e67ee3c6056b19900e8f28cc
by modocache[Coroutines][5/6] Add coroutine passes to pipeline
Summary: Depends on https://reviews.llvm.org/D71901.
The fifth in a series of patches that ports the LLVM coroutines passes to the new pass manager infrastructure.
The first 4 patches allow users to run coroutine passes by invoking, for example `opt -passes=coro-early`. However, most of LLVM's tests for coroutines use an option, `opt -enable-coroutines`, which adds all 4 coroutine passes to the appropriate legacy pass manager extension points. This patch does the same, but using the new pass manager: when coroutine features are enabled and the new pass manager is being used, this adds the new-pass-manager-compliant coroutine passes to the pass builder's pipeline.
This allows us to run all coroutine tests using the new pass manager (besides those that use the coroutine retcon ABI used by the Swift compiler, which is not yet supported in the new pass manager).
Reviewers: GorNishanov, lewissbaker, chandlerc, junparser, wenlei
Subscribers: wenlei, EricWF, Prazek, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71902
|
 | llvm/tools/opt/NewPMDriver.cpp |
 | llvm/test/Transforms/Coroutines/ex5.ll |
 | llvm/test/Transforms/Coroutines/restart-trigger.ll |
 | llvm/test/Transforms/Coroutines/smoketest.ll |
 | llvm/include/llvm/Passes/PassBuilder.h |
 | llvm/lib/Passes/PassBuilder.cpp |
 | llvm/test/Transforms/Coroutines/coro-cleanup.ll |
 | llvm/test/Transforms/Coroutines/ex3.ll |
 | llvm/test/Transforms/Coroutines/phi-coro-end.ll |
 | llvm/test/Transforms/Coroutines/ArgAddr.ll |
 | llvm/test/Transforms/Coroutines/ex1.ll |
 | llvm/tools/opt/NewPMDriver.h |
 | llvm/test/Transforms/Coroutines/ex4.ll |
 | llvm/test/Transforms/Coroutines/coro-split-01.ll |
 | llvm/tools/opt/opt.cpp |
 | llvm/test/Transforms/Coroutines/ex2.ll |
 | llvm/test/Transforms/Coroutines/ex0.ll |
Commit
048239e46e490d441f21f3e26073ec38f19e8a10
by modocache[Coroutines][6/6] Clang schedules new passes
Summary: Depends on https://reviews.llvm.org/D71902.
The last in a series of six patches that ports the LLVM coroutines passes to the new pass manager infrastructure.
This patch has Clang schedule the new coroutines passes when the `-fexperimental-new-pass-manager` option is used. With this and the previous 5 patches, Clang is capable of building and successfully running the test suite of large coroutines projects such as https://github.com/lewissbaker/cppcoro with `ENABLE_EXPERIMENTAL_NEW_PASS_MANAGER=On`.
Reviewers: GorNishanov, lewissbaker, chandlerc, junparser
Subscribers: EricWF, cfe-commits, llvm-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D71903
|
 | clang/test/CodeGenCoroutines/coro-newpm-pipeline.cpp |
 | clang/lib/CodeGen/BackendUtil.cpp |
Commit
0dbc4658d88ccb321a7b372f4af19bbaa00722fb
by craig.topper[X86] Handle splats in LowerBUILD_VECTORvXi1 by directly emitting scalar selects instead of deferring that to LowerSELECT.
LoweSELECT will detect the constant inputs and convert to scalar selects, but we can do it directly here.
I might remove some of the code from LowerSELECT and move it to DAG combine so doing this explicitly will make us less dependent on it happening in lowering.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
2a095ff6f5028b7612dae50358a2f6939b6cdc9f
by kbobyrev[clangd] Add add commit characters to the server capabilities
Summary: Make it more convinient for the clients to select completion items by providing a set of default characters (punctuation).
Related issue: https://github.com/clangd/clangd/issues/284
Reviewers: sammccall
Reviewed By: sammccall
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D74606
|
 | clang-tools-extra/clangd/ClangdLSPServer.cpp |
 | clang-tools-extra/clangd/test/initialize-params.test |
 | clang-tools-extra/clangd/Protocol.h |
Commit
80b2e3cc531206c6e6f23dcc49b83b9ace641025
by Jonas Devlieghere[lldb/Core] Remove more duplicate code in PluginManager (NFCI)
The PluginManager contains a lot of duplicate code. I already removed a bunch of it by introducing the templated PluginInstance class, and this is the next step. The PluginInstances class combines the mutex and the vector and implements the common operations.
To accommodate plugin instances with additional members it is possible to access the underlying vector and mutex. The methods to query these fields make use of that.
Differential revision: https://reviews.llvm.org/D74816
|
 | lldb/source/Core/PluginManager.cpp |
Commit
f69a29da5a0b650531f3b9476e82a10c23ff55ca
by craig.topper[X86] Remove vXi1 select optimization from LowerSELECT. Move it to DAG combine.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
4921e7919223a785081a13c8a08063e91bae0db8
by kbobyrevFix build after D74606
|
 | clang-tools-extra/clangd/test/initialize-params.test |
Commit
7cbf710396df77e854bbb2611492336c0d37b996
by flo[CGP] Precommit tests for D74228.
|
 | llvm/test/Transforms/CodeGenPrepare/AArch64/overflow-intrinsics.ll |
 | llvm/test/Transforms/CodeGenPrepare/X86/overflow-intrinsics.ll |
Commit
fa6aef44277230adecb541c78a71978172accd5c
by 1.int32[clang-tidy] Added a case to UnconventionalAssignOperatorCheck.
Summary: The check accepts now a `return (*this = something);` as return statement too (beneath of `*this`).
Reviewers: alexfh, hokein, aaron.ballman, JonasToth
Reviewed By: aaron.ballman
Subscribers: xazax.hun, dkrupp, Szelethus, gamesh411, cfe-commits
Tags: #clang, #clang-tools-extra
Differential Revision: https://reviews.llvm.org/D74529
|
 | clang-tools-extra/test/clang-tidy/checkers/misc-unconventional-assign-operator.cpp |
 | clang-tools-extra/clang-tidy/misc/UnconventionalAssignOperatorCheck.cpp |
Commit
92c80529ddb3ae147e9e58aed8d68b4aa2ea2379
by petar.avramovic[MIPS GlobalISel] RegBankSelect G_MERGE_VALUES and G_UNMERGE_VALUES
Consider large operands in G_MERGE_VALUES and G_UNMERGE_VALUES as Ambiguous during regbank selection. Introducing new InstType AmbiguousWithMergeOrUnmerge which will allow us to recognize whether to narrow scalar or use s64:fprb.
This change exposed a bug when reusing data from TypeInfoForMF. Thus when Instr is about to get destroyed (using narrow scalar) clear its data in TypeInfoForMF. Internal data is saved based on Instr's address, and it will no longer be valid. Add detailed asserts for InstType and operand size.
Generate generic instructions instead of MIPS target instructions during argument lowering and custom legalizer. Select G_UNMERGE_VALUES and G_MERGE_VALUES when proper banks are selected: {s32:gprb, s32:gprb, s64:fprb} for G_UNMERGE_VALUES and {s64:fprb, s32:gprb, s32:gprb} for G_MERGE_VALUES. Update tests. One improvement is when floating point argument in gpr(or two gprs) gets passed to another function through gpr unnecessary fpr-to-gpr moves are no longer generated.
Differential Revision: https://reviews.llvm.org/D74623
|
 | llvm/lib/Target/Mips/MipsRegisterBankInfo.h |
 | llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/select.ll |
 | llvm/lib/Target/Mips/MipsLegalizerInfo.cpp |
 | llvm/test/CodeGen/Mips/GlobalISel/instruction-select/sitofp_and_uitofp.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/instruction-select/float_args.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/instruction-select/phi.mir |
 | llvm/lib/Target/Mips/MipsInstructionSelector.cpp |
 | llvm/test/CodeGen/Mips/GlobalISel/regbankselect/sitofp_and_uitofp.mir |
 | llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp |
 | llvm/lib/Target/Mips/MipsCallLowering.cpp |
 | llvm/test/CodeGen/Mips/GlobalISel/legalizer/sitofp_and_uitofp.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/legalizer/select.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/float_args.ll |
 | llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/phi.ll |
 | llvm/test/CodeGen/Mips/GlobalISel/regbankselect/select.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/regbankselect/phi.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/legalizer/phi.mir |
 | llvm/lib/Target/Mips/MipsInstrFPU.td |
 | llvm/test/CodeGen/Mips/GlobalISel/instruction-select/select.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/irtranslator/float_args.ll |
 | llvm/test/CodeGen/Mips/GlobalISel/regbankselect/float_args.mir |
Commit
9ed920444f66a1796c952997d76977549384e201
by pifon[MLIR][Ploops] Add custom builders from ParallelOp and ReduceOp.
Differential Revision: https://reviews.llvm.org/D74708
|
 | mlir/lib/Dialect/LoopOps/LoopOps.cpp |
 | mlir/include/mlir/Dialect/LoopOps/LoopOps.td |
Commit
2bab1738f39606324f7bd4c71de1354288c63285
by Raphael Isemann[lldb] Make TestFormatters.py not rely on working constructor calls
All calls to operator new in this test fail for me with: ``` expression --show-types -- *(new foo(47))` Error output: error: Execution was interrupted, reason: internal c++ exception breakpoint(-6).. The process has been returned to the state before expression evaluation. ```
As calling operator new isn't the idea of this test, this patch moves that logic to the binary with some new_* utility functions and explicitly tests this logic in the constructor test (where we can isolate the failures and skip them on Linux).
|
 | lldb/test/API/lang/cpp/constructors/TestCppConstructors.py |
 | lldb/test/API/commands/expression/formatters/main.cpp |
 | lldb/test/API/commands/expression/formatters/TestFormatters.py |
Commit
b4608efc0b7d0317030ba13daf4833751c5cba64
by Raphael Isemann[lldb][NFC] Add a missing test case to TestCppConstructors.py
|
 | lldb/test/API/lang/cpp/constructors/TestCppConstructors.py |
Commit
785df616807fde4f13738f2fafd978de8202fb12
by Raphael Isemann[lldb] Let TypeSystemClang::GetDisplayTypeName remove anonymous and inline namespaces.
Summary: Currently when printing data types we include implicit scopes such as inline namespaces or anonymous namespaces. This leads to command output like this (for `std::set<X>` with X being in an anonymous namespace):
``` (lldb) print my_set (std::__1::set<(anonymous namespace)::X, std::__1::less<(anonymous namespace)::X>, std::__1::allocator<(anonymous namespace)::X> >) $0 = size=0 {} ```
This patch removes all the implicit scopes when printing type names in TypeSystemClang::GetDisplayTypeName so that our output now looks like this:
``` (lldb) print my_set (std::set<X, std::less<X>, std::allocator<X> >) $0 = size=0 {} ```
As previously GetDisplayTypeName and GetTypeName had the same output we actually often used the two as if they are the same method (they were in fact using the same implementation), so this patch also fixes the places where we actually want the display type name and not the actual type name.
Note that this doesn't touch the `GetTypeName` class that for example the data formatters use, so this patch is only changes the way we display types to the user. The full type name can also still be found when passing '-R' to see the raw output of a variable in case someone is somehow interested in that.
Partly fixes rdar://problem/59292534
Reviewers: shafik, jingham
Reviewed By: shafik
Subscribers: christof, JDevlieghere, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74478
|
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/variant/TestDataFormatterLibcxxVariant.py |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/multimap/TestDataFormatterLibccMultiMap.py |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/tuple/TestDataFormatterLibcxxTuple.py |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/map/TestDataFormatterLibccMap.py |
 | lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/iterator/TestDataFormatterLibccIterator.py |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string/TestDataFormatterLibcxxString.py |
 | lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/forward_list/TestDataFormatterLibcxxForwardList.py |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/queue/TestDataFormatterLibcxxQueue.py |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/set/TestDataFormatterLibcxxSet.py |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/unordered/TestDataFormatterUnordered.py |
 | lldb/test/Shell/SymbolFile/NativePDB/ast-types.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/set/main.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/multiset/TestDataFormatterLibcxxMultiSet.py |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/multiset/main.cpp |
 | lldb/test/API/commands/expression/import-std-module/basic/TestImportStdModule.py |
 | lldb/test/API/commands/expression/import-std-module/conflicts/TestStdModuleWithConflicts.py |
 | lldb/packages/Python/lldbsuite/test/lldbtest.py |
 | lldb/source/DataFormatters/FormatManager.cpp |
 | lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h |
Commit
c41a1f63b3c02039bb6a05f7084bdf95099d7aa9
by flo[DebugInfo] Pass linux triple to tests requiring ELF.
The tests added in D74425/commit a71feda24ea092ec14474216532b3ce9883b81ab fail with an assertion on macOS, as they seem to require ELF support.
Passing a linux triple ensures the object files are using ELF.
This fixes some GreenDragon failures.
|
 | llvm/test/tools/llvm-dwp/X86/info-v5.s |
 | llvm/test/tools/llvm-dwp/X86/wrong-unit-type-info-v5.s |
Commit
51c6e9445cd4d26d0e8243163dfa5a53fbbcbdd4
by david.green[ARM] Extra MVE VADDV reduction patterns
We already make use of the VADDV vector reduction instruction for cases where the input and the output start out at the same type. The MVE instruction however will sum into an i32, so if we are summing a v16i8 into an i32, we can still use the same instructions. In terms of IR, this looks like a sext of a legal type (v16i8) into a very illegal type (v16i32) and a vecreduce.add of that into the result. This means we have to catch the pattern early in a DAG combine, producing a target VADDVs/u node, where the signedness is now important.
This is the first part, handling VADDV and VADDVA. There are also VADDVL/VADDVLA instructions, which are interesting because they sum into a 64bit value. And VMLAV and VMLALV, which are interesting because they also do a multiply of two values. It may look a little odd in places as a result.
On it's own this will probably not do very much, as the vectorizer will not produce this IR yet.
Differential Revision: https://reviews.llvm.org/D74218
|
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/lib/Target/ARM/ARMInstrMVE.td |
 | llvm/test/CodeGen/Thumb2/mve-vecreduce-add.ll |
 | llvm/lib/Target/ARM/ARMISelLowering.h |
Commit
3ed0ce458c3a51b866625ec70e50b0f8556e0d20
by Raphael Isemann[lldb] Put Host/common headers in a module
This directory escaped the modularization effort it seems. Just adding this to the Host module along with the other common headers, which should make this code less likely to break under modules and speed up compilation.
|
 | lldb/include/lldb/module.modulemap |
Commit
a3093bfb3e7c4972e7ff7af1cc38452ec9984e13
by Raphael Isemann[lldb] Let TestCppConstructors pass without fix-it intervention
This should use -> instead of '.', but the fix-it functionality of the expression evaluator saved us here. Let's use the proper syntax in the first place as we don't want to test fix-its here.
|
 | lldb/test/API/lang/cpp/constructors/TestCppConstructors.py |
Commit
6e326882dadd7bde1f23a08c1278918aefd5a9ef
by peter.smith[LLD][ELF][ARM] Fix support for SBREL type relocations
With this patch lld recognizes ARM SBREL relocations. R_ARM*_MOVW_BREL relocations are not tested because they are not used.
Patch by Tamas Petz
Differential Revision: https://reviews.llvm.org/D74604
|
 | lld/test/ELF/arm-mov-relocs.s |
 | lld/ELF/Arch/ARM.cpp |
Commit
faff707db82d7db12fcd9f7826b8741261230e63
by djordje.todorovicReland "[DebugInfo] Enable the debug entry values feature by default"
Differential Revision: https://reviews.llvm.org/D73534
|
 | llvm/lib/CodeGen/MachineFunction.cpp |
 | clang/include/clang/Basic/CodeGenOptions.def |
 | llvm/test/DebugInfo/X86/dbg-value-regmask-clobber.ll |
 | llvm/test/DebugInfo/X86/dbgcall-site-zero-valued-imms.ll |
 | llvm/test/DebugInfo/MIR/X86/kill-entry-value-after-diamond-bbs.mir |
 | llvm/test/DebugInfo/X86/loclists-dwp.ll |
 | clang/lib/CodeGen/BackendUtil.cpp |
 | llvm/test/DebugInfo/X86/dbg-value-range.ll |
 | llvm/test/DebugInfo/X86/dbgcall-site-64-bit-imms.ll |
 | llvm/test/CodeGen/X86/statepoint-allocas.ll |
 | llvm/test/DebugInfo/MIR/ARM/dbgcallsite-noreg-is-imm-check.mir |
 | llvm/test/DebugInfo/MIR/X86/dbginfo-entryvals.mir |
 | llvm/test/DebugInfo/Sparc/entry-value-complex-reg-expr.ll |
 | clang/include/clang/Driver/CC1Options.td |
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | llvm/lib/Target/AArch64/AArch64ISelLowering.cpp |
 | clang/test/CodeGen/debug-info-extern-call.c |
 | llvm/test/CodeGen/X86/hoist-invariant-load.ll |
 | llvm/test/DebugInfo/AArch64/call-site-info-output.ll |
 | llvm/test/DebugInfo/MIR/ARM/dbgcall-site-propagated-value.mir |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-lea-interpretation.mir |
 | llvm/test/CodeGen/X86/call-site-info-output.ll |
 | llvm/test/DebugInfo/MIR/X86/entry-value-of-modified-param.mir |
 | llvm/test/tools/llvm-locstats/locstats.ll |
 | llvm/test/CodeGen/AArch64/arm64-patchpoint.ll |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-copy-super-sub.mir |
 | llvm/test/DebugInfo/MIR/ARM/dbgcall-site-interpretation.mir |
 | clang/test/CodeGenCXX/dbg-info-all-calls-described.cpp |
 | llvm/test/CodeGen/MIR/X86/call-site-info-error1.mir |
 | llvm/test/CodeGen/ARM/smml.ll |
 | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h |
 | llvm/include/llvm/Target/TargetMachine.h |
 | llvm/lib/Target/AArch64/AArch64InstrInfo.cpp |
 | llvm/test/CodeGen/MIR/X86/call-site-info-error2.mir |
 | llvm/test/CodeGen/MIR/X86/call-site-info-error4.mir |
 | llvm/test/DebugInfo/MIR/X86/debug-call-site-param.mir |
 | llvm/lib/Target/ARM/ARMTargetMachine.cpp |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-interpretation.mir |
 | llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/tail-dup-repeat.ll |
 | llvm/test/tools/llvm-dwarfdump/X86/valid-call-site-GNU-extensions.ll |
 | llvm/test/DebugInfo/MIR/X86/dbg-call-site-spilled-arg.mir |
 | llvm/test/DebugInfo/MIR/X86/unreachable-block-call-site.mir |
 | llvm/test/DebugInfo/MIR/X86/propagate-entry-value-cross-bbs.mir |
 | llvm/lib/CodeGen/TargetOptionsImpl.cpp |
 | llvm/test/DebugInfo/MIR/X86/call-site-gnu-vs-dwarf5-attrs.mir |
 | llvm/lib/Target/X86/X86TargetMachine.cpp |
 | llvm/test/CodeGen/AArch64/arm64-anyregcc.ll |
 | llvm/test/DebugInfo/ARM/call-site-info-output.ll |
 | llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp |
 | llvm/test/DebugInfo/MIR/X86/DW_OP_entry_value.mir |
 | llvm/test/CodeGen/AArch64/arm64-tls-dynamics.ll |
 | llvm/test/tools/llvm-dwarfdump/X86/stats-dbg-callsite-info.ll |
 | llvm/test/DebugInfo/MIR/X86/dbg-call-site-spilled-arg-multiple-defs.mir |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-two-fwd-reg-defs.mir |
 | llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-interpretation.mir |
 | lldb/packages/Python/lldbsuite/test/decorators.py |
 | llvm/test/CodeGen/X86/xray-typed-event-log.ll |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-reg-shuffle.mir |
 | llvm/test/DebugInfo/MIR/Hexagon/dbgcall-site-instr-before-bundled-call.mir |
 | llvm/test/CodeGen/MIR/X86/call-site-info-error3.mir |
 | llvm/test/CodeGen/X86/speculative-load-hardening-indirect.ll |
 | llvm/lib/Target/AArch64/AArch64TargetMachine.cpp |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-reference.mir |
 | llvm/test/DebugInfo/X86/no-entry-values-with-O0.ll |
 | llvm/test/CodeGen/X86/xray-custom-log.ll |
 | llvm/include/llvm/Target/TargetOptions.h |
 | llvm/test/tools/llvm-dwarfdump/X86/locstats.ll |
 | llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-orr-moves.mir |
 | clang/lib/CodeGen/CGDebugInfo.cpp |
 | lldb/test/API/functionalities/param_entry_vals/basic_entry_values_x86_64/Makefile |
 | llvm/test/DebugInfo/MIR/ARM/if-coverter-call-site-info.mir |
 | llvm/test/DebugInfo/MIR/SystemZ/call-site-lzer.mir |
 | llvm/lib/CodeGen/LiveDebugValues.cpp |
 | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-partial-describe.mir |
 | llvm/test/DebugInfo/ARM/entry-value-multi-byte-expr.ll |
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/test/CodeGen/MIR/Hexagon/bundled-call-site-info.mir |
 | llvm/test/DebugInfo/MIR/X86/multiple-param-dbg-value-entry.mir |
 | llvm/lib/CodeGen/MIRParser/MIRParser.cpp |
 | llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-interpret-movzxi.mir |
 | llvm/test/DebugInfo/MIR/Hexagon/live-debug-values-bundled-entry-values.mir |
 | llvm/include/llvm/CodeGen/CommandFlags.inc |
 | llvm/test/DebugInfo/MIR/X86/entry-values-diamond-bbs.mir |
Commit
63236078d243a41cb777db46aaaba4e8fde4f5dc
by kerry.mclaughlin[AArch64][SVE] Add SVE2 intrinsics for polynomial arithmetic
Summary: Implements the following intrinsics: - @llvm.aarch64.sve.eorbt - @llvm.aarch64.sve.eortb - @llvm.aarch64.sve.pmullb.pair - @llvm.aarch64.sve.pmullt.pair
Reviewers: sdesmalen, c-rhodes, dancgr, cameron.mcinally, efriedma, rengolin
Reviewed By: efriedma
Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, cfe-commits, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74769
|
 | llvm/include/llvm/IR/IntrinsicsAArch64.td |
 | llvm/test/CodeGen/AArch64/sve2-intrinsics-polynomial-arithmetic-128.ll |
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
 | llvm/test/CodeGen/AArch64/sve2-intrinsics-polynomial-arithmetic.ll |
 | llvm/lib/Target/AArch64/SVEInstrFormats.td |
Commit
216afd3301f3d96a8ec29d80da67b78cd9e99527
by flo[TargetLower] Update shouldFormOverflowOp check if math is used.
On some targets, like SPARC, forming overflow ops is only profitable if the math result is used: https://godbolt.org/z/DxSmdB This patch adds a new MathUsed parameter to allow the targets to make the decision and defaults to only allowing it if the math result is used. That is the conservative choice.
This patch also updates AArch64ISelLowering, X86ISelLowering, ARMISelLowering.h, SystemZISelLowering.h to allow forming overflow ops if the math result is not used. On those targets using the overflow intrinsic for the overflow check only generates better code.
Reviewers: nikic, RKSimon, lebedev.ri, spatel
Reviewed By: lebedev.ri
Differential Revision: https://reviews.llvm.org/D74722
|
 | llvm/lib/Target/SystemZ/SystemZISelLowering.h |
 | llvm/test/Transforms/CodeGenPrepare/SPARC/overflow-intrinsics.ll |
 | llvm/lib/CodeGen/CodeGenPrepare.cpp |
 | llvm/lib/Target/AArch64/AArch64ISelLowering.h |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/lib/Target/ARM/ARMISelLowering.h |
 | llvm/lib/Target/X86/X86ISelLowering.h |
 | llvm/include/llvm/CodeGen/TargetLowering.h |
Commit
5171d1523dd853117d0df080850d1c77c63d0e76
by petar.avramovic[MIPS GlobalISel] Select 4 byte unaligned load and store
Improve legality checks for load and store, 4 byte scalar load and store are now legal for all subtargets. During regbank selection 4 byte unaligned loads and stores for MIPS32r5 and older get mapped to gprb. Select 4 byte unaligned loads and stores for MIPS32r5. Fix tests that unintentionally had unaligned load or store.
Differential Revision: https://reviews.llvm.org/D74624
|
 | llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/load_4_unaligned.ll |
 | llvm/test/CodeGen/Mips/GlobalISel/legalizer/load_4_unaligned.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/instruction-select/store_4_unaligned.mir |
 | llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp |
 | llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/phi.ll |
 | llvm/test/CodeGen/Mips/GlobalISel/regbankselect/phi.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/legalizer/store_4_unaligned.mir |
 | llvm/lib/Target/Mips/MipsLegalizerInfo.cpp |
 | llvm/lib/Target/Mips/MipsInstructionSelector.cpp |
 | llvm/test/CodeGen/Mips/GlobalISel/instruction-select/load_4_unaligned.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/instruction-select/load_4_unaligned_r6.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/instruction-select/store_4_unaligned_r6.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/store_4_unaligned.ll |
 | llvm/test/CodeGen/Mips/GlobalISel/regbankselect/load_4_unaligned.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/regbankselect/store_4_unaligned.mir |
Commit
5e32e7981b3a099e9b12b3b83b0eae0460095966
by petar.avramovic[MIPS GlobalISel] Legalize non-power-of-2 and unaligned load and store
Custom legalize non-power-of-2 and unaligned load and store for MIPS32r5 and older, custom legalize non-power-of-2 load and store for MIPS32r6.
Don't attempt to combine non power of 2 loads or unaligned loads when subtarget doesn't support them (MIPS32r5 and older).
Differential Revision: https://reviews.llvm.org/D74625
|
 | llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/store_split_because_of_memsize_or_align.ll |
 | llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/load_split_because_of_memsize_or_align.ll |
 | llvm/test/CodeGen/Mips/GlobalISel/legalizer/store_split_because_of_memsize_or_align.mir |
 | llvm/test/CodeGen/Mips/GlobalISel/legalizer/load_split_because_of_memsize_or_align |
 | llvm/lib/Target/Mips/MipsLegalizerInfo.cpp |
 | llvm/lib/Target/Mips/MipsPreLegalizerCombiner.cpp |
Commit
fceb3e3b4aec635d4e31dda618c7e4c17516cdb9
by david.green[ARM] MVE VADDLV lowering
Following on from the extra VADDV lowering, this extends things to handle VADDLV which allows summing values into a pair of i32 registers, together treated as a i64. This needs to be done in DAGCombine too as the types are otherwise illegal, which is a fairly simple addition on top of the existing code.
There is also a VADDLVA instruction handled here, that adds the incoming values from the two general purpose registers. As opposed to the non-long version where we could just add patterns for add(x, VADDV), the long version needs to handle this early before the i64 has being split into too many pieces.
Differential Revision: https://reviews.llvm.org/D74224
|
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/lib/Target/ARM/ARMISelLowering.h |
 | llvm/test/CodeGen/Thumb2/mve-vecreduce-add.ll |
 | llvm/lib/Target/ARM/ARMInstrMVE.td |
Commit
4af8db317d2ac3f21b859e43a3240c024457a95d
by llvm-dev[AMDGPU] performCvtF32UByteNCombine - add SHL and SimplifyMultipleUseDemandedBits support
This is part of the work to remove SelectionDAG::GetDemandedBits and just use SimplifyMultipleUseDemandedBits.
Recent experiments raised some v_cvt_f32_ubyte*_e32 regressions, so I've added some additional abilities to performCvtF32UByteNCombine to help unpack byte data more aggressively.
We still don't remove all OR(SHL,SRL) patterns as some of the regenerated nodes don't get combined again, but we are getting closer.
Differential Revision: https://reviews.llvm.org/D74786
|
 | llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll |
 | llvm/test/CodeGen/AMDGPU/udiv64.ll |
 | llvm/lib/Target/AMDGPU/SIISelLowering.cpp |
Commit
78654e8511cf16d49f6680d782f3771a767ba942
by oliver.stannardRevert "Reland D74436 "Change clang option -ffp-model=precise to select ffp-contract=on"""
Reverting because this patch is causing ~20 llvm-test-suite failures on a number of different bots: * http://lab.llvm.org:8011/builders/clang-cmake-armv8-lld/builds/3366 * http://lab.llvm.org:8011/builders/clang-cmake-aarch64-lld/builds/8222 * http://lab.llvm.org:8011/builders/clang-cmake-x86_64-avx2-linux/builds/13275 * http://lab.llvm.org:8011/builders/clang-s390x-linux-lnt/builds/17213
This reverts commit cd2c5af6dfd6e32ee7043894bcb42981ce99e8ac.
|
 | clang/lib/Driver/ToolChains/Clang.cpp |
 | clang/test/CodeGen/ppc-emmintrin.c |
 | clang/docs/UsersManual.rst |
 | clang/test/CodeGen/ppc-xmmintrin.c |
 | clang/test/Driver/fp-model.c |
Commit
3439d4ee0e4cb51098f019221143fcc22928bce4
by grimar[yaml2obj] - Change the order of implicitly created sections.
.dynsym and .dynstr are allocatable and therefore normally are placed before non-allocatable .strtab, .shstrtab, .symtab sections. But we are placing them after currently what creates a mix of alloc/non-alloc sections and does not look normal.
Differential revision: https://reviews.llvm.org/D74756
|
 | llvm/test/tools/llvm-readobj/ELF/hidden-versym.test |
 | llvm/test/tools/yaml2obj/ELF/implicit-sections-types.yaml |
 | llvm/test/tools/llvm-readobj/ELF/reloc-symbol-with-versioning.test |
 | llvm/test/tools/llvm-readobj/ELF/verneed-invalid.test |
 | llvm/test/tools/llvm-readobj/ELF/dynamic-reloc-no-section-headers.test |
 | llvm/test/tools/llvm-readobj/ELF/versioninfo.test |
 | llvm/test/tools/llvm-readobj/ELF/versym-invalid.test |
 | llvm/test/tools/yaml2obj/ELF/gnu-hash-section.yaml |
 | llvm/lib/ObjectYAML/ELFEmitter.cpp |
 | llvm/test/tools/llvm-readobj/ELF/verdef-invalid.test |
 | llvm/test/tools/llvm-objcopy/ELF/add-symbol-no-symtab.test |
 | llvm/test/tools/yaml2obj/ELF/dynamic-symbols.yaml |
 | llvm/test/tools/yaml2obj/ELF/implicit-sections-info.yaml |
Commit
49b307e96d47a74e4aa8f60f3d493eac10849d4b
by sander.desmalen[AArch64][SVE] CodeGen of ACLE Builtin Types
Summary: This patch adds codegen support for the ACLE builtin types added in:
https://reviews.llvm.org/D62960
so that the ACLE builtin types are emitted as corresponding scalable vector types in LLVM.
Reviewers: rsandifo-arm, rovka, rjmccall, efriedma
Reviewed By: efriedma
Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, llvm-commits, cfe-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D74724
|
 | clang/lib/CodeGen/CGDecl.cpp |
 | clang/lib/CodeGen/CodeGenTypes.cpp |
 | clang/test/CodeGen/aarch64-sve.c |
Commit
b0060c3a7868ef026d95d0cf8a076791ef74f474
by Raphael Isemann[lldb] Make comparing RegisterInfo::[alt_]name's pointer value less footy-shooty
Comparing those two `const char *` values relies on the assumption that both strings were created by a ConstString. Let's check that assumption with an assert as otherwise this code silently does nothing and that's not great.
|
 | lldb/source/Target/ABI.cpp |
 | lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp |
Commit
4a9011dcdade7cd562e0488d387ccbbaf2eee6c8
by Raphael Isemann[lldb] Skip failing parts of TestCppConstructors that use 'new' on Windows
|
 | lldb/test/API/lang/cpp/constructors/TestCppConstructors.py |
Commit
33aa5dfe9c2c277b7fd94a05ffc33247ccbc74da
by david.green[ARM] VMLAVA reduction patterns
Similar to VADDV and VADDLV that have been added recently, this adds lowering and patterns for VMLAV, VMLAVA, VMLALV and VMLALVA. They perform the same roles as the add's, just folding a mul into the same instruction (and so taking two inputs). As such, they need to be lowered in the same way as the types are often not legal.
Differential Revision: https://reviews.llvm.org/D74390
|
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/lib/Target/ARM/ARMISelLowering.h |
 | llvm/lib/Target/ARM/ARMInstrMVE.td |
 | llvm/test/CodeGen/Thumb2/mve-vecreduce-mla.ll |
Commit
066a76a234d82562de9bfc0503cac5da3ac0a121
by tberghammerSupport OptionalAttr inside a StructAttr
Differential revision: https://reviews.llvm.org/D74768
|
 | mlir/tools/mlir-tblgen/StructsGen.cpp |
 | mlir/unittests/TableGen/StructsGenTest.cpp |
 | mlir/unittests/TableGen/structs.td |
Commit
de3e65e60c8a28c70df7fc23376a0683a004b30f
by sam.parker[ARM][LowOverheadLoops] Check loop liveouts
Check that no Q-regs are live out of the loop, unless the instruction within the loop is predicated on the vctp.
Differential Revision: https://reviews.llvm.org/D72713
|
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/multiple-do-loops.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-add-operand-liveout.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/no-vpsel-liveout.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/predicated-liveout.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/extract-element.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/livereg-no-loop-def.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vector-arith-codegen.ll |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp16-reduce.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-liveout-lsr-shift.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/matrix.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/wlstp.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-vctp-opcode-liveout.mir |
 | llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-vctp-operand-liveout.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/cond-vector-reduce-mve-codegen.ll |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-tail-data-types.ll |
Commit
10df88de21772ff40818bec7eef6b099ba4279fb
by Raphael Isemann[lldb] Remove some unnecessary includes from test sources
|
 | lldb/test/API/lang/cpp/static_members/main.cpp |
 | lldb/test/API/lang/c/forward/main.c |
 | lldb/test/API/lang/c/strings/main.c |
 | lldb/test/API/lang/c/global_variables/main.c |
 | lldb/test/API/lang/c/step-target/main.c |
 | lldb/test/API/lang/c/anonymous/main.c |
 | lldb/test/API/commands/target/basic/a.c |
 | lldb/test/API/lang/c/stepping/main.c |
 | lldb/test/API/lang/cpp/auto/main.cpp |
 | lldb/test/API/commands/frame/var/main.c |
 | lldb/test/API/lang/c/conflicting-symbol/Two/Two.c |
 | lldb/test/API/lang/c/conflicting-symbol/One/One.c |
 | lldb/test/API/lang/cpp/auto/TestCPPAuto.py |
 | lldb/test/API/lang/c/forward/foo.c |
 | lldb/test/API/lang/c/conflicting-symbol/main.c |
Commit
9746b3ae07d7320d0cbea83bb9aa2fd73c542c25
by pavelErrorTest: Break up "ErrorMatchers" test
This test was getting a bit long. Before adding more checks, group the existing checks according to the matcher used, and break it up into smaller tests.
|
 | llvm/unittests/Support/ErrorTest.cpp |