Commit
53eece04bd15d9235b104e545d01184347e5f703
by Raphael Isemann[lldb][NFC] Modernize test setup code in several lang/cpp tests
All these tests can just call lldbutil.run_to_source_breakpoint instead of reimplementing it.
|
 | lldb/test/API/lang/cpp/static_methods/TestCPPStaticMethods.py |
 | lldb/test/API/lang/cpp/overloaded-functions/TestOverloadedFunctions.py |
 | lldb/test/API/lang/cpp/wchar_t/TestCxxWCharT.py |
 | lldb/test/API/lang/cpp/unicode-literals/TestUnicodeLiterals.py |
 | lldb/test/API/lang/cpp/stl/TestStdCXXDisassembly.py |
 | lldb/test/API/lang/cpp/wchar_t/main.cpp |
 | lldb/test/API/lang/cpp/stl/TestSTL.py |
 | lldb/test/API/lang/cpp/bool/TestCPPBool.py |
 | lldb/test/API/lang/cpp/chained-calls/TestCppChainedCalls.py |
 | lldb/test/API/lang/cpp/breakpoint_in_member_func_w_non_primitive_params/TestBreakpointInMemberFuncWNonPrimitiveParams.py |
 | lldb/test/API/lang/cpp/unique-types/TestUniqueTypes.py |
 | lldb/test/API/lang/cpp/auto/TestCPPAuto.py |
 | lldb/test/API/lang/cpp/unsigned_types/TestUnsignedTypes.py |
 | lldb/test/API/lang/cpp/call-function/TestCallCPPFunction.py |
 | lldb/test/API/lang/cpp/char8_t/TestCxxChar8_t.py |
 | lldb/test/API/lang/cpp/char8_t/main.cpp |
Commit
39cecabece8c705187b50612ae5db8748f07b5be
by pierre.vanhoutryve[AArch64][ASMParser] Refuse equal source/destination for LDRAA/LDRAB
Differential Revision: https://reviews.llvm.org/D74822
|
 | llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp |
 | llvm/test/MC/AArch64/armv8.3a-diagnostics.s |
 | llvm/test/MC/AArch64/armv8.3a-signed-pointer.s |
Commit
ff4639f06016bb21ccd00bfd0f6c7cd8d12292e6
by Matthew.ArsenaultAMDGPU/GlobalISel: Select MUBUF path for global atomic cmpxchg
I'm not sure why this isn't a pattern, but the DAG manually selects this.
|
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgpu-atomic-cmpxchg-global.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll |
Commit
e01a3d49c224d6f8a7afc01205b05b9deaa07afa
by flo[PatternMatch] Match XOR variant of unsigned-add overflow check.
Instcombine folds (a + b <u a) to (a ^ -1 <u b) and that does not match the expected pattern in CodeGenPerpare via UAddWithOverflow.
This causes a regression over Clang 7 on both X86 and AArch64: https://gcc.godbolt.org/z/juhXYV
This patch extends UAddWithOverflow to also catch the XOR case, if the XOR is only used in the ICMP. This covers just a single case, but I'd like to make sure I am not missing anything before tackling the other cases.
Reviewers: nikic, RKSimon, lebedev.ri, spatel
Reviewed By: nikic, lebedev.ri
Differential Revision: https://reviews.llvm.org/D74228
|
 | llvm/test/Transforms/CodeGenPrepare/AArch64/overflow-intrinsics.ll |
 | llvm/lib/CodeGen/CodeGenPrepare.cpp |
 | llvm/include/llvm/IR/PatternMatch.h |
 | llvm/test/Transforms/CodeGenPrepare/X86/overflow-intrinsics.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp |
Commit
a6a585b8030b6e8d4c50c71f54a6addb21995fe0
by flo[CGP] Adjust CodeGen tests after e01a3d49c22
|
 | llvm/test/CodeGen/AArch64/sat-add.ll |
 | llvm/test/CodeGen/X86/sat-add.ll |
Commit
bc23e83e45ebefa523c660aa500c6161d9be57ee
by kparzyszAdd <128 x i1> as an intrinsic type
|
 | llvm/lib/IR/Function.cpp |
 | llvm/utils/TableGen/IntrinsicEmitter.cpp |
 | llvm/include/llvm/IR/Intrinsics.td |
Commit
440ca29ea266a816c4a00216aff356ece0d14cc9
by stefanp[Hexagon][NFC] Rename VK_Hexagon_PCREL to VK_PCREL
On PowerPC we will soon need to use pcrel to indicate PC Relative addressing. Renamed the Hexagon specific variant kind to a non target specific VK so that it can be used on both Hexagon and PowerPC.
Differential Revision: https://reviews.llvm.org/D74788
|
 | llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCodeEmitter.cpp |
 | llvm/include/llvm/MC/MCExpr.h |
 | llvm/lib/MC/MCExpr.cpp |
 | llvm/lib/Target/Hexagon/HexagonMCInstLower.cpp |
 | llvm/lib/Target/Hexagon/MCTargetDesc/HexagonELFObjectWriter.cpp |
Commit
b329d1b06eb2f7781be414002d49eca79b85b726
by jay.foad[AMDGPU][ConstantFolding] Fold llvm.amdgcn.fmul.legacy intrinsic
Reviewers: arsenm, rampitec, nhaehnle
Subscribers: kzhuravl, jvesely, wdng, yaxunl, dstuttard, tpr, t-tye, hiraditya, kerbowa, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74835
|
 | llvm/lib/Analysis/ConstantFolding.cpp |
 | llvm/test/Analysis/ConstantFolding/AMDGPU/fmul_legacy.ll |
 | llvm/test/Analysis/ConstantFolding/AMDGPU/lit.local.cfg |
Commit
bde0e320bcf0902aa334fe67d7cc8f63e8d3c38f
by thakis[gn build] revert e8e078c8bf7987
Now that I've updated ancient goma clients on the bots, this should work. (Internal goma bug: b/139410332, fixed months ago.)
|
 | llvm/utils/gn/build/BUILD.gn |
Commit
393173499099649eb95816132889295c3b463faf
by mcinally[AArch64][SVE] Add initial backend support for FP splat_vector
Differential Revision: https://reviews.llvm.org/D74632
|
 | llvm/lib/Target/AArch64/AArch64ISelLowering.cpp |
 | llvm/lib/Target/AArch64/AArch64InstrFormats.td |
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
 | llvm/test/CodeGen/AArch64/sve-vector-splat.ll |
Commit
461fd94f004c78374fc7b0338d018f9610f2e5f5
by mikhail.maltsev[ARM,MVE] Fix predicate types of some intrinsics
Summary: Some predicated MVE intrinsics return a vector with element size different from the input vector element size. In this case the predicate must type correspond to the output vector type.
The following intrinsics use the incorrect predicate type: * llvm.arm.mve.mull.int.predicated * llvm.arm.mve.mull.poly.predicated * llvm.arm.mve.vshll.imm.predicated
This patch fixes the issue.
Reviewers: simon_tatham, dmgreen, ostannard, MarkMurrayARM
Reviewed By: MarkMurrayARM
Subscribers: kristof.beyls, hiraditya, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D74838
|
 | llvm/test/CodeGen/Thumb2/mve-intrinsics/vmullbq.ll |
 | clang/test/CodeGen/arm-mve-intrinsics/vmulltq.c |
 | llvm/lib/Target/ARM/ARMInstrMVE.td |
 | clang/test/CodeGen/arm-mve-intrinsics/vmullbq.c |
 | llvm/test/CodeGen/Thumb2/mve-intrinsics/vector-shift-imm.ll |
 | clang/include/clang/Basic/arm_mve_defs.td |
 | clang/test/CodeGen/arm-mve-intrinsics/vector-shift-imm.c |
 | llvm/test/CodeGen/Thumb2/mve-intrinsics/vmulltq.ll |
 | clang/include/clang/Basic/arm_mve.td |
Commit
d97d409277278704b68382884b43fcc91f2b9962
by zinenko[mlir] NFC: use ValueRange for BlockArgument in ConvertStandardToLLVM
When the conversion was implemented, ValueRange did not support BlockArguments the code materialized a vector. This is no longer necessary.
|
 | mlir/lib/Conversion/StandardToLLVM/ConvertStandardToLLVM.cpp |
Commit
9b91bcf6c6187afb488ef6e12b8ef245b6635fd2
by dvyukovtsan: removing redundant loop in ThreadClock::release()
The removed loop clears reused for entries at the tail of a SyncClock. The loop is redundant since those entries were already cleared by the immediately preceding loop, which iterates over all entries in the SyncClock (including the tail entries).
|
 | compiler-rt/lib/tsan/rtl/tsan_clock.cpp |
Commit
bb61021a8fcc21676af65e4cbbf4d495831fad52
by Raphael Isemann[lldb][NFC] Remove giant do{...}while(false); in ClangASTSource::FindExternalVisibleDecls
|
 | lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp |
Commit
896ee361a641bf9529bb9103a3a018b1c28dc21d
by antiagainst[mlir][spirv] Add mlir-vulkan-runner
Add an initial version of mlir-vulkan-runner execution driver. A command line utility that executes a MLIR file on the Vulkan by translating MLIR GPU module to SPIR-V and host part to LLVM IR before JIT-compiling and executing the latter.
Differential Revision: https://reviews.llvm.org/D72696
|
 | mlir/tools/mlir-vulkan-runner/vulkan-runtime-wrappers.cpp |
 | mlir/test/lit.cfg.py |
 | mlir/test/mlir-vulkan-runner/lit.local.cfg |
 | mlir/test/mlir-vulkan-runner/addf.mlir |
 | mlir/tools/mlir-vulkan-runner/VulkanRuntime.cpp |
 | mlir/test/lit.site.cfg.py.in |
 | mlir/tools/mlir-vulkan-runner/VulkanRuntime.h |
 | mlir/lib/Conversion/GPUToVulkan/ConvertLaunchFuncToVulkanCalls.cpp |
 | mlir/tools/mlir-vulkan-runner/mlir-vulkan-runner.cpp |
 | mlir/CMakeLists.txt |
 | mlir/tools/mlir-vulkan-runner/CMakeLists.txt |
 | mlir/test/CMakeLists.txt |
 | mlir/tools/CMakeLists.txt |
Commit
7a554270c030ed8b7074ebd9a339a633b8f45059
by llvm-dev[SystemZ] Regenerate risbg tests. NFCI.
Pre-commit for some upcoming SimplifyDemandedBits bitrotate handling.
|
 | llvm/test/CodeGen/SystemZ/risbg-03.ll |
 | llvm/test/CodeGen/SystemZ/risbg-01.ll |
 | llvm/test/CodeGen/SystemZ/risbg-04.ll |
 | llvm/test/CodeGen/SystemZ/risbg-02.ll |
Commit
f12fb2d99b8dd0dbef1c79f1d401200150f2d0bd
by nikita.ppv[IRBuilder] Always respect inserter/folder
Some IRBuilder methods that were originally defined on IRBuilderBase do not respect custom IRBuilder inserters/folders, because those were not accessible prior to D73835. Fix this by making use of existing (and now accessible) IRBuilder methods, which will handle inserters/folders correctly.
There are some changes in OpenMP tests, where bitcasts now get constant folded. I've also highlighted one InstCombine test which now finishes in two rather than three iterations, thanks to new instructions being inserted into the worklist.
Differential Revision: https://reviews.llvm.org/D74787
|
 | llvm/lib/IR/IRBuilder.cpp |
 | clang/test/OpenMP/target_firstprivate_codegen.cpp |
 | llvm/test/Transforms/InstCombine/saturating-add-sub.ll |
 | clang/test/OpenMP/parallel_codegen.cpp |
Commit
f50fe5eb6d2ec0adb5b2fd91a4023fc1573e061f
by davg[Sema][CodeComplete] Handle symlinks for include code completion
Summary: Previously any symlinks would be ignored since the directory traversal doesn't follow them.
With this change we now follow symlinks (via a `stat` call in order to figure out the target type of the symlink if it is valid).
Reviewers: sammccall
Subscribers: cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D74790
|
 | clang/test/CodeCompletion/included-symlinks.cpp |
 | clang/lib/Sema/SemaCodeComplete.cpp |
Commit
6b5ce0de7e57cbb37c7a03e216c779ed4073ad2e
by nikita.ppv[InstCombine] Fix removal from deferred instructions
Make sure we don't skip the Deferred.remove() call if the instruction is not in the worklist. Both of those are separate.
We don't have any cases where deferred instructions get removed right now, but may cause problems in the future.
|
 | llvm/include/llvm/Transforms/InstCombine/InstCombineWorklist.h |
Commit
476ca094c846a0b6d4d9f37710aba21a6b0b265a
by antiagainst[mlir][ods] Adding attribute setters generation
In some dialects, attributes may have default values that may be determined only after shape inference. For example, attributes that are dependent on the rank of the input cannot be assigned a default value until the rank of the tensor is inferred.
While we can set attributes without explicit setters, referring to the attributes via accessors instead of having to use the string interface is better for compile time verification.
The proposed patch add one method per operation attribute that let us set its value. The code is a very small modification of the existing getter methods.
Differential Revision: https://reviews.llvm.org/D74143
|
 | mlir/test/mlir-tblgen/op-attribute.td |
 | mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp |
Commit
b92b1701cd30d356fa3ac4da3d0dba20fa614e0b
by nikita.ppvRevert "[IRBuilder] Always respect inserter/folder"
This reverts commit f12fb2d99b8dd0dbef1c79f1d401200150f2d0bd.
I missed some changes in instrumentation test cases.
|
 | llvm/lib/IR/IRBuilder.cpp |
 | clang/test/OpenMP/parallel_codegen.cpp |
 | clang/test/OpenMP/target_firstprivate_codegen.cpp |
 | llvm/test/Transforms/InstCombine/saturating-add-sub.ll |
Commit
3f7d0e7e319486fa9ca29896eb35bb2bd60733d2
by rupprecht[NFC][compiler-rt][test] Fully qualify string -> std::string
|
 | compiler-rt/lib/asan/tests/asan_test.cpp |
 | compiler-rt/lib/asan/tests/asan_str_test.cpp |
 | compiler-rt/lib/asan/tests/asan_test_utils.h |
Commit
a829443cc7359ecf0f2de8f82519f511795675ec
by eric[libc++] Fix ABI break in __bit_reference.
The libc++ __bit_iterator type has weird ABI calling conventions as a quirk of the implementation. The const bit iterator is trivial, but the non-const bit iterator is not because it declares a user-defined copy constructor.
Changing this now is an ABI break, so this test ensures that each type is trivial/non-trivial as expected.
The definition of 'non-trivial for the purposes of calls': A type is considered non-trivial for the purposes of calls if: * it has a non-trivial copy constructor, move constructor, or destructor, or * all of its copy and move constructors are deleted.
|
 | libcxx/test/libcxx/containers/sequences/vector.bool/trivial_for_purposes_of_call.pass.cpp |
 | libcxx/include/__bit_reference |
Commit
ada205e91eb0ed85d225fb2ce5b0f881a1909230
by Stanislav.Mekhanoshin[AMDGPU] Fix assumption about LaneBitmask content
Yet another assumption about an actual LaneBitmask content is fixed.
Differential Revision: https://reviews.llvm.org/D74805
|
 | llvm/lib/Target/AMDGPU/GCNRegPressure.cpp |
Commit
a54d81f597963b8768ce2b94a8ef570f9eaaac25
by zurab.tsinadze[analyzer] CERT: POS34-C
Summary: This patch introduces a new checker: `alpha.security.cert.pos.34c`
This checker is implemented based on the following rule: https://wiki.sei.cmu.edu/confluence/x/6NYxBQ The check warns if `putenv` function is called with automatic storage variable as an argument.
Differential Revision: https://reviews.llvm.org/D71433
|
 | clang/include/clang/StaticAnalyzer/Checkers/Checkers.td |
 | clang/lib/StaticAnalyzer/Checkers/cert/PutenvWithAutoChecker.cpp |
 | clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt |
 | clang/lib/StaticAnalyzer/Core/CommonBugCategories.cpp |
 | clang/test/Analysis/cert/pos34-c-fp-suppression.cpp |
 | clang/include/clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h |
 | clang/docs/analyzer/checkers.rst |
 | clang/test/Analysis/cert/pos34-c.cpp |
Commit
f559cecc3e040bcd9f9f42fa92f262a6b4cc877b
by craig.topper[X86] Add DCI.isBeforeLegalize() check to the v64i1 constant splitting code in combineStore.
We only need to split after type legalization. If we're before we can just use a wide store and type legalization will split it.
Add a v128i1 test to exercise it post type legalization.
|
 | llvm/test/CodeGen/X86/avx512-mask-op.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
f14f9bd22ea024049ce4be65f4132306bfd5c12b
by thakis[gn build] Set up include_dirs for a54d81f597 (first checker in a subdir)
|
 | llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn |
Commit
e84aa5922b1cc8e40f60a560c3803122d820c53d
by silvaseanFix Block::eraseArgument when block arg is also a successor operand.
Summary: This could trigger an assertion due to the block argument being used by this block's own successor operands.
Reviewers: rriddle!
Subscribers: mehdi_amini, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74583
|
 | mlir/lib/IR/Block.cpp |
Commit
069b85fed110988a178a40abbed0dae49dc2d29b
by llvmgnsyncbot[gn build] Port a54d81f5979
|
 | llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn |
Commit
187204cd746f537405d11ee27d60d8ab59c9192d
by thakis[gn build] use \bfoo\b instead of \<foo\> in sync script
\<foo\> is more correct, but since we use shell=True on Windows, the < and > get interpreted as redirection operators.
Rather than adding cmd escaping, just use \bfoo\b, which is Good Enough Often Enough.
|
 | llvm/utils/gn/build/sync_source_lists_from_cmake.py |
Commit
0eddeeab29a1cce8f9169b270c9fdd484534d91b
by paulsson[ValueTracking] Improve isKnownNonNaN() to recognize zero splats.
isKnownNonNaN() could not recognize a zero splat because that is a ConstantAggregateZero which is-a ConstantData but not a ConstantDataVector.
Patch makes a ConstantAggregateZero return true.
Review: Thomas Lively
Differential Revision: https://reviews.llvm.org/D74263
|
 | llvm/test/CodeGen/SystemZ/vec-max-min-zerosplat.ll |
 | llvm/lib/Analysis/ValueTracking.cpp |
Commit
170ae68fef05941120bff138d1f2b93cd0564454
by tyker[AssumeBundle] Add documentation for the operand bundles of an llvm.assume
Summary: Operand bundles on an llvm.assume allows representing assumptions that an attribute holds for a certain value at a certain position. Operand bundles enable assumptions that are either hard or impossible to represent as a boolean argument of an llvm.assume.
Reviewers: jdoerfert, fhahn, nlopes, reames, regehr, efriedma
Reviewed By: jdoerfert
Subscribers: lebedev.ri, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74209
|
 | llvm/docs/LangRef.rst |
Commit
df590f51b62d57c19f8cae8e87c1641dc0382f55
by Jonas Devlieghere[lldb/Core] Remove locking in the PluginManager
Remove locking as all the plugin registration takes place from a single thread. Addresses Pavel's feedback in D74816.
|
 | lldb/source/Core/PluginManager.cpp |
Commit
6b6c96695c0054ebad6816171ef89d5cb76a058b
by riddleriver[mlir][ODS] Add a new trait `TypesMatchWith`
Summary: This trait takes three arguments: lhs, rhs, transformer. It verifies that the type of 'rhs' matches the type of 'lhs' when the given 'transformer' is applied to 'lhs'. This allows for adding constraints like: "the type of 'a' must match the element type of 'b'". A followup revision will add support in the declarative parser for using these equality constraints to port more c++ parsers to the declarative form.
Differential Revision: https://reviews.llvm.org/D74647
|
 | mlir/test/IR/invalid-ops.mlir |
 | mlir/include/mlir/Dialect/VectorOps/VectorOps.td |
 | mlir/include/mlir/Dialect/StandardOps/Ops.td |
 | mlir/include/mlir/IR/OperationSupport.h |
 | mlir/test/Dialect/VectorOps/invalid.mlir |
 | mlir/include/mlir/Support/STLExtras.h |
 | mlir/include/mlir/IR/OpBase.td |
 | mlir/lib/Dialect/StandardOps/Ops.cpp |
 | mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp |
Commit
4a7364f1c2ef0c45d7e603799fe0b7662d4c4078
by riddleriver[mlir][Parser] Use APFloat instead of FloatAttr when parsing DenseElementsAttrs.
Summary: DenseElementsAttr stores float values as raw bits internally, so creating attributes just to have them unwrapped is extremely inefficient.
Differential Revision: https://reviews.llvm.org/D74818
|
 | mlir/lib/Parser/Parser.cpp |
Commit
c7fc0e5da6c3c36eb5f3a874a6cdeaedb26856e0
by floRevert "[PatternMatch] Match XOR variant of unsigned-add overflow check."
This reverts commit e01a3d49c224d6f8a7afc01205b05b9deaa07afa. and commit a6a585b8030b6e8d4c50c71f54a6addb21995fe0.
This causes a failure on GreenDragon: http://lab.llvm.org:8080/green/view/LLDB/job/lldb-cmake/9597
|
 | llvm/include/llvm/IR/PatternMatch.h |
 | llvm/test/CodeGen/X86/sat-add.ll |
 | llvm/test/Transforms/CodeGenPrepare/AArch64/overflow-intrinsics.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp |
 | llvm/test/Transforms/CodeGenPrepare/X86/overflow-intrinsics.ll |
 | llvm/test/CodeGen/AArch64/sat-add.ll |
 | llvm/lib/CodeGen/CodeGenPrepare.cpp |
Commit
fd0e8b4c0ca78880bed974a5a14b7cd16a89d91c
by riddleriver[mlir][NFC] Fix warning for mismatched sign comparison.
|
 | mlir/include/mlir/IR/OperationSupport.h |
Commit
0a2626d0cdc2942799026c616fcac974e0a1e204
by bmahjour[DDG] Data Dependence Graph - Graph Simplification
Summary: This is the last functional patch affecting the representation of DDG. Here we try to simplify the DDG to reduce the number of nodes and edges by iteratively merging pairs of nodes that satisfy the following conditions, until no such pair can be identified. A pair of nodes consisting of a and b can be merged if:
1. the only edge from a is a def-use edge to b and 2. the only edge to b is a def-use edge from a and 3. there is no cyclic edge from b to a and 4. all instructions in a and b belong to the same basic block and 5. both a and b are simple (single or multi instruction) nodes.
These criteria allow us to fold many uninteresting def-use edges that commonly exist in the graph while avoiding the risk of introducing dependencies that didn't exist before.
Authored By: bmahjour
Reviewer: Meinersbur, fhahn, myhsu, xtian, dmgreen, kbarton, jdoerfert
Reviewed By: Meinersbur
Subscribers: ychen, arphaman, simoll, a.elovikov, mgorny, hiraditya, jfb, wuzish, llvm-commits, jsji, Whitney, etiotto, ppc-slack
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D72350
|
 | llvm/include/llvm/Analysis/DependenceGraphBuilder.h |
 | llvm/test/Analysis/DDG/basic-loopnest.ll |
 | llvm/lib/Analysis/DDG.cpp |
 | llvm/test/Analysis/DDG/basic-a.ll |
 | llvm/test/Analysis/DDG/basic-b.ll |
 | llvm/lib/Analysis/DependenceGraphBuilder.cpp |
 | llvm/include/llvm/Analysis/DDG.h |
Commit
376c68539c5a4b8baf7dc8f34ffa71daadada28f
by diego.caballero[mlir][NFC] Fix 'gatherLoops' utility
It replaces DenseMap output with a SmallVector and it removes empty loop levels from the output.
Reviewed By: andydavis1, mehdi_amini
Differential Revision: https://reviews.llvm.org/D74658
|
 | mlir/include/mlir/Transforms/LoopUtils.h |
 | mlir/test/lib/Transforms/TestLoopFusion.cpp |
 | mlir/test/lib/Transforms/TestAffineDataCopy.cpp |
 | mlir/lib/Transforms/Utils/LoopUtils.cpp |
Commit
84f80b1faaeb385a178f4b517d92d29ca6a6d854
by Louis Dionne[CMake] Only detect the linker once in AddLLVM.cmake
Summary: Otherwise, the build output contains a bunch of "Linker detection: <xxx>" lines that are really redundant. We also make redundant calls to the linker, although that is a smaller concern.
Reviewers: smeenai
Subscribers: mgorny, fedor.sergeev, jkorous, dexonsmith, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D68648
|
 | llvm/cmake/modules/AddLLVM.cmake |
Commit
59982a6d8f9d0ba34a47798fe155121767e66411
by llvm-dev[UpdateTestChecks] Add support for '.' in ir function names
Will let us regenerate from amdgpu float constant tests
|
 | llvm/utils/UpdateTestChecks/common.py |
Commit
025ff5a4eaf7dd01810e0dd0deb38a204a32a357
by llvm-dev[AMDGPU] Regenerate immediate constant tests
|
 | llvm/test/CodeGen/AMDGPU/imm16.ll |
 | llvm/test/CodeGen/AMDGPU/imm.ll |
Commit
076475713c236081a3247a53e9dbab9043c3eac2
by mmoroz[libFuzzer] Fix denominator in the "inputs have DFT" log line.
Summary: The number of "inputs have the Data Flow Trace" cannot be greater than the number of inputs touching the focus function. The existing message is rather confusing as the same log would mention a greater total number of traces a few lines above.
Reviewers: kcc, metzman
Subscribers: #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D74779
|
 | compiler-rt/test/fuzzer/dataflow.test |
 | compiler-rt/lib/fuzzer/FuzzerLoop.cpp |
Commit
129c911efaa492790c251b3eb18e4db36b55cbc5
by isanbardInclude static prof data when collecting loop BBs
Summary: If the programmer adds static profile data to a branch---i.e. uses "__builtin_expect()" or similar---then we should honor it. Otherwise, "__builtin_expect()" is ignored in crucial situations. So we trust that the programmer knows what they're doing until proven wrong.
Subscribers: hiraditya, JDevlieghere, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74809
|
 | llvm/test/CodeGen/X86/block-placement-2.ll |
 | llvm/include/llvm/CodeGen/MachineLoopInfo.h |
 | llvm/lib/CodeGen/MachineLoopInfo.cpp |
 | llvm/test/CodeGen/Hexagon/prof-early-if.ll |
 | llvm/lib/CodeGen/MachineBlockPlacement.cpp |
 | llvm/test/CodeGen/X86/move_latch_to_loop_top.ll |
 | llvm/test/CodeGen/X86/ragreedy-bug.ll |
 | llvm/test/CodeGen/X86/block-placement.ll |
Commit
0ba9ee9f0e55b1f9155a5bb5739550860fa5fec2
by ajcbik[mlir] [VectorOps] Framework for progressive lowering of vector.contract
Summary: Lowers all free/batch dimensions in a vector.contract progressively into simpler vector.contract operations until a direct vector.reduction operation is reached. Then lowers 1-D reductions into vector.reduce.
Still TBD: multi-dimensional contractions that remain after removing all the parallel dims
Reviewers: nicolasvasilache, andydavis1, rriddle
Reviewed By: andydavis1
Subscribers: mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74797
|
 | mlir/lib/Dialect/VectorOps/VectorTransforms.cpp |
 | mlir/test/Dialect/VectorOps/vector-contract-transforms.mlir |
Commit
f6875c434ec20eb4f24495317592f64334347784
by nikita.ppvReapply [IRBuilder] Always respect inserter/folder
Some IRBuilder methods that were originally defined on IRBuilderBase do not respect custom IRBuilder inserters/folders, because those were not accessible prior to D73835. Fix this by making use of existing (and now accessible) IRBuilder methods, which will handle inserters/folders correctly.
There are some changes in OpenMP and Instrumentation tests, where bitcasts now get constant folded. I've also highlighted one InstCombine test which now finishes in two rather than three iterations, thanks to new instructions being inserted into the worklist.
Differential Revision: https://reviews.llvm.org/D74787
|
 | clang/test/OpenMP/parallel_codegen.cpp |
 | clang/test/OpenMP/target_firstprivate_codegen.cpp |
 | llvm/test/Instrumentation/MemorySanitizer/msan_basic.ll |
 | llvm/test/Instrumentation/MemorySanitizer/X86/vararg_call.ll |
 | llvm/lib/IR/IRBuilder.cpp |
 | llvm/test/Instrumentation/MemorySanitizer/PowerPC/vararg-ppc64.ll |
 | llvm/test/Instrumentation/MemorySanitizer/byval-alignment.ll |
 | llvm/test/Transforms/InstCombine/saturating-add-sub.ll |
 | llvm/test/Instrumentation/MemorySanitizer/Mips/vararg-mips64el.ll |
 | llvm/test/Instrumentation/MemorySanitizer/PowerPC/vararg-ppc64le.ll |
 | llvm/test/Instrumentation/MemorySanitizer/Mips/vararg-mips64.ll |
Commit
ba3f863dfb9c5f9bf5e6fdca2198b609df3b7761
by johannes[OpenMP][OMPIRBuilder] Introducing the `OMPBuilderCBHelpers` helper class
This patch introduces a new helper class `OMPBuilderCBHelpers`, which will contain all reusable C/C++ language specific function- alities required by the `OMPIRBuilder`.
Initially, this helper class contains the body and finalization codegen functionalities implemented using callbacks which were moved here for reusability among the different directives implemented in the `OMPIRBuilder`, along with RAIIs for preserving state prior to emitting outlined and/or inlined OpenMP regions.
In the future this helper class will also contain all the different call backs required by OpenMP clauses/variable privatization.
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D74562
|
 | clang/test/OpenMP/cancel_codegen.cpp |
 | clang/lib/CodeGen/CGStmtOpenMP.cpp |
 | clang/lib/CodeGen/CodeGenFunction.h |
Commit
b1d47467e26142e6029e9ec7ca5c42645ffaa7bb
by kparzysz[Hexagon] Change HVX vector predicate types from v512/1024i1 to v64/128i1
This commit removes the artificial types <512 x i1> and <1024 x i1> from HVX intrinsics, and makes v512i1 and v1024i1 no longer legal on Hexagon.
It may cause existing bitcode files to become invalid.
* Converting between vector predicates and vector registers must be done explicitly via vandvrt/vandqrt instructions (their intrinsics), i.e. (for 64-byte mode): %Q = call <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32> %V, i32 -1) %V = call <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1> %Q, i32 -1)
The conversion intrinsics are: declare <64 x i1> @llvm.hexagon.V6.vandvrt(<16 x i32>, i32) declare <128 x i1> @llvm.hexagon.V6.vandvrt.128B(<32 x i32>, i32) declare <16 x i32> @llvm.hexagon.V6.vandqrt(<64 x i1>, i32) declare <32 x i32> @llvm.hexagon.V6.vandqrt.128B(<128 x i1>, i32) They are all pure.
* Vector predicate values cannot be loaded/stored directly. This directly reflects the architecture restriction. Loading and storing or vector predicates must be done indirectly via vector registers and explicit conversions via vandvrt/vandqrt instructions.
|
 | llvm/test/CodeGen/Hexagon/hvx-dbl-dual-output.ll |
 | clang/test/CodeGen/builtins-hvx64.c |
 | llvm/test/CodeGen/Hexagon/intrinsics/byte-store.ll |
 | llvm/test/CodeGen/Hexagon/reg-scavengebug-2.ll |
 | llvm/test/CodeGen/Hexagon/v6vect-dbl-spill.ll |
 | llvm/test/CodeGen/Hexagon/reg-scavengebug-4.ll |
 | llvm/test/CodeGen/Hexagon/intrinsics/v65-scatter-double.ll |
 | llvm/test/CodeGen/Hexagon/intrinsics/v65-gather-double.ll |
 | llvm/test/CodeGen/Hexagon/vecPred2Vec.ll |
 | llvm/test/CodeGen/Hexagon/v62-inlasm4.ll |
 | llvm/test/CodeGen/Hexagon/swp-sigma.ll |
 | clang/lib/Basic/Targets/Hexagon.h |
 | llvm/test/CodeGen/Hexagon/split-vecpred.ll |
 | llvm/test/CodeGen/Hexagon/vselect-pseudo.ll |
 | llvm/test/CodeGen/Hexagon/peephole-move-phi.ll |
 | llvm/test/CodeGen/Hexagon/v6-unaligned-spill.ll |
 | llvm/test/CodeGen/Hexagon/bug-aa4463-ifconv-vecpred.ll |
 | llvm/test/CodeGen/Hexagon/vector-align.ll |
 | llvm/test/CodeGen/Hexagon/intrinsics/v65.ll |
 | llvm/test/CodeGen/Hexagon/intrinsics-v60-vcmp.ll |
 | llvm/test/CodeGen/Hexagon/swp-prolog-phi.ll |
 | llvm/lib/Target/Hexagon/HexagonRegisterInfo.td |
 | llvm/test/CodeGen/Hexagon/reg-scavenger-valid-slot.ll |
 | llvm/test/CodeGen/Hexagon/v60-vsel2.ll |
 | llvm/test/CodeGen/Hexagon/intrinsics/v65-gather.ll |
 | llvm/test/CodeGen/Hexagon/intrinsics-v60-misc.ll |
 | llvm/lib/Target/Hexagon/HexagonIntrinsicsV60.td |
 | llvm/test/CodeGen/Hexagon/intrinsics/byte-store-double.ll |
 | llvm/test/CodeGen/Hexagon/v6-spill1.ll |
 | llvm/test/CodeGen/Hexagon/v60Intrins.ll |
 | llvm/test/CodeGen/Hexagon/vec-pred-spill1.ll |
 | llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp |
 | clang/include/clang/module.modulemap |
 | llvm/lib/Target/Hexagon/HexagonISelLowering.cpp |
 | llvm/test/CodeGen/Hexagon/hvx-dual-output.ll |
 | llvm/test/CodeGen/Hexagon/v60small.ll |
 | llvm/lib/Target/Hexagon/HexagonSubtarget.h |
 | llvm/test/CodeGen/Hexagon/early-if-vecpred.ll |
 | llvm/include/llvm/IR/IntrinsicsHexagonDep.td |
 | llvm/test/CodeGen/Hexagon/convert_const_i1_to_i8.ll |
 | llvm/test/CodeGen/Hexagon/v60-vsel1.ll |
 | llvm/test/CodeGen/Hexagon/v60_sort16.ll |
 | clang/include/clang/Basic/BuiltinsHexagonDep.def |
 | llvm/test/CodeGen/Hexagon/eliminate-pred-spill.ll |
 | clang/include/clang/Basic/BuiltinsHexagonMapCustomDep.def |
 | llvm/test/CodeGen/Hexagon/v60-vecpred-spill.ll |
 | clang/test/CodeGen/builtins-hvx128.c |
 | llvm/test/CodeGen/Hexagon/reg-scavengebug-3.ll |
 | clang/test/CodeGen/builtins-hexagon-v66-128B.c |
 | llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp |
 | llvm/test/CodeGen/Hexagon/late_instr.ll |
 | llvm/test/CodeGen/Hexagon/inline-asm-vecpred128.ll |
 | llvm/test/CodeGen/Hexagon/intrinsics/v65-scatter.ll |
 | clang/include/clang/Basic/BuiltinsHexagon.def |
 | llvm/test/CodeGen/Hexagon/v6-vecpred-copy.ll |
 | llvm/test/CodeGen/Hexagon/intrinsics-v60-alu.ll |
 | llvm/lib/Target/Hexagon/HexagonIntrinsics.td |
 | llvm/test/CodeGen/Hexagon/hvx-byte-store.ll |
 | llvm/test/CodeGen/Hexagon/inline-asm-qv.ll |
 | llvm/test/CodeGen/Hexagon/v6-inlasm4.ll |
 | llvm/test/CodeGen/Hexagon/v6vect-spill-kill.ll |
 | clang/test/CodeGen/builtins-hexagon-v66.c |
 | clang/lib/CodeGen/CGBuiltin.cpp |
 | llvm/test/CodeGen/Hexagon/autohvx/bitwise-pred-128b.ll |
 | llvm/test/CodeGen/Hexagon/v6vect-pred2.ll |
 | llvm/include/llvm/IR/IntrinsicsHexagon.td |
 | llvm/test/CodeGen/Hexagon/vect-downscale.ll |
 | llvm/test/CodeGen/Hexagon/hvx-byte-store-double.ll |
Commit
2ade59ec9430b23d4d42c8197b71e441a0b32773
by spatel[x86] add test for uint->fp with unsafe-fp-math (PR43609); NFC
|
 | llvm/test/CodeGen/X86/vec_int_to_fp.ll |
Commit
f5678d4a6a602bd966570b6f9fdd9aa0de5855b8
by Tony.Tye[AMDGPU] Update AMDGPUUsage with DWARF proposal
Summary: - Add AMDGPU DWARF proposal. - Add references for gfx10 ISA and SemVer.
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, aprantl, dstuttard, tpr, jfb, dmgreen, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70523
|
 | llvm/docs/AMDGPUUsage.rst |
Commit
e4d20ec8add39209972e55a71c327fa5b4fc4400
by llvm-project[IndVarSimply] Fix assert/release build difference.
In builds with assertions enabled (!NDEBUG), IndVarSimplify does an additional query to ScalarEvolution which may change future SCEV queries since it fills the internal cache differently. The result is actually only used with the -verify-indvars command line option. We fix the issue by only calling SE->getBackedgeTakenCount(L) if -verify-indvars is enabled such that only -verify-indvars shows the behavior, but not debug builds themselves. Also add a remark to the description of -verify-indvars about this behavior.
Fixes llvm.org/PR44815
Differential Revision: https://reviews.llvm.org/D74810
|
 | llvm/lib/Transforms/Scalar/IndVarSimplify.cpp |
 | llvm/test/Transforms/IndVarSimplify/deterministic-scev-verify.ll |
Commit
788e74ce29c9b2dfd6b392b03b7b829f01d637a7
by Tony.Tye[AMDGPU] AMDGPUUsage define call convention ABI
Reviewers: scott.linder, arsenm, b-sumner
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, kerbowa, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74861
|
 | llvm/docs/AMDGPUUsage.rst |
Commit
6ba2d7b166c2e07dfc8328a8253276710619b1fe
by Louis Dionne[libc++] Fixes backreferences for extended grammar.
The regex backreferences were not properly parsed and used when using the extended grammar. This change parses them. The issue was found while working on PR34297.
Thanks to Mark de Wever for the patch!
Differential Revision: https://reviews.llvm.org/D62451
|
 | libcxx/test/std/re/re.alg/re.alg.search/extended.pass.cpp |
 | libcxx/include/regex |
 | libcxx/test/std/re/re.alg/re.alg.match/extended.pass.cpp |
Commit
c3478eff7a65d6a77b34e756eabc7176a2b422e8
by Louis Dionne[libc++] reduce <complex> parsing time
Instead of including <ios> for ios_base::failbit, simply get failbit member of the template argument. Print directly to a stream instead of using intermediate ostringstream.
Parsing time: 874ms -> 164ms (-81%)
Thanks to Nikita Kniazev for the patch!
Differential Revision: https://reviews.llvm.org/D71214
|
 | libcxx/include/complex |
Commit
ddd2257f48a83843aa35e7cbd337c3fe0c103598
by Dan Liew[TSan] Fix incorrect expansion of `%deflake` lit substitution.
dadc214e4d9d09a8a7a9f15780c1201c18f93e05 introduced a change to `%deflake` to support a configurable threshold but the patch forgot to add a trailing space.
|
 | compiler-rt/test/tsan/lit.cfg.py |
Commit
03954a12aecbe77afb9c3ad47620305ec2675858
by Stanislav.Mekhanoshin[AMDGPU] Fix DS_WRITE_B32 patterns
It uses VGPR_32.RegTypes which includes 16 bit types. As a result DS_WRITE_B32 may be generated for "store i16" which is a bug. The only reason we do not hit it now is relative patterns complexity and sorting. Should DS_WRITE_B16 pattern complexity become higher and the bug appears.
Differential Revision: https://reviews.llvm.org/D74868
|
 | llvm/lib/Target/AMDGPU/DSInstructions.td |
Commit
d48d339156916b4dd87a8c06c1c242fd794f08e5
by i[lld][ELF] Add --shuffle-sections=seed to shuffle input sections
Summary: This option causes lld to shuffle sections by assigning different priorities in each run.
The use case for this is to introduce randomization in benchmarks. The idea is inspired by the paper "Producing Wrong Data Without Doing Anything Obviously Wrong!" (https://www.inf.usi.ch/faculty/hauswirth/publications/asplos09.pdf). Unlike the paper, we shuffle individual sections, not just input files.
Doing this in lld is particularly convenient as the --reproduce option makes it easy to collect all the necessary bits for relinking the program being benchmarked. Once that it is done, all that is needed is to add --shuffle-sections=0 to the response file and relink before each run of the benchmark.
Differential Revision: https://reviews.llvm.org/D74791
|
 | lld/ELF/Config.h |
 | lld/test/ELF/shuffle-sections.s |
 | lld/ELF/Options.td |
 | lld/docs/ld.lld.1 |
 | lld/ELF/Driver.cpp |
 | lld/ELF/Writer.cpp |
Commit
7d91633a2b9b1f563dc14c632cc0c461c3651f76
by davgFix broken test on Windows caused by D74790
|
 | clang/test/CodeCompletion/included-symlinks.cpp |
Commit
85fb997659b55101b58e3545733e581bf4ed9cf2
by Lang Hames[ORC] Add generic initializer/deinitializer support.
Initializers and deinitializers are used to implement C++ static constructors and destructors, runtime registration for some languages (e.g. with the Objective-C runtime for Objective-C/C++ code) and other tasks that would typically be performed when a shared-object/dylib is loaded or unloaded by a statically compiled program.
MCJIT and ORC have historically provided limited support for discovering and running initializers/deinitializers by scanning the llvm.global_ctors and llvm.global_dtors variables and recording the functions to be run. This approach suffers from several drawbacks: (1) It only works for IR inputs, not for object files (including cached JIT'd objects). (2) It only works for initializers described by llvm.global_ctors and llvm.global_dtors, however not all initializers are described in this way (Objective-C, for example, describes initializers via specially named metadata sections). (3) To make the initializer/deinitializer functions described by llvm.global_ctors and llvm.global_dtors searchable they must be promoted to extern linkage, polluting the JIT symbol table (extra care must be taken to ensure this promotion does not result in symbol name clashes).
This patch introduces several interdependent changes to ORCv2 to support the construction of new initialization schemes, and includes an implementation of a backwards-compatible llvm.global_ctor/llvm.global_dtor scanning scheme, and a MachO specific scheme that handles Objective-C runtime registration (if the Objective-C runtime is available) enabling execution of LLVM IR compiled from Objective-C and Swift.
The major changes included in this patch are:
(1) The MaterializationUnit and MaterializationResponsibility classes are extended to describe an optional "initializer" symbol for the module (see the getInitializerSymbol method on each class). The presence or absence of this symbol indicates whether the module contains any initializers or deinitializers. The initializer symbol otherwise behaves like any other: searching for it triggers materialization.
(2) A new Platform interface is introduced in llvm/ExecutionEngine/Orc/Core.h which provides the following callback interface:
- Error setupJITDylib(JITDylib &JD): Can be used to install standard symbols in JITDylibs upon creation. E.g. __dso_handle.
- Error notifyAdding(JITDylib &JD, const MaterializationUnit &MU): Generally used to record initializer symbols.
- Error notifyRemoving(JITDylib &JD, VModuleKey K): Used to notify a platform that a module is being removed.
Platform implementations can use these callbacks to track outstanding initializers and implement a platform-specific approach for executing them. For example, the MachOPlatform installs a plugin in the JIT linker to scan for both __mod_inits sections (for C++ static constructors) and ObjC metadata sections. If discovered, these are processed in the usual platform order: Objective-C registration is carried out first, then static initializers are executed, ensuring that calls to Objective-C from static initializers will be safe.
This patch updates LLJIT to use the new scheme for initialization. Two LLJIT::PlatformSupport classes are implemented: A GenericIR platform and a MachO platform. The GenericIR platform implements a modified version of the previous llvm.global-ctor scraping scheme to provide support for Windows and Linux. LLJIT's MachO platform uses the MachOPlatform class to provide MachO specific initialization as described above.
Reviewers: sgraenitz, dblaikie
Subscribers: mgorny, hiraditya, mgrang, ributzka, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74300
|
 | llvm/unittests/ExecutionEngine/Orc/OrcTestCommon.h |
 | llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h |
 | llvm/examples/Kaleidoscope/BuildingAJIT/Chapter1/KaleidoscopeJIT.h |
 | llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp |
 | llvm/lib/ExecutionEngine/Orc/Layer.cpp |
 | llvm/unittests/ExecutionEngine/Orc/RTDyldObjectLinkingLayerTest.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h |
 | llvm/lib/ExecutionEngine/Orc/CMakeLists.txt |
 | llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h |
 | llvm/lib/ExecutionEngine/Orc/CompileUtils.cpp |
 | llvm/lib/ExecutionEngine/Orc/Core.cpp |
 | llvm/tools/llvm-jitlink/llvm-jitlink.h |
 | llvm/include/llvm/ExecutionEngine/Orc/IRTransformLayer.h |
 | llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h |
 | llvm/tools/lli/lli.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/Mangling.h |
 | llvm/lib/ExecutionEngine/Orc/LazyReexports.cpp |
 | llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp |
 | llvm/lib/ExecutionEngine/Orc/Mangling.cpp |
 | llvm/test/ExecutionEngine/OrcLazy/objc-minimal.ll |
 | llvm/tools/llvm-jitlink/llvm-jitlink.cpp |
 | llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp |
 | llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/Core.h |
 | llvm/include/llvm/ExecutionEngine/Orc/ObjectLinkingLayer.h |
 | llvm/lib/ExecutionEngine/Orc/LLJIT.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/CompileUtils.h |
 | llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h |
 | llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/IRCompileLayer.h |
 | llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h |
 | llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/IndirectionUtils.h |
 | llvm/include/llvm/ExecutionEngine/Orc/Layer.h |
 | llvm/examples/Kaleidoscope/BuildingAJIT/Chapter2/KaleidoscopeJIT.h |
Commit
7ff1f55a1219719f57a6f7905c26ce41d1767e4c
by martinlibclang: Add static build support for Windows
Differential Revision: https://reviews.llvm.org/D74564
|
 | clang/tools/libclang/CMakeLists.txt |
 | clang/include/clang-c/Platform.h |
Commit
c4b8c3ddc1ab15c914051faea6575cac2581aedb
by mvelsAdd benchmarks for basic_string::erase
Reviewers: EricWF
Subscribers: christof, libcxx-commits
Tags: #libc
Differential Revision: https://reviews.llvm.org/D73740
|
 | libcxx/benchmarks/string.bench.cpp |
Commit
4960eb4a1bdd6f469d5ad6d5049609cf97a982f3
by davgAnother fix for 7d91633a2b9b1f563dc14c632cc0c461c3651f76
Forgot to update lines for RUNs
|
 | clang/test/CodeCompletion/included-symlinks.cpp |
Commit
9df65ca19e5a4f5e49d036b190d814ca8a1784a0
by Lang Hames[ORC] Qualify nullptr_t.
|
 | llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h |
Commit
63d0932c358012bcfc1a87f78a5f05bafc2dc86d
by Lang Hames[ORC] Fix a missing move.
|
 | llvm/lib/ExecutionEngine/Orc/LLJIT.cpp |
Commit
0b6ead018a6838dcb430001af295b1f044a8baf2
by arsenm2AMDGPU/GlobalISel: Cleanup min/max RegBankSelect tests
Use common check prefix, although update_mir_test_checks makes this unnecessarily annoying. Also make sure to have uses in case that ever ends up mattering.
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-smin.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-smax.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-umin.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-umax.mir |
Commit
cbc3b3046f6b1e2a721534439f62b7a275597a6e
by arsenm2AMDGPU/GlobalISel: Remove outdated comment
|
 | llvm/lib/Target/AMDGPU/SIInstructions.td |
Commit
ed07c89fc50f38c4f1403b19897468edd7e5cbf3
by Yaxun.LiuAdd cl_khr_mipmap_image_writes as supported to AMDGPU
Differential Revision: https://reviews.llvm.org/D74807
|
 | clang/lib/Basic/Targets/AMDGPU.h |
Commit
4bb0c8f91cb7448ef6de913367f2b46b46392fda
by arsenm2AMDGPU: Enable integer division bypass
We probably want this, and I've meant to turn this on for a long time. SC actually emits a special case to early-out for a 1 denominator, which perhaps should also be considered.
|
 | llvm/test/CodeGen/AMDGPU/sdiv64.ll |
 | llvm/test/CodeGen/AMDGPU/udiv64.ll |
 | llvm/test/CodeGen/AMDGPU/bypass-div.ll |
 | llvm/test/CodeGen/AMDGPU/srem64.ll |
 | llvm/test/CodeGen/AMDGPU/urem64.ll |
 | llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp |
 | llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll |
 | llvm/test/CodeGen/AMDGPU/sdivrem64.r600.ll |
Commit
f5efa08247c7b5dded4e6854c49c9f49b96398f2
by Lang Hames[JITLink] Fix testcase for main JITDylib rename in 85fb997659b.
|
 | llvm/test/ExecutionEngine/JITLink/X86/LocalDependencyPropagation.s |
Commit
38419b8afa8daeb0c650143c87037bab907650bf
by llvmgnsyncbot[gn build] Port 85fb997659b
|
 | llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn |
Commit
709fd989b644a80527e0f4a22503d54255bc095c
by n.james93[clang-tidy] fix readability-redundant-member-init auto-fix of Function-try-block
Summary: This fixes https://bugs.llvm.org/show_bug.cgi?id=39310
Reviewers: malcolm.parsons, ioeric
Reviewed By: malcolm.parsons
Subscribers: xazax.hun
Tags: #clang-format, #clang-tools-extra
Differential Revision: https://reviews.llvm.org/D74800
|
 | clang/lib/Format/TokenAnnotator.cpp |
 | clang/lib/Format/UnwrappedLineParser.cpp |
 | clang/unittests/Format/CleanupTest.cpp |
 | clang-tools-extra/test/clang-tidy/checkers/modernize-use-default-member-init.cpp |
Commit
16aabc86e0ab49dd9dc91dc4d0f71b3fbcdba2bf
by tlively[WebAssembly] Fix memory bug introduced in 52861809994c
Summary: The instruction at `DefI` can sometimes be destroyed by `rematerializeCheapDef`, so it should not be used after calling that function. The fix is to use `Insert` instead when examining additional multivalue stackifications. `Insert` is the address of the new defining instruction after all moves and rematerializations have taken place.
Reviewers: aheejin
Subscribers: dschuff, sbc100, jgravelle-google, hiraditya, sunfish, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74875
|
 | llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp |
Commit
d1d5180e6904b3fa86f750a05a6721163e115f4d
by n.james93[NFC] Fix issues with clang-tidy checks list.rst
Added FixItHint comments to ReservedIdentifierCheck and IdentifierNamingCheck to trick the python scripts into detecting a fix it is provided as it can't see the FixItHints in RenamerClangTidyCheck.cpp
|
 | clang-tools-extra/clang-tidy/bugprone/ReservedIdentifierCheck.cpp |
 | clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp |
 | clang-tools-extra/docs/clang-tidy/checks/list.rst |
Commit
562c6b80192243b141d1ddd15d1827c860992147
by Dan LiewAdd a `%darwin_min_target_with_tls_support` lit substitution.
Summary: This substitution expands to the appropriate minimum deployment target flag where thread local storage (TLS) was first introduced on Darwin platforms. For all other platforms the substitution expands to an empty string.
E.g. for macOS the substitution expands to `-mmacosx-version-min=10.12`
This patch adds support for the substitution (and future substitutions) by doing a minor refactor and then uses the substitution in the relevant TSan tests.
rdar://problem/59568956
Reviewers: yln, kubamracek, dvyukov, vitalybuka
Subscribers: #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D74802
|
 | compiler-rt/test/tsan/tls_race2.cpp |
 | compiler-rt/test/tsan/mutexset7.cpp |
 | compiler-rt/test/tsan/tls_race.cpp |
 | compiler-rt/test/tsan/dtls.c |
 | compiler-rt/test/lit.common.cfg.py |
Commit
95e3956189a6722d1ec4b6d98fb855ee257e64fe
by gclaytonAdd an Offset field to the SourceLocation for LookupResult objects.
Summary: The Offset provides the offset within the function in a SourceLocation struct. This allows us to show the byte offset within a function. We also track offsets within inline functions as well. Updated the lookup tests to verify the offset for functions and inline functions.
0x1000: main + 32 @ /tmp/main.cpp:45
Reviewers: labath, aadsm, serhiy.redko, jankratochvil, xiaobai, wallace, aprantl, JDevlieghere
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74680
|
 | llvm/include/llvm/DebugInfo/GSYM/LookupResult.h |
 | llvm/lib/DebugInfo/GSYM/FunctionInfo.cpp |
 | llvm/lib/DebugInfo/GSYM/InlineInfo.cpp |
 | llvm/unittests/DebugInfo/GSYM/GSYMTest.cpp |
Commit
28e0449ec690cc828fb0d94ecee30c8680e0a3d7
by hanchung[mlir][Linalg] Allow specifiying zero-rank shaped type operands to linalg.indexed_generic ops.
Patch D74638 allows linalg.generic ops to use zero-rank shaped type operands, this also can be applied to linalg.indexed_generic ops.
|
 | mlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp |
 | mlir/test/Dialect/Linalg/loops.mlir |
 | mlir/test/Dialect/Linalg/roundtrip.mlir |
Commit
0edb2129258c727e9efe6fa234b28880ff64c1b9
by rnk[MS] Mark vectorcall FP and vector args inreg
This has no effect on how LLVM passes the arguments, but it prevents rewriteWithInAlloca from thinking that these parameters should be part of the inalloca pack.
Follow-up to D72114
Reviewed By: erichkeane
Differential Revision: https://reviews.llvm.org/D74452
|
 | clang/test/CodeGenCXX/inalloca-vector.cpp |
 | clang/lib/CodeGen/TargetInfo.cpp |
 | clang/test/CodeGen/vectorcall.c |
Commit
40463301e4586a1b1bcdf4af65ef10b67ac32c66
by i[ELF][test] Fix shuffle_sections.s
C++ standard libraries have different random function implementations. We cannot expect a particular order.
|
 | lld/test/ELF/shuffle-sections.s |
Commit
878159038b0cae2c9ca4180ea35f5e115e9570ce
by maskray[ELF][test] Fix --symbol-ordering-file tests of shuffle_sections.s
|
 | lld/test/ELF/shuffle-sections.s |
Commit
bd4812776bc73ca27bf6c68629a20f03268cdd6e
by sbc[WebAssembly] Use llvm::Optional to store optional symbol attributes. NFC.
The changes the in-memory representation of wasm symbols such that their optional ImportName and ImportModule use llvm::Optional.
ImportName is set whenever WASM_SYMBOL_EXPLICIT_NAME flag is set. ImportModule (for imports) is currently always set since it defaults to "env".
In the future we can possibly extent to binary format distingish import which have explit module names.
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74109
|
 | lld/wasm/SymbolTable.h |
 | llvm/test/MC/WebAssembly/debug-info.ll |
 | lld/wasm/Driver.cpp |
 | lld/wasm/InputFiles.cpp |
 | lld/wasm/LTO.cpp |
 | lld/wasm/SymbolTable.cpp |
 | lld/wasm/SyntheticSections.cpp |
 | llvm/test/tools/llvm-readobj/wasm/wasm-imports.test |
 | lld/wasm/Symbols.h |
 | llvm/test/tools/llvm-readobj/wasm/symbols.test |
 | llvm/tools/llvm-readobj/WasmDumper.cpp |
 | llvm/include/llvm/MC/MCSymbolWasm.h |
 | llvm/lib/Object/WasmObjectFile.cpp |
 | llvm/include/llvm/BinaryFormat/Wasm.h |
Commit
a750422609eb5687f6f27d8908dda3a119622254
by riddleriver[mlir] Update usage of createJITDylib to createBareJITDylib after LLVM change
A few tests are broken, but this allows for MLIR to build.
|
 | mlir/lib/ExecutionEngine/ExecutionEngine.cpp |
Commit
6990eaf1fe00e9736fbfbcae160e18c5edbcd1d4
by Jonas Devlieghere[lldb/Test] Skip VSCode test on embedded Darwin
These tests are not configured to run on the device.
|
 | lldb/test/API/tools/lldb-vscode/launch/TestVSCode_launch.py |
 | lldb/test/API/tools/lldb-vscode/breakpoint/TestVSCode_setFunctionBreakpoints.py |
 | lldb/test/API/tools/lldb-vscode/step/TestVSCode_step.py |
 | lldb/test/API/tools/lldb-vscode/breakpoint/TestVSCode_setExceptionBreakpoints.py |
 | lldb/test/API/tools/lldb-vscode/breakpoint/TestVSCode_setBreakpoints.py |
 | lldb/test/API/tools/lldb-vscode/variables/TestVSCode_variables.py |
 | lldb/test/API/tools/lldb-vscode/attach/TestVSCode_attach.py |
 | lldb/test/API/tools/lldb-vscode/stackTrace/TestVSCode_stackTrace.py |
Commit
06f1a5c9c283838b8ed1d16961e41462371cd61f
by sbc[lld][WebAssembly] Allow symbols with explict import names to be undefined at link time.
Differential Revision: https://reviews.llvm.org/D74110
|
 | lld/test/wasm/import-name.ll |
 | lld/docs/WebAssembly.rst |
 | lld/wasm/Relocations.cpp |
Commit
8ea3eb86d65f458208a5df12d44c914b1d1e6dea
by thakis[gn build] (manually) partially (?) merge 7ff1f55a1219
|
 | llvm/utils/gn/secondary/clang/tools/libclang/BUILD.gn |
Commit
be66cf221bbe6bb119d478e69fd2ca21872e2ad3
by ikudrin[DebugInfo] Read CIE pointer as a relocatable value.
The CIE pointer field of an FDE record contains an offset to a corresponding CIE record. In object files, this value comes with relocation because the value has to be fixed when a linker combines the final section from multiple sources. In most object files there is only one CIE record at offset 0 of the .debug_frame section, so reading a relocated or a raw value makes no difference. However, in partially linked object files there are multiple CIE records and the relocations should be applied to recover the right offset value.
Differential Revision: https://reviews.llvm.org/D74612
|
 | llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp |
 | llvm/test/DebugInfo/debug-frame-cie-pointer-reloc.test |
Commit
95a239be5b771614a3be47db55ff5ce4acd69390
by ikudrin[DebugInfo] Remove a misleading comment for llvm::dwarf::FDE.
The comment described a linked CIE to be acquired lazily. That is not true and looks like it was never true.
Differential Revision: https://reviews.llvm.org/D74761
|
 | llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h |
Commit
84fc1233d9a47cd7b6e681b4573d9abbc779dd2b
by SourabhSingh.Tomar[DebugInfo][NFCI]: Removed an exclamation mark from error message.
|
 | llvm/tools/llvm-dwp/llvm-dwp.cpp |
Commit
6730f390a1fb069e567ebd635390de381d21b994
by douglas.yungFixup test after changes made in 709fd989.
The change added a test that required exceptions, so enable that explicitly so that it works on platforms that default to having exceptions disabled (like the PS4).
|
 | clang-tools-extra/test/clang-tidy/checkers/modernize-use-default-member-init.cpp |
Commit
c6ac717aa70d3f31c0a4fd6385e8baaa9f3e2724
by johannes[Attributor] Allow multiple uses of a casted function pointer
If a function pointer is casted into a different type the resulting expression can be a constant. If so, it can be used multiple times which cannot be handled by the AbstractCallSite constructor alone. Instead, we follow the cast expression uses now explicitly during the call site traversal.
|
 | llvm/test/Transforms/Attributor/IPConstantProp/arg-count-mismatch.ll |
 | llvm/test/Transforms/Attributor/callbacks.ll |
 | llvm/lib/Transforms/IPO/Attributor.cpp |
 | llvm/include/llvm/Transforms/IPO/Attributor.h |
 | llvm/test/Transforms/Attributor/IPConstantProp/arg-type-mismatch.ll |
Commit
490a9a4b77ea23f388cae67d732af6bd8aa576f9
by Lang Hames[examples] Fix the clang-interpreter example for changes in 85fb997659b.
|
 | clang/examples/clang-interpreter/main.cpp |
Commit
92250ec270e1b0ed9f25ddaa224b5cbda9afc686
by Lang Hames[examples] Fix the SpeculativeJIT example for 85fb997659b.
|
 | llvm/examples/SpeculativeJIT/SpeculativeJIT.cpp |
Commit
1e99fc9d58d12b77f8d7319d464b416a1672c3e2
by johannes[Attributor] Add initial AAIsDead for arguments
We usually will ask for liveness of an argument anyway so we ended up lazily creating the attribute anyway. However, that is not always the case and even if it is we should go the eager route here. Various tests show how this can improve the outcome. One test exposed a problem with type mismatches between argument and call site argument, a fix is included. For liveness various more tests were added as well.
|
 | llvm/test/Transforms/Attributor/range.ll |
 | llvm/test/Transforms/Attributor/liveness.ll |
 | llvm/lib/Transforms/IPO/Attributor.cpp |
 | llvm/test/Transforms/Attributor/IPConstantProp/arg-count-mismatch.ll |
Commit
14fb31795a4bd25798bc2788dd4d4e38e3ea41c7
by Jonas Devlieghere[lldb/Test] s/skipIfDarwinEmbedded/skipIfRemote/ in VSCode tests.
As pointed out on lldb-commits this skipIfRemote is the better fit for the decorator.
|
 | lldb/test/API/tools/lldb-vscode/step/TestVSCode_step.py |
 | lldb/test/API/tools/lldb-vscode/launch/TestVSCode_launch.py |
 | lldb/test/API/tools/lldb-vscode/variables/TestVSCode_variables.py |
 | lldb/test/API/tools/lldb-vscode/attach/TestVSCode_attach.py |
 | lldb/test/API/tools/lldb-vscode/breakpoint/TestVSCode_setExceptionBreakpoints.py |
 | lldb/test/API/tools/lldb-vscode/stackTrace/TestVSCode_stackTrace.py |
 | lldb/test/API/tools/lldb-vscode/breakpoint/TestVSCode_setBreakpoints.py |
 | lldb/test/API/tools/lldb-vscode/breakpoint/TestVSCode_setFunctionBreakpoints.py |
Commit
16188f9d70d77ca9ff1d1d2ff2db64479341e9bf
by johannes[Attributor][FIX] Do not create new calls edge we cannot handle
If we propagate function pointers across function boundaries we can create new call edges. These need to be represented in the CG if we run as a CGSCC pass. In the new pass manager that is currently not handled by the CallGraphUpdater so we need to prevent the situation for now.
|
 | llvm/lib/Transforms/IPO/Attributor.cpp |
 | llvm/include/llvm/Transforms/IPO/Attributor.h |
Commit
e1eed6c5b9faf89491beaa592180a1c96fe13e0e
by johannes[Attributor] Generalize `getAssumedConstantInt` interface
We are often interested in an assumed constant and sometimes it has to be an integer constant. Before we only looked for the latter, now we can ask for either.
|
 | llvm/test/Transforms/Attributor/ArgumentPromotion/live_called_from_dead_2.ll |
 | llvm/test/Transforms/Attributor/IPConstantProp/arg-count-mismatch.ll |
 | llvm/lib/Transforms/IPO/Attributor.cpp |
 | llvm/test/Transforms/Attributor/IPConstantProp/pthreads.ll |
 | llvm/test/Transforms/Attributor/liveness.ll |
 | llvm/test/Transforms/Attributor/ArgumentPromotion/2008-07-02-array-indexing.ll |
 | llvm/test/Transforms/Attributor/IPConstantProp/thread_local_acs.ll |
 | llvm/test/Transforms/Attributor/align.ll |
 | llvm/test/Transforms/Attributor/value-simplify.ll |
 | llvm/test/Transforms/Attributor/IPConstantProp/musttail-call.ll |
 | llvm/test/Transforms/Attributor/ArgumentPromotion/chained.ll |
Commit
de6e968c0d44d21b16da9b6ec07599e529b8482a
by arsenm2TableGen: Fix logic for default operands
This was checking for default operands in the current DAG instruction, rather than the correct result operand list. I'm not entirly sure how this managed to work before, but was failing for me when multiple default operands were overridden.
|
 | llvm/test/TableGen/DefaultOpsGlobalISel.td |
 | llvm/utils/TableGen/CodeGenDAGPatterns.cpp |
Commit
a801ee869dede6fcef4e6970e94f1a87dc805b76
by johannes[Attributor][FIX] Avoid setting wrong load/store alignments
|
 | llvm/lib/Transforms/IPO/Attributor.cpp |
 | llvm/test/Transforms/Attributor/align.ll |
 | llvm/test/Transforms/Attributor/returned.ll |
Commit
f8ad735729bf8892d71863b4da44ca2dde24d778
by johannes[Attributor] Use existing `returned` information better
We can look through calls with `returned` argument attributes when we collect subsuming positions. This allows us to get existing attributes from more places.
|
 | llvm/test/Transforms/Attributor/returned.ll |
 | llvm/lib/Transforms/IPO/Attributor.cpp |
Commit
3c4da4d7454404b4b4b2376f089226443709f05c
by johannes[Attributor][NFC] Add more memory_location tests
|
 | llvm/test/Transforms/Attributor/memory_locations.ll |
Commit
8e76fec0ae89d724a8d20d48f34c6c596404b916
by johannes[Attributor][NFC] Improve the debug output & add a TODO
|
 | llvm/lib/Transforms/IPO/Attributor.cpp |
Commit
e253cdda35eb24f29170aaaf102caed94a85201c
by uenoku.tokotoko[MustExecute] Add backward exploration for must-be-executed-context
Summary: As mentioned in D71974, it is useful for must-be-executed-context to explore CFG backwardly. This patch is ported from parts of D64975. We use a dominator tree to find the previous context if a dominator tree is available.
Reviewers: jdoerfert, hfinkel, baziotis, sstefan1
Reviewed By: jdoerfert
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74817
|
 | llvm/test/Transforms/Attributor/heap_to_stack.ll |
 | llvm/include/llvm/Analysis/MustExecute.h |
 | llvm/test/Transforms/Attributor/misc.ll |
 | llvm/lib/Analysis/MustExecute.cpp |
 | llvm/test/Transforms/Attributor/nonnull.ll |
 | llvm/test/Analysis/MustExecute/must_be_executed_context.ll |
 | llvm/include/llvm/Transforms/IPO/Attributor.h |
 | llvm/test/Transforms/Attributor/dereferenceable-1.ll |
Commit
d6d640ebae65d7a9f556f3a957a7b36d025dd16f
by maskray[ELF][test] Fix section sh_type and sh_flags
A future MC change may add a warning/error when a .section directive specifies incorrect sh_flags/sh_type.
|
 | lld/test/ELF/no-augmentation.s |
 | lld/test/ELF/icf16.s |
 | lld/test/ELF/invalid-eh-frame5.s |
 | lld/test/ELF/eh-frame-marker.s |
 | lld/test/ELF/eh-frame-negative-pcrel-sdata2.s |
 | lld/test/ELF/eh-frame-negative-pcrel-sdata4.s |
 | lld/test/ELF/invalid-cie-reference.s |
 | lld/test/ELF/eh-frame-value-format4.s |
 | lld/test/ELF/invalid-eh-frame2.s |
 | lld/test/ELF/invalid-fde-rel.s |
 | lld/test/ELF/eh-frame-value-format9.s |
 | lld/test/ELF/Inputs/eh-frame-pcrel-overflow.s |
 | lld/test/ELF/eh-frame-value-format3.s |
 | lld/test/ELF/comdat-discarded-reloc.s |
 | lld/test/ELF/invalid/eh-frame-hdr-no-out.s |
 | lld/test/ELF/linkerscript/compress-debug-sections-custom.s |
 | lld/test/ELF/invalid-cie-length4.s |
 | lld/test/ELF/eh-frame-value-format2.s |
 | lld/test/ELF/eh-frame-value-format6.s |
 | lld/test/ELF/invalid-cie-length3.s |
 | lld/test/ELF/invalid-eh-frame8.s |
 | lld/test/ELF/eh-frame-value-format1.s |
 | lld/test/ELF/invalid-cie-length5.s |
 | lld/test/ELF/Inputs/ppc64-sort-small-cm-relocs-input4.s |
 | lld/test/ELF/linkerscript/compress-debug-sections.s |
 | lld/test/ELF/eh-frame-value-format8.s |
 | lld/test/ELF/mips-micro-relocs.s |
 | lld/test/ELF/Inputs/eh-frame-end.s |
 | lld/test/ELF/ppc64-ld-got-dtprel.s |
 | lld/test/ELF/eh-frame-value-format7.s |
 | lld/test/ELF/eh-frame-begin-end.s |
 | lld/test/ELF/invalid-eh-frame.s |
 | lld/test/ELF/Inputs/mips-nonalloc.s |
 | lld/test/ELF/ehframe-relocation.s |
 | lld/test/ELF/invalid-eh-frame6.s |
 | lld/test/ELF/invalid-eh-frame7.s |
 | lld/test/ELF/eh-frame-value-format5.s |
 | lld/test/ELF/invalid-cie-length.s |
 | lld/test/ELF/linkerscript/Inputs/compress-debug-sections.s |
 | lld/test/ELF/invalid-cie-length2.s |
 | lld/test/ELF/invalid-eh-frame9.s |
 | lld/test/ELF/eh-frame-pcrel-overflow.s |
 | lld/test/ELF/invalid-eh-frame4.s |
 | lld/test/ELF/mips-nonalloc.s |
 | lld/test/ELF/compress-debug-sections-reloc.s |
 | lld/test/ELF/eh-frame-negative-pcrel-sdata8.s |
 | lld/test/ELF/invalid-eh-frame3.s |
Commit
3a0f6e699bb6d96dc62dce6faef20ac26cf103fd
by sgueltonFix compiler extension in standalone mode
Use a dedicated cmake file to store the extension configured within LLVM. That way, a standalone build of clang can load this cmake file and get all the configured standalone extensions.
This patch is related to https://reviews.llvm.org/D74602
Differential Revision: https://reviews.llvm.org/D74757
|
 | llvm/cmake/modules/AddLLVM.cmake |
 | clang/CMakeLists.txt |
 | llvm/cmake/modules/CMakeLists.txt |
 | llvm/CMakeLists.txt |
Commit
d8916e58cf1c37dbb1aef1a0e466537262046a8f
by pifonRemove debugging artefact.
|
 | mlir/lib/Dialect/LoopOps/Transforms/ParallelLoopFusion.cpp |
Commit
fdea9a4ec9b0d9585b8fe8a612686d9f44f40ddc
by Raphael Isemann[lldb] Remove license headers from all test source files
Summary: Around a third of our test sources have LLVM license headers. This patch removes those headers from all test sources and also fixes any tests that depended on the length of the license header.
The reasons for this are:
* A few tests verify line numbers and will start failing if the number of lines in the LLVM license header changes. Once I landed my patch for valid SourceLocations in debug info we will probably have even more tests that verify line numbers. * No other LLVM project is putting license headers in its test files to my knowledge. * They make the test sources much more verbose than they have to be. Several tests have longer license headers than the actual test source.
For the record, the following tests had their line numbers changed to pass with the removal of the license header: lldb-api :: functionalities/breakpoint/breakpoint_by_line_and_column/TestBreakpointByLineAndColumn.py lldb-shell :: Reproducer/TestGDBRemoteRepro.test lldb-shell :: Reproducer/TestMultipleTargets.test lldb-shell :: Reproducer/TestReuseDirectory.test lldb-shell :: ExecControl/StopHook/stop-hook-threads.test lldb-shell :: ExecControl/StopHook/stop-hook.test lldb-api :: lang/objc/exceptions/TestObjCExceptions.py
Reviewers: #lldb, espindola, JDevlieghere
Reviewed By: #lldb, JDevlieghere
Subscribers: emaste, aprantl, arphaman, JDevlieghere, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74839
|
 | lldb/test/API/python_api/lldbutil/frame/main.c |
 | lldb/test/API/commands/frame/var-scope/main.c |
 | lldb/test/API/commands/register/register/intel_xtended_registers/mpx_bound_violation/main.cpp |
 | lldb/test/API/functionalities/thread/step_out/main.cpp |
 | lldb/test/API/functionalities/unwind/standard/hand_written/divmod.cpp |
 | lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook.c |
 | lldb/test/API/lang/cpp/namespace_definitions/foo.h |
 | lldb/test/API/lang/cpp/static_members/main.cpp |
 | lldb/test/Shell/Reproducer/Inputs/MultipleTargetsCapture.in |
 | lldb/test/API/commands/watchpoints/watchpoint_on_vectors/main.c |
 | lldb/test/API/functionalities/data-formatter/nssetsynth/main.m |
 | lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-2.lldbinit |
 | lldb/test/API/tools/lldb-server/libraries-svr4/main.cpp |
 | lldb/test/API/functionalities/darwin_log/filter/exact_match/subsystem/main.c |
 | lldb/test/API/functionalities/darwin_log/basic/main.c |
 | lldb/test/API/functionalities/thread/break_after_join/main.cpp |
 | lldb/test/API/functionalities/inferior-changed/main2.c |
 | lldb/test/API/lang/c/enum_types/main.c |
 | lldb/test/API/functionalities/tail_call_frames/ambiguous_tail_call_seq2/main.cpp |
 | lldb/test/API/lang/cpp/this/main.cpp |
 | lldb/test/API/macosx/order/main.c |
 | lldb/test/API/commands/log/basic/main.cpp |
 | lldb/test/API/functionalities/breakpoint/breakpoint_by_line_and_column/main.c |
 | lldb/test/API/python_api/value/empty_class/main.cpp |
 | lldb/test/API/commands/expression/radar_9673664/main.c |
 | lldb/test/API/commands/command/nested_alias/main.cpp |
 | lldb/test/API/functionalities/tail_call_frames/disambiguate_call_site/main.cpp |
 | lldb/test/API/functionalities/darwin_log/filter/regex/subsystem/main.c |
 | lldb/test/API/functionalities/thread/jump/other.cpp |
 | lldb/test/API/lang/objc/bitfield_ivars/main.m |
 | lldb/test/API/functionalities/ptr_refs/main.c |
 | lldb/test/API/python_api/process/main.cpp |
 | lldb/test/API/lang/objc/variadic_methods/main.m |
 | lldb/test/API/lang/cpp/dynamic-value/sbvalue-cast.cpp |
 | lldb/test/API/functionalities/data-formatter/nsarraysynth/main.m |
 | lldb/test/API/lang/cpp/namespace/ns2.cpp |
 | lldb/test/API/functionalities/dead-strip/main.c |
 | lldb/test/API/functionalities/load_unload/a.cpp |
 | lldb/test/API/lang/cpp/unique-types/main.cpp |
 | lldb/test/API/functionalities/data-formatter/dump_dynamic/main.cpp |
 | lldb/test/API/functionalities/plugins/command_plugin/plugin.cpp.template |
 | lldb/test/API/lang/c/tls_globals/main.c |
 | lldb/test/API/commands/target/basic/b.c |
 | lldb/test/API/python_api/value/linked_list/main.cpp |
 | lldb/test/API/functionalities/archives/a.c |
 | lldb/test/API/functionalities/load_using_paths/main.cpp |
 | lldb/test/API/functionalities/thread/crash_during_step/main.cpp |
 | lldb/test/API/functionalities/data-formatter/stringprinter/main.cpp |
 | lldb/test/API/android/platform/main.cpp |
 | lldb/test/API/python_api/watchpoint/watchlocation/main.cpp |
 | lldb/test/API/commands/add-dsym/uuid/main.cpp.template |
 | lldb/test/API/functionalities/tsan/global_location/main.c |
 | lldb/test/API/lang/cpp/namespace/ns3.cpp |
 | lldb/test/API/commands/watchpoints/hello_watchlocation/main.cpp |
 | lldb/test/API/functionalities/darwin_log/source/info/main.c |
 | lldb/test/API/functionalities/data-formatter/summary-string-onfail/main.cpp |
 | lldb/test/API/commands/register/register/register_command/a.cpp |
 | lldb/test/API/lang/cpp/enum_types/main.cpp |
 | lldb/test/API/api/check_public_api_headers/main.cpp.template |
 | lldb/test/Shell/Reproducer/TestMultipleTargets.test |
 | lldb/test/API/lang/cpp/stl/main.cpp |
 | lldb/test/API/lang/objc/print-obj/blocked.m |
 | lldb/test/API/python_api/lldbutil/iter/main.cpp |
 | lldb/test/API/commands/watchpoints/watchpoint_size/main.c |
 | lldb/test/API/tools/lldb-server/libraries-svr4/svr4lib_a.cpp |
 | lldb/test/API/commands/watchpoints/watchpoint_commands/command/main.cpp |
 | lldb/test/API/functionalities/data-formatter/parray/main.cpp |
 | lldb/test/API/commands/frame/recognizer/main.m |
 | lldb/test/API/functionalities/breakpoint/breakpoint_set_restart/main.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-ptr-to-array/main.cpp |
 | lldb/test/API/lang/cpp/type_lookup/main.cpp |
 | lldb/test/API/functionalities/data-formatter/setvaluefromcstring/main.m |
 | lldb/test/API/python_api/signals/main.cpp |
 | lldb/test/API/lang/cpp/unsigned_types/main.cpp |
 | lldb/test/API/functionalities/tail_call_frames/disambiguate_tail_call_seq/main.cpp |
 | lldb/test/API/functionalities/inferior-crashing/main.c |
 | lldb/test/API/lang/cpp/const_this/main.cpp |
 | lldb/test/API/lang/c/function_types/main.c |
 | lldb/test/API/commands/expression/persistent_variables/main.c |
 | lldb/test/API/commands/disassemble/basic/main.cpp |
 | lldb/test/API/commands/expression/save_jit_objects/main.c |
 | lldb/test/API/functionalities/data-formatter/hexcaps/main.cpp |
 | lldb/test/API/functionalities/data-formatter/compactvectors/main.cpp |
 | lldb/test/API/lang/cpp/static_methods/main.cpp |
 | lldb/test/API/functionalities/breakpoint/breakpoint_ids/main.cpp |
 | lldb/test/API/lang/objc/ptr_refs/main.m |
 | lldb/test/API/functionalities/data-formatter/data-formatter-cpp/main.cpp |
 | lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-3.lldbinit |
 | lldb/test/API/python_api/objc_type/main.m |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/atomic/main.cpp |
 | lldb/test/API/commands/target/create-deps/a.cpp |
 | lldb/test/API/lang/c/strings/main.c |
 | lldb/test/API/lang/cpp/namespace/ns.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-objc/main.m |
 | lldb/test/API/functionalities/data-formatter/data-formatter-objc/nsstring/main.m |
 | lldb/test/API/python_api/frame/main.c |
 | lldb/test/API/python_api/sbdata/main.cpp |
 | lldb/test/API/tools/lldb-server/main.cpp |
 | lldb/test/API/lang/cpp/namespace_definitions/b.cpp |
 | lldb/test/API/functionalities/data-formatter/boolreference/main.mm |
 | lldb/test/API/commands/watchpoints/multiple_hits/main.cpp |
 | lldb/test/API/lang/cpp/diamond/main.cpp |
 | lldb/test/Shell/Reproducer/Inputs/GDBRemoteCrashCapture.in |
 | lldb/test/API/functionalities/darwin_log/filter/exact_match/activity/main.c |
 | lldb/test/API/functionalities/breakpoint/breakpoint_names/main.c |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/initializerlist/main.cpp |
 | lldb/test/API/lang/cpp/unicode-literals/main.cpp |
 | lldb/test/API/macosx/nslog/main.m |
 | lldb/test/API/lang/cpp/namespace/ns.h |
 | lldb/test/API/commands/expression/persistent_types/main.c |
 | lldb/test/API/commands/register/register/intel_xtended_registers/main.cpp |
 | lldb/test/API/python_api/thread/main2.cpp |
 | lldb/test/API/lang/cpp/class_static/main.cpp |
 | lldb/test/API/lang/c/global_variables/main.c |
 | lldb/test/API/functionalities/tail_call_frames/thread_step_out_message/main.cpp |
 | lldb/test/API/functionalities/load_unload/c.cpp |
 | lldb/test/API/functionalities/load_unload/b.cpp |
 | lldb/test/API/lang/cpp/llvm-style/main.cpp |
 | lldb/test/API/python_api/event/main.c |
 | lldb/test/API/lang/c/set_values/main.c |
 | lldb/test/API/lang/c/global_variables/a.c |
 | lldb/test/API/functionalities/data-formatter/user-format-vs-summary/main.cpp |
 | lldb/test/API/commands/watchpoints/multiple_threads/main.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-synth/main.cpp |
 | lldb/test/Shell/Reproducer/Inputs/simple.c |
 | lldb/test/API/commands/target/basic/c.c |
 | lldb/test/API/lang/cpp/class_types/main.cpp |
 | lldb/test/Shell/Reproducer/Inputs/GDBRemoteCapture.in |
 | lldb/test/API/functionalities/memory/find/main.cpp |
 | lldb/test/API/functionalities/memory/read/main.cpp |
 | lldb/test/API/functionalities/postmortem/elf-core/gcore/main.cpp |
 | lldb/test/API/functionalities/data-formatter/poarray/main.mm |
 | lldb/test/API/lang/cpp/bool/main.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/function/TestLibCxxFunction.py |
 | lldb/test/API/functionalities/load_unload/main.cpp |
 | lldb/test/API/python_api/watchpoint/main.c |
 | lldb/test/API/python_api/thread/main.cpp |
 | lldb/test/API/commands/watchpoints/watchpoint_commands/condition/main.cpp |
 | lldb/test/API/functionalities/type_lookup/main.mm |
 | lldb/test/API/functionalities/unwind/standard/hand_written/new_delete.cpp |
 | lldb/test/API/commands/expression/radar_9531204/main.c |
 | lldb/test/API/functionalities/load_unload/hidden/d.cpp |
 | lldb/test/API/functionalities/load_using_paths/hidden/d.cpp |
 | lldb/test/API/python_api/frame/get-variables/main.c |
 | lldb/test/API/functionalities/data-formatter/frameformat_smallstruct/main.cpp |
 | lldb/test/API/functionalities/data-formatter/ostypeformatting/main.mm |
 | lldb/test/API/functionalities/thread/thread_exit/main.cpp |
 | lldb/test/API/commands/watchpoints/watchpoint_set_command/main.cpp |
 | lldb/test/API/commands/target/basic/a.c |
 | lldb/test/API/python_api/exprpath_synthetic/main.mm |
 | lldb/test/API/functionalities/recursion/main.cpp |
 | lldb/test/API/functionalities/inferior-changed/main.c |
 | lldb/test/API/lang/c/stepping/main.c |
 | lldb/test/API/lang/cpp/namespace_definitions/main.cpp |
 | lldb/test/API/functionalities/breakpoint/breakpoint_by_line_and_column/TestBreakpointByLineAndColumn.py |
 | lldb/test/API/functionalities/darwin_log/source/debug/main.c |
 | lldb/test/API/macosx/duplicate-archive-members/main.c |
 | lldb/test/API/commands/apropos/with-process/main.cpp |
 | lldb/test/API/lang/cpp/namespace_conflicts/main.cpp |
 | lldb/test/API/lang/cpp/namespace/main.cpp |
 | lldb/test/API/lang/cpp/lambdas/main.cpp |
 | lldb/test/API/functionalities/tsan/multiple/main.m |
 | lldb/test/API/functionalities/darwin_log/format/main.c |
 | lldb/test/API/lang/cpp/namespace_definitions/a.cpp |
 | lldb/test/API/python_api/section/main.c |
 | lldb/test/API/functionalities/inferior-assert/main.c |
 | lldb/test/API/functionalities/breakpoint/cpp/main.cpp |
 | lldb/test/API/functionalities/data-formatter/language_category_updates/main.cpp |
 | lldb/test/API/functionalities/thread/exit_during_break/main.cpp |
 | lldb/test/API/lang/cpp/char1632_t/main.cpp |
 | lldb/test/API/functionalities/darwin_log/filter/exact_match/message/main.c |
 | lldb/test/API/functionalities/darwin_log/filter/regex/activity-chain/main.c |
 | lldb/test/API/functionalities/darwin_log/filter/regex/message/main.c |
 | lldb/test/API/benchmarks/expression/main.cpp |
 | lldb/test/API/macosx/duplicate-archive-members/sub1/a.c |
 | lldb/test/API/python_api/value/main.c |
 | lldb/test/API/functionalities/darwin_log/filter/regex/category/main.c |
 | lldb/test/API/lang/cpp/signed_types/main.cpp |
 | lldb/test/API/python_api/type/main.cpp |
 | lldb/test/API/functionalities/data-formatter/var-in-aggregate-misuse/main.cpp |
 | lldb/test/API/functionalities/archives/b.c |
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/function/main.cpp |
 | lldb/test/API/lang/c/array_types/main.c |
 | lldb/test/Shell/ExecControl/StopHook/Inputs/stop-hook-threads.cpp |
 | lldb/test/API/commands/watchpoints/multi_watchpoint_slots/main.c |
 | lldb/test/API/functionalities/tail_call_frames/sbapi_support/main.cpp |
 | lldb/test/API/commands/target/create-deps/main.cpp |
 | lldb/test/API/commands/settings/main.cpp |
 | lldb/test/API/functionalities/darwin_log/filter/exact_match/category/main.c |
 | lldb/test/API/functionalities/thread/create_during_step/main.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-smart-array/main.cpp |
 | lldb/test/API/functionalities/non-overlapping-index-variable-i/main.cpp |
 | lldb/test/API/lang/cpp/frame-var-anon-unions/main.cpp |
 | lldb/test/API/lang/cpp/global_variables/main.cpp |
 | lldb/test/API/commands/expression/ir-interpreter-phi-nodes/main.cpp |
 | lldb/test/API/tools/lldb-server/libraries-svr4/svr4lib_b_quote.cpp |
 | lldb/test/API/commands/register/register/register_command/main.cpp |
 | lldb/test/API/lang/objc/self/main.m |
 | lldb/test/API/functionalities/breakpoint/hardware_breakpoints/hardware_breakpoint_on_multiple_threads/main.cpp |
 | lldb/test/API/functionalities/data-formatter/pyobjsynthprovider/main.cpp |
 | lldb/test/API/lang/cpp/extern_c/main.cpp |
 | lldb/test/API/functionalities/data-formatter/nsdictionarysynth/main.m |
 | lldb/test/API/functionalities/archives/main.c |
 | lldb/test/API/functionalities/data-formatter/data-formatter-script/main.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-categories/main.cpp |
 | lldb/test/API/functionalities/load_unload/d.cpp |
 | lldb/test/API/python_api/function_symbol/main.c |
 | lldb/test/API/functionalities/thread/multi_break/main.cpp |
 | lldb/test/API/python_api/target/main.c |
 | lldb/test/API/functionalities/asan/main.c |
 | lldb/test/API/functionalities/tail_call_frames/ambiguous_tail_call_seq1/main.cpp |
 | lldb/test/API/functionalities/tsan/thread_numbers/main.c |
 | lldb/test/API/functionalities/tail_call_frames/disambiguate_paths_to_common_sink/main.cpp |
 | lldb/test/API/linux/thread/create_during_instruction_step/main.cpp |
 | lldb/test/API/lang/c/tls_globals/a.c |
 | lldb/test/API/commands/watchpoints/watchpoint_commands/main.c |
 | lldb/test/API/functionalities/data-formatter/data-formatter-named-summaries/main.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-advanced/main.cpp |
 | lldb/test/API/functionalities/thread/exit_during_step/main.cpp |
 | lldb/test/API/tools/lldb-server/signal-filtering/main.cpp |
 | lldb/test/API/functionalities/conditional_break/main.c |
 | lldb/test/API/lang/c/struct_types/main.c |
 | lldb/test/API/lang/cpp/printf/main.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-objc/cmtime/main.m |
 | lldb/test/API/lang/cpp/symbols/main.cpp |
 | lldb/test/API/functionalities/tsan/basic/main.c |
 | lldb/test/API/python_api/class_members/main.mm |
 | lldb/test/API/lang/cpp/function-template-parameter-pack/main.cpp |
 | lldb/test/API/python_api/symbol-context/main.c |
 | lldb/test/API/functionalities/longjmp/main.c |
 | lldb/test/API/functionalities/breakpoint/breakpoint_conditions/main.c |
 | lldb/test/API/functionalities/breakpoint/consecutive_breakpoints/main.cpp |
 | lldb/test/API/functionalities/memory/cache/main.cpp |
 | lldb/test/API/python_api/sbtype_typeclass/main.m |
 | lldb/test/API/commands/command/script/main.cpp |
 | lldb/test/API/lang/cpp/class-template-parameter-pack/main.cpp |
 | lldb/test/API/lang/c/typedef/main.c |
 | lldb/test/API/lang/objc/exceptions/main.mm |
 | lldb/test/API/functionalities/data-formatter/vector-types/main.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-globals/main.cpp |
 | lldb/test/API/lang/cpp/wchar_t/main.cpp |
 | lldb/test/API/functionalities/darwin_log/filter/exact_match/activity-chain/main.c |
 | lldb/test/API/functionalities/tail_call_frames/unambiguous_sequence/main.cpp |
 | lldb/test/API/functionalities/value_md5_crash/main.cpp |
 | lldb/test/API/functionalities/thread/concurrent_events/main.cpp |
 | lldb/test/API/lang/cpp/template/main.cpp |
 | lldb/test/API/lang/cpp/template-function/main.cpp |
 | lldb/test/API/functionalities/tail_call_frames/inlining_and_tail_calls/main.cpp |
 | lldb/test/API/python_api/watchpoint/condition/main.cpp |
 | lldb/test/API/functionalities/breakpoint/breakpoint_hit_count/main.cpp |
 | lldb/test/API/functionalities/postmortem/elf-core/thread_crash/main.cpp |
 | lldb/test/API/functionalities/breakpoint/breakpoint_ignore_count/main.c |
 | lldb/test/API/functionalities/unwind/standard/hand_written/fprintf.cpp |
 | lldb/test/API/functionalities/data-formatter/typedef_array/main.cpp |
 | lldb/test/API/macosx/duplicate-archive-members/a.c |
 | lldb/test/API/functionalities/thread/jump/main.cpp |
 | lldb/test/API/lang/cpp/auto/main.cpp |
 | lldb/test/API/functionalities/darwin_log/filter/regex/activity/main.c |
 | lldb/test/API/functionalities/data-formatter/ptr_ref_typedef/main.cpp |
 | lldb/test/API/lang/objc/exceptions/TestObjCExceptions.py |
 | lldb/test/API/commands/expression/radar_8638051/main.c |
 | lldb/test/API/functionalities/data-formatter/synthupdate/main.m |
 | lldb/test/API/linux/builtin_trap/main.cpp |
 | lldb/test/API/python_api/lldbutil/process/main.cpp |
 | lldb/test/API/functionalities/tsan/cpp_global_location/main.cpp |
 | lldb/test/API/functionalities/type_completion/main.cpp |
 | lldb/test/API/commands/watchpoints/hello_watchpoint/main.c |
 | lldb/test/API/functionalities/breakpoint/comp_dir_symlink/main.cpp |
 | lldb/test/API/functionalities/tsan/thread_leak/main.c |
 | lldb/test/API/commands/target/basic/globals.c |
 | lldb/test/API/lang/c/bitfields/main.c |
 | lldb/test/API/issue_verification/inline_rerun_inferior.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-objc/nsindexpath/main.m |
 | lldb/test/API/functionalities/breakpoint/breakpoint_command/main.c |
 | lldb/test/API/functionalities/thread/state/main.cpp |
 | lldb/test/API/functionalities/data-formatter/data-formatter-proper-plurals/main.m |
 | lldb/test/API/functionalities/breakpoint/serialize/main.c |
 | lldb/test/API/functionalities/tail_call_frames/thread_step_out_or_return/main.cpp |
Commit
b6e5808b2133c0fb411989ecccdd276111c937b3
by johannes[Attributor][NFC] Prepare some tests to be used with update test script
|
 | llvm/test/Transforms/Attributor/nofree.ll |
 | llvm/test/Transforms/Attributor/nonnull.ll |
 | llvm/test/Transforms/Attributor/dereferenceable-1.ll |
Commit
6185fb13d6410ef64dd98d40d11d1edb8c712908
by johannes[Attributor][NFC] Refactor interface
|
 | llvm/lib/Transforms/IPO/Attributor.cpp |
 | llvm/include/llvm/Transforms/IPO/Attributor.h |
Commit
d95cb56649e8493cc1a7e9e20875e464e185f84f
by johannes[Attributor] Make sure abstract attributes are properly initialized
|
 | llvm/lib/Transforms/IPO/Attributor.cpp |
Commit
14d7b802db4fd0c8124b0a58ad405fb52f44956d
by daniel.kiss[LLD][ELF][ARM] Add test cases for R_ARM_THM_MOV*-type relocs
Summary: This patch adds missing tests cases for R_ARM_THM_MOVW/MOVT* relocations for the sake of completeness.
Reviewers: peter.smith, MaskRay, espindola, psmith
Reviewed By: MaskRay, psmith
Subscribers: psmith, danielkiss, emaste, kristof.beyls, llvm-commits
Tags: #llvm, #lld
Differential Revision: https://reviews.llvm.org/D74827
|
 | lld/test/ELF/arm-mov-relocs.s |
Commit
ddf60ba09f2cf31851ea165c7c5fcfc4c2ad546e
by pavel[lldb/DWARF] Always construct a DWARFDebugInfo object
Change the return value of SymbolFileDWARF::DebugInfo from a pointer to a reference, and remove all null checks.
Previously, we were not constructing the DebugInfo object when the debug_info section was empty. Now we always construct the object but it will return an empty list of dwarf units (a thing which it already supported).
|
 | lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp |
 | lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp |
 | lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp |
 | lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h |
 | lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp |
 | lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp |
 | lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.h |
 | lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp |
 | lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.h |
Commit
689f1e85ba68db7440451a6834095a52d1526b00
by luismarques[compiler-rt] [builtins] Fix logb / logbl tests
Like was done before in D67999 for `logbf`, this patch fixes the tests for the internal compiler-rt implementations of `logb` and `logbl` to consider all NaNs equivalent. Not doing so was resulting in test failures for riscv64, since the the NaNs had different signs, but the spec doesn't specify the NaN signedness or payload.
Fixes bug 44244.
Reviewers: rupprecht, delcypher Reviewed By: rupprecht, delcypher Differential Revision: https://reviews.llvm.org/D74826
|
 | compiler-rt/test/builtins/Unit/compiler_rt_logb_test.c |
 | compiler-rt/test/builtins/Unit/compiler_rt_logbl_test.c |
Commit
def62c7f6548104274f95154bb5a91264646c701
by sguelton[NFC] Remove ar/ranlib test noise during cmake step
At least on RHEL, ar outputs on stderr a message similar to
.../bin/ar: creating t.a
Which creates noise during the cmake step. Get rid of it.
|
 | llvm/cmake/modules/HandleLLVMOptions.cmake |
Commit
f4fd7dbf85e278eff303514760bff4773a87e601
by mikhail.maltsev[ARM,MVE] Add vqdmull[b,t]q intrinsic families
Summary: This patch adds two families of ACLE intrinsics: vqdmullbq and vqdmulltq (including vector-vector and vector-scalar variants) and the corresponding LLVM IR intrinsics llvm.arm.mve.vqdmull and llvm.arm.mve.vqdmull.predicated.
Reviewers: simon_tatham, MarkMurrayARM, dmgreen, ostannard
Reviewed By: MarkMurrayARM
Subscribers: kristof.beyls, hiraditya, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D74845
|
 | llvm/lib/Target/ARM/ARMInstrMVE.td |
 | llvm/include/llvm/IR/IntrinsicsARM.td |
 | clang/include/clang/Basic/arm_mve.td |
 | llvm/test/CodeGen/Thumb2/mve-intrinsics/vqdmull.ll |
 | clang/test/CodeGen/arm-mve-intrinsics/vqdmulltq.c |
 | clang/test/CodeGen/arm-mve-intrinsics/vqdmullbq.c |
Commit
c8f9e526bc5319f2d0beed4012fbf17b11e15161
by lebedev.ri[clang-tidy] misc-no-recursion: point to the function defs, not decls
Results in slightly better UX. This actually was the initial intent, but it kinda got lost along the way.
|
 | clang-tools-extra/test/clang-tidy/checkers/misc-no-recursion.cpp |
 | clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp |
 | clang/include/clang/Analysis/CallGraph.h |
Commit
dbfc682e2ba2581e214fabb04ba1b555ff8b274a
by dfukalovSpeculativeExecution: fixed ingoring free execution
Summary: After updating cost model in AMDGPU target (47a5c36b37f0) the pass started to ignore some BBs since they got all instructions estimated as free.
Reviewers: arsenm, chandlerc, nhaehnle
Reviewed By: nhaehnle
Subscribers: jvesely, wdng, nhaehnle, tpr, hiraditya, kerbowa, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74825
|
 | llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp |
 | llvm/test/CodeGen/AMDGPU/speculative-execution-freecasts.ll |
Commit
6085593c128e91fd7db998c5441ebe120c7e4f04
by llvm-dev[AMDGPU] simplifyI24 - replace GetDemandedBits with SimplifyMultipleUseDemandedBits
GetDemandedBits mostly just calls SimplifyMultipleUseDemandedBits now, but it does a very blunt constant simplification that SimplifyMultipleUseDemandedBits avoids.
If we need to demand bits from constants we should handle this through ShrinkDemandedConstant/targetShrinkDemandedConstant.
@arsenm confirmed that the sign extended immediates are better for code size.
Differential Revision: https://reviews.llvm.org/D74857
|
 | llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp |
 | llvm/test/CodeGen/AMDGPU/lshl64-to-32.ll |
 | llvm/test/CodeGen/AMDGPU/amdgpu-mul24-knownbits.ll |
Commit
0e417b034ad2572e5a09dbc650d351393c2b574c
by andrzej.warzynski[AArch64][SVE] Re-arrange definitions in AArch64SVEInstrInfo.td (NFC)
Re-arrange definitions related to loads and stores so that they are grouped together.
This patch implements only non-functional changes.
|
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
Commit
7b59ff2fa0a56a0158f3f21aaed217118da669a3
by pavel[lldb] Add boilerplate to recognize the .debug_tu_index section
It's just like debug_cu_index, only for type units.
|
 | lldb/test/Shell/ObjectFile/ELF/section-types.yaml |
 | lldb/source/Core/Section.cpp |
 | lldb/source/Symbol/ObjectFile.cpp |
 | lldb/include/lldb/lldb-enumerations.h |
 | lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp |
 | lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp |
Commit
c7b7f76ae6ae2a5f3d9753b37ef811da15386cd4
by kkleine[lldb]: fix typo in lldb-gdb-remote.txt
Summary: The logic of the sentence made more sense when "with" is replaced with "without".
Reviewers: labath
Subscribers: lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74895
|
 | lldb/docs/lldb-gdb-remote.txt |
Commit
9ea5d17cc9544838c73e593de4ef224d54fa1cff
by lebedev.ri[Sema] Demote call-site-based 'alignment is a power of two' check for AllocAlignAttr into a warning
Summary: As @rsmith notes in https://reviews.llvm.org/D73020#inline-672219 while that is certainly UB land, it may not be actually reachable at runtime, e.g.: ``` template<int N> void *make() { if ((N & (N-1)) == 0) return operator new(N, std::align_val_t(N)); else return operator new(N); } void *p = make<7>(); ``` and we shouldn't really error-out there.
That being said, i'm not really following the logic here. Which ones of these cases should remain being an error?
Reviewers: rsmith, erichkeane
Reviewed By: erichkeane
Subscribers: cfe-commits, rsmith
Tags: #clang
Differential Revision: https://reviews.llvm.org/D73996
|
 | clang/test/Sema/alloc-align-attr.c |
 | clang/include/clang/Basic/DiagnosticSemaKinds.td |
 | clang/test/SemaCXX/alloc-align-attr.cpp |
 | clang/lib/CodeGen/CGCall.cpp |
 | clang/test/CodeGen/non-power-of-2-alignment-assumptions.c |
 | clang/lib/Sema/SemaChecking.cpp |
Commit
2f215cf36adced6bf1abda4bdbbc6422c1369353
by djordje.todorovicRevert "Reland "[DebugInfo] Enable the debug entry values feature by default""
This reverts commit rGfaff707db82d. A failure found on an ARM 2-stage buildbot. The investigation is needed.
|
 | clang/include/clang/Driver/CC1Options.td |
 | llvm/test/DebugInfo/MIR/X86/entry-values-diamond-bbs.mir |
 | llvm/test/DebugInfo/MIR/X86/DW_OP_entry_value.mir |
 | llvm/test/DebugInfo/X86/dbgcall-site-64-bit-imms.ll |
 | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h |
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | llvm/test/CodeGen/AArch64/arm64-tls-dynamics.ll |
 | llvm/test/CodeGen/MIR/X86/call-site-info-error4.mir |
 | llvm/test/CodeGen/X86/xray-custom-log.ll |
 | llvm/test/DebugInfo/AArch64/call-site-info-output.ll |
 | llvm/test/DebugInfo/MIR/X86/multiple-param-dbg-value-entry.mir |
 | llvm/include/llvm/Target/TargetMachine.h |
 | llvm/test/CodeGen/X86/statepoint-allocas.ll |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-interpretation.mir |
 | llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp |
 | llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp |
 | llvm/test/DebugInfo/X86/dbg-value-range.ll |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-partial-describe.mir |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-lea-interpretation.mir |
 | llvm/test/DebugInfo/ARM/entry-value-multi-byte-expr.ll |
 | llvm/lib/Target/AArch64/AArch64ISelLowering.cpp |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-reference.mir |
 | llvm/lib/Target/ARM/ARMTargetMachine.cpp |
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/test/CodeGen/AArch64/arm64-anyregcc.ll |
 | llvm/test/CodeGen/MIR/X86/call-site-info-error1.mir |
 | llvm/test/tools/llvm-dwarfdump/X86/locstats.ll |
 | llvm/test/DebugInfo/X86/dbgcall-site-zero-valued-imms.ll |
 | llvm/test/DebugInfo/MIR/ARM/dbgcall-site-interpretation.mir |
 | llvm/include/llvm/Target/TargetOptions.h |
 | clang/test/CodeGen/debug-info-extern-call.c |
 | llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp |
 | llvm/test/DebugInfo/MIR/X86/kill-entry-value-after-diamond-bbs.mir |
 | llvm/test/DebugInfo/MIR/X86/debug-call-site-param.mir |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/DebugInfo/MIR/X86/unreachable-block-call-site.mir |
 | llvm/lib/Target/AArch64/AArch64InstrInfo.cpp |
 | llvm/include/llvm/CodeGen/CommandFlags.inc |
 | llvm/test/CodeGen/X86/hoist-invariant-load.ll |
 | llvm/test/DebugInfo/MIR/Hexagon/live-debug-values-bundled-entry-values.mir |
 | llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-interpret-movzxi.mir |
 | clang/lib/CodeGen/CGDebugInfo.cpp |
 | llvm/test/CodeGen/MIR/X86/call-site-info-error2.mir |
 | llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-interpretation.mir |
 | llvm/test/DebugInfo/X86/no-entry-values-with-O0.ll |
 | llvm/test/DebugInfo/MIR/SystemZ/call-site-lzer.mir |
 | llvm/test/CodeGen/ARM/smml.ll |
 | llvm/test/DebugInfo/MIR/X86/propagate-entry-value-cross-bbs.mir |
 | llvm/test/CodeGen/X86/speculative-load-hardening-indirect.ll |
 | llvm/test/DebugInfo/X86/dbg-value-regmask-clobber.ll |
 | llvm/test/tools/llvm-dwarfdump/X86/stats-dbg-callsite-info.ll |
 | clang/test/CodeGenCXX/dbg-info-all-calls-described.cpp |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-reg-shuffle.mir |
 | lldb/packages/Python/lldbsuite/test/decorators.py |
 | llvm/test/tools/llvm-dwarfdump/X86/valid-call-site-GNU-extensions.ll |
 | llvm/test/DebugInfo/ARM/call-site-info-output.ll |
 | llvm/test/CodeGen/X86/tail-dup-repeat.ll |
 | llvm/test/CodeGen/AArch64/arm64-patchpoint.ll |
 | llvm/lib/CodeGen/TargetOptionsImpl.cpp |
 | llvm/test/DebugInfo/MIR/X86/entry-value-of-modified-param.mir |
 | llvm/test/DebugInfo/MIR/X86/call-site-gnu-vs-dwarf5-attrs.mir |
 | llvm/test/tools/llvm-locstats/locstats.ll |
 | llvm/test/CodeGen/X86/call-site-info-output.ll |
 | clang/include/clang/Basic/CodeGenOptions.def |
 | llvm/test/DebugInfo/MIR/X86/dbg-call-site-spilled-arg.mir |
 | llvm/test/DebugInfo/X86/loclists-dwp.ll |
 | lldb/test/API/functionalities/param_entry_vals/basic_entry_values_x86_64/Makefile |
 | llvm/test/DebugInfo/MIR/X86/dbginfo-entryvals.mir |
 | llvm/test/DebugInfo/MIR/ARM/dbgcall-site-propagated-value.mir |
 | llvm/test/DebugInfo/MIR/ARM/dbgcallsite-noreg-is-imm-check.mir |
 | llvm/test/CodeGen/MIR/X86/call-site-info-error3.mir |
 | llvm/test/DebugInfo/MIR/AArch64/dbgcall-site-orr-moves.mir |
 | llvm/lib/CodeGen/MIRParser/MIRParser.cpp |
 | llvm/lib/CodeGen/MachineFunction.cpp |
 | llvm/test/CodeGen/X86/xray-typed-event-log.ll |
 | llvm/lib/Target/AArch64/AArch64TargetMachine.cpp |
 | llvm/test/CodeGen/MIR/Hexagon/bundled-call-site-info.mir |
 | llvm/test/DebugInfo/MIR/X86/dbg-call-site-spilled-arg-multiple-defs.mir |
 | llvm/lib/CodeGen/LiveDebugValues.cpp |
 | llvm/lib/Target/X86/X86TargetMachine.cpp |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-two-fwd-reg-defs.mir |
 | llvm/test/DebugInfo/Sparc/entry-value-complex-reg-expr.ll |
 | llvm/test/DebugInfo/MIR/Hexagon/dbgcall-site-instr-before-bundled-call.mir |
 | llvm/test/DebugInfo/MIR/X86/dbgcall-site-copy-super-sub.mir |
 | clang/lib/CodeGen/BackendUtil.cpp |
 | llvm/test/DebugInfo/MIR/ARM/if-coverter-call-site-info.mir |
Commit
bb9e92bad55f65f2de58bf29548bdfd3dea2d7ab
by hokein.wu[clang][Index] Fix the incomplete instantiations in libindex.
Summary: libindex will canonicalize references to template instantiations: - 1) reference to an explicit template specialization, report the specializatiion - 2) otherwise, report the primary template
but 2) is not true for incomplete instantiations, this patch fixes this.
Fixes https://github.com/clangd/clangd/issues/287
Reviewers: kadircet
Subscribers: ilya-biryukov, jkorous, arphaman, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D74830
|
 | clang/test/Index/Core/index-instantiated-source.cpp |
 | clang/lib/Index/IndexingContext.cpp |
 | clang-tools-extra/clangd/unittests/XRefsTests.cpp |
 | clang/test/Index/Core/index-source.cpp |
Commit
fa221fc6b8ac5ecd344daac634f0db8f22ebf435
by llvm-devRegenerate rotate test. NFC.
|
 | llvm/test/CodeGen/ARM/rotate.ll |
Commit
977cd661cf019039dec7ffdd15bf0ac500828c87
by sebastian.neubauer[AMDGPU] Don’t marke the .note section as ALLOC
Marking a section as ALLOC tells the ELF loader to load the section into memory. As we do not want to load the notes into VRAM, the flag should not be there.
Differential Revision: https://reviews.llvm.org/D74600
|
 | llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp |
 | llvm/test/CodeGen/AMDGPU/hsa.ll |
Commit
15e20dcb8f9decf1928871d562a3724e8cc1e343
by spatel[Utils][x86] add an option to reduce scrubbing of shuffles with memops
I was drafting a patch that would increase broadcast load usage, but our shuffle scrubbing makes it impossible to see if the memory operand offset was getting created correctly. I'm proposing to make that an option (defaulted to 'off' for now to reduce regression test churn).
The updated files provide examples of tests where we can now verify that the pointer offset for a loaded memory operand is correct. We still have stack and constant scrubbing that can obscure the operand even if we don't scrub the entire instruction.
Differential Revision: https://reviews.llvm.org/D74775
|
 | llvm/utils/update_llc_test_checks.py |
 | llvm/test/CodeGen/X86/avx-splat.ll |
 | llvm/test/CodeGen/X86/extractelement-load.ll |
 | llvm/utils/UpdateTestChecks/asm.py |
Commit
083717cf49968ebb973d73b448709d45e3fc0e99
by arsenm2AMDGPU: Fix v2i64<->v4f32 bitcast
I'm not sure how to test the v2i64->v4f32 case since I can't think of any v2i64 cases that won't legalize to v4i32.
|
 | llvm/lib/Target/AMDGPU/SIInstructions.td |
 | llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ll |
Commit
659500c0c9657fc6e8d2d184b507f4e4da99297e
by sam.parker[NFC][RDA] Break-up initialization code
Separate out the initialization code from the loop traversal so that the analysis can be reset and re-run by a user.
|
 | llvm/include/llvm/CodeGen/ReachingDefAnalysis.h |
 | llvm/lib/CodeGen/ReachingDefAnalysis.cpp |
Commit
45f008704df2680660ee82a7c3543d3ac9499a99
by sd.fertile[PowerPC][NFC] We do not save/restore vrsave for any remaining subtargets.
Extend lit test to show that we don't save or restore vrsave register when expanding @llvm.eh.unwind.init().
|
 | llvm/test/CodeGen/PowerPC/unwind-dw2.ll |
Commit
216a6e05249544db4c1c3f30944aba3da7463eef
by spatel[x86] regenerate test checks with less shuffle scrubbing; NFC
For shuffles with memory operands, we generally don't want to hide the asm because we want to verify that the address offsets are as expected.
|
 | llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll |
 | llvm/test/CodeGen/X86/masked_gather.ll |
Commit
1f984c83a41bb68b8af4998a7f68876d52bff872
by hansAdd #include <condition_variable> to fix build after 85fb997659b5
See https://reviews.llvm.org/D74300#1884614
|
 | llvm/lib/ExecutionEngine/Orc/Core.cpp |
Commit
fc2b4a02b1a82c40ac1459cd15b9911ebfc78acc
by llvm-dev[DAGCombine] visitEXTRACT_VECTOR_ELT - add SimplifyDemandedBits multi use support
Similar to what we already do with SimplifyDemandedVectorElts, call SimplifyDemandedBits across all the extracted elements of the source vector, treating it as single use.
There's a minor regression in store-weird-sizes.ll which will be addressed in an upcoming SimplifyDemandedBits patch.
|
 | llvm/test/CodeGen/AMDGPU/idot4u.ll |
 | llvm/test/CodeGen/AArch64/vecreduce-and-legalization.ll |
 | llvm/test/CodeGen/AMDGPU/idot8s.ll |
 | llvm/test/CodeGen/AMDGPU/store-weird-sizes.ll |
 | llvm/test/CodeGen/X86/vector-reduce-mul.ll |
 | llvm/test/CodeGen/AMDGPU/extractelt-to-trunc.ll |
 | llvm/test/CodeGen/AMDGPU/idot4s.ll |
 | llvm/test/CodeGen/X86/psadbw.ll |
 | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp |
Commit
cb54c13c217b3e5fcda5c97bab229c1f9c3934b7
by usx[clang][analyzer] Modify include AllocationState.h in PutenvWithAutoChecker.cpp
Summary: PutenvWithAutoChecker.cpp used to include "AllocationState.h" that is present in project root. This makes build systems like blaze unhappy. Made it include the header relative to source file.
Reviewers: kadircet
Subscribers: xazax.hun, baloghadamsoftware, szepet, a.sidorin, mikhail.ramalho, Szelethus, donat.nagy, dkrupp, Charusso, martong, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D74906
|
 | clang/lib/StaticAnalyzer/Checkers/cert/PutenvWithAutoChecker.cpp |
Commit
12cc105f806f5a7e7c14350c5ba54654e263c972
by craig.topper[X86] Add DAG combines to form CVTPH2PS/CVTPS2PH from vXf16->vXf32/vXf64 fp_extends and vXf32->vXf16 fp_round.
Only handle power of 2 element count for simplicity. Not sure what to do with vXf64->vXf16 fp_round to avoid double rounding
Differential Revision: https://reviews.llvm.org/D74886
|
 | llvm/test/CodeGen/X86/vector-half-conversions.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/half.ll |
Commit
ce70e2899879e092b153a4078b993833b6696713
by danilo.carvalho.grael[AArch64][SVE] Add intrinsics for SVE2 bitwise ternary operations
Summary: Add intrinsics for the following operations: - eor3, bcax - bsl, bsl1n, bsl2n, nbsl
Reviewers: kmclaughlin, c-rhodes, sdesmalen, efriedma, rengolin
Reviewed By: efriedma
Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74785
|
 | llvm/lib/Target/AArch64/SVEInstrFormats.td |
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
 | llvm/include/llvm/IR/IntrinsicsAArch64.td |
 | llvm/test/CodeGen/AArch64/sve2-bitwise-ternary.ll |
Commit
914a97a4e6184234ea231321c3073e021e0c60c7
by spatel[x86] add vector tests for splatted memory ops; NFC
These correspond to patterns seen in PR42024: https://bugs.llvm.org/show_bug.cgi?id=42024
|
 | llvm/test/CodeGen/X86/x86-interleaved-access.ll |
Commit
9bbf271fc9d5b84f9e657805dfff0fb8a1607af4
by craig.topper[AArch64] Move isOverflowIntrOpRes help function to the ISD namespace in SelectionDAG.h. NFC
Enables sharing with an upcoming X86 change.
|
 | llvm/include/llvm/CodeGen/SelectionDAGNodes.h |
 | llvm/lib/Target/AArch64/AArch64ISelLowering.cpp |
Commit
3543ac9ab52df77af55a2ebdeeddfb76aba15d29
by craig.topper[X86] Rewrite LowerBRCOND to remove dead code and handle ISD::SETCC and overflow ops directly.
There's a lot of old leftover code in LowerBRCOND. Especially the detecting or AND or OR of X86ISD::SETCC nodes. Those were needed before LegalizeDAG was changed to visit nodes before their operands.
It also relied on reversing the output of LowerSETCC to find the flags producing node to use for the X86ISD::BRCOND node.
Rather than using LowerSETCC this patch uses emitFlagsForSetcc to handle the integer ISD::SETCC case. This gives the flag producer and the comparison code to use directly. I've removed the addTest flag and just produce a X86ISD::BRCOND and return immediately.
Floating point ISD::SETCC case is just an X86ISD::FCMP with special care for OEQ and UNE derived from the previous code. I've left f128 out so it will emit a test. And LowerSETCC will be called later to produce a libcall and X86ISD::SETCC. We have combines that can merge the test and X86ISD::SETCC.
We need to handle two cases for overflow ops. Either they are used directly or they have a seteq 0 or setne 1 to invert the overflow. The old code did not handle the setne 1 case, but I think some other combines were making up for it.
If we fail to find a condition, we'll wrap an AND with 1 on the original condition and tell emitFlagsForSetcc to emit a compare with 0. This will pickup the LowerAndToBT and or the EmitTest case. I kept the isTruncWithZeroHighBitsInput call, but we might be able to fold that in to emitFlagsForSetcc.
Differential Revision: https://reviews.llvm.org/D74750
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
e442f38395f71b680bc1174568e461b5ff1f7ebf
by Louis Dionne[libc++] Fix unintended ADL inside ref(reference_wrapper<T>) and cref(reference_wrapper<T>)
This patch qualifies calls to ref and cref inside ref(reference_wrapper<T>) and cref(reference_wrapper<T>), respectively. These previously unqualified calls could break in the presence of user functions called ref/cref inside associated namespaces: https://gcc.godbolt.org/z/8VfprT
Fixes PR44398.
Differential Revision: https://reviews.llvm.org/D74287
|
 | libcxx/include/__functional_base |
 | libcxx/test/std/utilities/function.objects/refwrap/refwrap.helpers/ref_2.pass.cpp |
 | libcxx/test/std/utilities/function.objects/refwrap/refwrap.helpers/cref_2.pass.cpp |
Commit
092a57f5082146b6770f89839666b7545a0d27f0
by Louis Dionne[libc++] Fix unqualified call to 'ref' inside shared_ptr(unique_ptr<U, D>)
This prevents unintended ADL: https://gcc.godbolt.org/z/EHw3Gy This issue was mentioned as an addendum in PR44398.
Differential Revision: https://reviews.llvm.org/D74289
|
 | libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/unique_ptr.pass.cpp |
 | libcxx/include/memory |
Commit
db8911aad726d050fb36f17f2978bd35f69165cc
by n.james93[clang-tidy] rename_check.py: maintain alphabetical order in Renamed checks section
Summary: Also use //check// in add_new_check.py for terminology consistency.
PS
My GitHub ID is [[ https://github.com/EugeneZelenko | EugeneZelenko ]], if it's necessary for attribution.
Reviewers: alexfh, hokein, aaron.ballman, njames93, MyDeveloperDay
Reviewed By: njames93
Subscribers: Andi, xazax.hun, cfe-commits
Tags: #clang-tools-extra, #clang
Differential Revision: https://reviews.llvm.org/D73580
|
 | clang-tools-extra/clang-tidy/rename_check.py |
 | clang-tools-extra/docs/ReleaseNotes.rst |
 | clang-tools-extra/clang-tidy/add_new_check.py |
Commit
0ed7a61543840ddfe4dcc71307dd77b032dcca6c
by craig.topper[X86] Fix a -Wparentheses warning. NFC
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
6fa3894c4e771c773712b1ae777f78c1c922a908
by Louis Dionne[clang] Fix search path logic for C_INCLUDE_DIRS
For each absolute path given to C_INCLUDE_DIRS, we want it to be added as-is to the include search path. Relative paths should be prefixed with the sysroot.
Thanks to Marco Hinz for the patch.
Differential Revision: https://reviews.llvm.org/D69221
|
 | clang/lib/Driver/ToolChains/Fuchsia.cpp |
 | clang/lib/Driver/ToolChains/Linux.cpp |
 | clang/lib/Driver/ToolChains/WebAssembly.cpp |
 | clang/lib/Driver/ToolChains/Hurd.cpp |
 | clang/lib/Driver/ToolChains/Solaris.cpp |
 | clang/lib/Driver/ToolChains/Darwin.cpp |
Commit
af64b31959f634031e5ddbcf8df1fab69689bfee
by omair.javaidAdd target.xml support for qXfer request.
Summary: Requesting registers one by one takes a while in our project. We want to get rid of it by using target.xml.
Reviewers: jarin, labath, omjavaid
Reviewed By: labath, omjavaid
Subscribers: omjavaid, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74217
|
 | lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp |
 | lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h |
 | lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp |
 | lldb/packages/Python/lldbsuite/test/tools/lldb-server/registers-target-xml-reading/Makefile |
 | lldb/packages/Python/lldbsuite/test/tools/lldb-server/registers-target-xml-reading/TestGdbRemoteTargetXmlPacket.py |
 | lldb/packages/Python/lldbsuite/test/tools/lldb-server/registers-target-xml-reading/main.cpp |
Commit
0ffa6e1a7e1c5de36276375486f49277c6f95d0e
by rupprecht[lldb] Fix version string when using LLDB_REVISION but not LLDB_REPOSITORY
Summary: lldb's format string (line one) is: `lldb version $clang_version ($lldb_repo revision $lldb_revision)`
When only using $lldb_revision and not $lldb_repo, this might look like: `lldb version 11 ( revision 12345)` which looks pretty ugly.
Aside: I'm not sure we really need all the different versions since we've moved to the monorepo layout -- I don't think anyone is using different llvm/clang/lldb revisions, are they? We could likely tidy this up further if we knew how people consumed the output of lldb --version.
Reviewers: labath, JDevlieghere, friss
Subscribers: lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74859
|
 | lldb/source/lldb.cpp |
Commit
f9c326364e76ea734ce87c9fab5ac8b08ef8e7bb
by llvm-dev[DAGCombiner] Use SDValue::getConstantOperandAPInt helper where possible. NFC.
|
 | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp |
Commit
726c342ce27ada28efe90cb04ffb69c75065710a
by francisvm[macho][NFC] Extract all CPU_(SUB_)TYPE logic to libObject
This moves all the logic of converting LLVM Triples to MachO::CPU_(SUB_)TYPE from the specific target (Target)AsmBackend to more convenient functions in libObject.
This also gets rid of the separate two X86AsmBackend classes.
Differential Revision: https://reviews.llvm.org/D74808
|
 | llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp |
 | llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp |
 | llvm/include/llvm/Object/MachO.h |
 | llvm/lib/Object/MachOObjectFile.cpp |
 | llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp |
 | llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp |
 | llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendDarwin.h |
 | llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp |
Commit
70d8fec7c947996e857aa136aa22c22a555b02fa
by riddleriver[mlir] Refactor the structure of the 'verifyConstructionInvariants' methods.
Summary: The current structure suffers from several problems, but the main one is that a construction failure is impossible to debug when using the 'get' methods. This is because we only optionally emit errors, so there is no context given to the user about the problem. This revision restructures this so that errors are always emitted, and the 'get' methods simply pass in an UnknownLoc to emit to. This allows for removing usages of the more constrained "emitOptionalLoc", as well as removing the need for the context parameter.
Fixes [PR#44964](https://bugs.llvm.org/show_bug.cgi?id=44964)
Differential Revision: https://reviews.llvm.org/D74876
|
 | mlir/include/mlir/Dialect/SPIRV/TargetAndABI.h |
 | mlir/include/mlir/IR/Types.h |
 | mlir/lib/Dialect/SPIRV/TargetAndABI.cpp |
 | mlir/include/mlir/IR/Location.h |
 | mlir/include/mlir/IR/StorageUniquerSupport.h |
 | mlir/lib/IR/StandardTypes.cpp |
 | mlir/include/mlir/IR/StandardTypes.h |
 | mlir/lib/Dialect/QuantOps/IR/QuantTypes.cpp |
 | mlir/include/mlir/IR/Attributes.h |
 | mlir/lib/IR/MLIRContext.cpp |
 | mlir/lib/IR/Attributes.cpp |
 | mlir/include/mlir/Dialect/QuantOps/QuantTypes.h |
 | mlir/lib/IR/Types.cpp |
 | mlir/docs/DefiningAttributesAndTypes.md |
Commit
3f785212e9ceb85251183b1fcf5902715df923fb
by francisvmRevert "[macho][NFC] Extract all CPU_(SUB_)TYPE logic to libObject"
This reverts commit 726c342ce27ada28efe90cb04ffb69c75065710a.
This breaks the windows bots with linker errors.
|
 | llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp |
 | llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp |
 | llvm/lib/Object/MachOObjectFile.cpp |
 | llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp |
 | llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendDarwin.h |
 | llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp |
 | llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp |
 | llvm/include/llvm/Object/MachO.h |
Commit
da181d4ba0cdbae487ba1571917adb8677456e55
by sd.fertile[PowerPC][NFC] Cleanup some of the Darwin mentions in the README.txt.
|
 | llvm/lib/Target/PowerPC/README.txt |
Commit
064cd2ecdb3d0c52be5b6cf4fc67125baa714d3a
by spatel[x86] allow peeking through an extract_subvector to find a splatted operand
The motivating case is seen in "splat4_v8f32_load_store" and based on code in PR42024: https://bugs.llvm.org/show_bug.cgi?id=42024 (I haven't stepped through the v8i32 sibling test yet to see why that diverged.)
There are other potential improvements visible like allowing scalarization or vector narrowing.
Differential Revision: https://reviews.llvm.org/D74909
|
 | llvm/test/CodeGen/X86/extractelement-load.ll |
 | llvm/test/CodeGen/X86/fma.ll |
 | llvm/test/CodeGen/X86/avx-splat.ll |
 | llvm/test/CodeGen/X86/bitcast-int-to-vector-bool-zext.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/vector-shuffle-512-v32.ll |
 | llvm/test/CodeGen/X86/insertelement-var-index.ll |
 | llvm/test/CodeGen/X86/avx-intrinsics-fast-isel.ll |
 | llvm/test/CodeGen/X86/bitcast-int-to-vector-bool-sext.ll |
 | llvm/test/CodeGen/X86/x86-interleaved-access.ll |
 | llvm/test/CodeGen/X86/masked_gather.ll |
 | llvm/test/CodeGen/X86/pr34653.ll |
 | llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll |
Commit
5d2baa956ac3784e3956e35f610e118cacc7128b
by alexbrachetmialot[libc] Add Initial Support for Signals
Summary: This patch adds signal support on Linux. The current implementation gets the SIG* macros and types like `sigset_t` from <linux/signals.h>
This patch also adds raise(3), and internal routines `block_all_signals` and `restore_signals`
Reviewers: sivachandra, MaskRay, gchatelet
Reviewed By: sivachandra
Subscribers: libc-commits, mgorny, tschuett
Differential Revision: https://reviews.llvm.org/D74528
|
 | libc/test/src/signal/raise_test.cpp |
 | libc/lib/CMakeLists.txt |
 | libc/include/CMakeLists.txt |
 | libc/test/src/signal/CMakeLists.txt |
 | libc/src/signal/linux/raise.cpp |
 | libc/config/linux/signal.h.in |
 | libc/src/signal/linux/signal.h |
 | libc/src/signal/raise.h |
 | libc/spec/linux.td |
 | libc/test/src/CMakeLists.txt |
 | libc/src/CMakeLists.txt |
 | libc/src/signal/CMakeLists.txt |
 | libc/spec/stdc.td |
 | libc/config/linux/api.td |
 | libc/include/signal.h.def |
 | libc/src/signal/linux/CMakeLists.txt |
Commit
8928c6dbbf7d1de32e84f3ec2b778c006fc70091
by riddleriverFix some typos in the MLIR documentation.
Summary: Fix minor typos in the tutorial and the "writing a pass" page.
Differential Revision: https://reviews.llvm.org/D74905
|
 | mlir/docs/Tutorials/Toy/Ch-4.md |
 | mlir/docs/WritingAPass.md |
 | mlir/docs/Tutorials/Toy/Ch-5.md |
 | mlir/docs/Tutorials/Toy/Ch-6.md |
Commit
6de21c556d159d29e7957821fa8b83ef68083b76
by Lang Hames[ORC][examples] Fix ThinLtoJIT example after changes in 85fb997659b.
|
 | llvm/examples/ThinLtoJIT/ThinLtoJIT.cpp |
Commit
813b1b9fd6c19706b735a595d33f7b8ebcd08be7
by Lang Hames[ORC] Add a convenience method for setting the ExecutionSession to LLJITBuilder.
Can be used to set a custom pre-configured ExecutionSession for the LLJIT or LLLazyJIT instance being constructed.
|
 | llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h |
Commit
e2c2eb0a5509ed8e013c4e4d880de27e60641b9a
by llvm-dev[X86] Fix NSW/NUW typo in avg test (PR44973)
The not_avg_v16i8_wide_constants test shouldn't assume NSW/NUW for the addition of -1 - copy + paste typo from other avg tests
|
 | llvm/test/CodeGen/X86/avg.ll |
Commit
a11ff39ba2ad3975a40e2684948a4dd2ada89bd3
by jbcoe[clang-format] Merge name and colon into a single token for C# named arguments
Summary: Merge 'argumentName' and ':' into a single token in foo(argumentName: bar).
Add C# named argument as a token type.
Reviewers: krasimir, MyDeveloperDay
Reviewed By: krasimir
Tags: #clang-format
Differential Revision: https://reviews.llvm.org/D74894
|
 | clang/lib/Format/FormatToken.h |
 | clang/lib/Format/FormatTokenLexer.cpp |
 | clang/lib/Format/FormatTokenLexer.h |
 | clang/unittests/Format/FormatTestCSharp.cpp |
Commit
7a7c753b0cca6abb61f054842fb087dfc30dc563
by thakislibclang: Make shared object symbol exporting by default
https://reviews.llvm.org/D74564 enabled static building for libclang, and for non CMake consumers they had to set the `CMAKE_EXPORTS` define when consuming libclang.
This commit makes the non CMake users of the static building have to define `CMAKE_NO_EXPORTS`.
Differential Revision: https://reviews.llvm.org/D74907
|
 | clang/include/clang-c/Platform.h |
 | clang/tools/libclang/CMakeLists.txt |
Commit
967eeb109bedc4ae606fdf6ad6eca58ffbac6739
by daltenty[AIX] Pack BasicBlockBits
Summary: D51664 introduces a new structure BasicBlockBits which it expects to be packed a certain way. This change is very similar to D60164, and we apply the same fix:
"On AIX, the canonical layout of bit-fields would cause these ... to span four bytes. Applying the pack pragma for compilers that employ the AIX canonical layout allows these ... to fit within the expected two bytes. In the future, the pragma would also likely need to be applied when building with Clang on AIX."
Reviewers: jasonliu, hubert.reinterpretcast, sfertile, xingxue
Reviewed By: sfertile
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74911
|
 | llvm/include/llvm/IR/BasicBlock.h |
Commit
2f56789c8fe8edb57bc7a193592ecd35a393fe4a
by Jan Korous[clang][doxygen] Fix false -Wdocumentation warning for tag typedefs
For tag typedefs like this one:
/*! @class Foo */ typedef class { } Foo;
clang -Wdocumentation gives:
warning: '@class' command should not be used in a comment attached to a non-struct declaration [-Wdocumentation]
... while doxygen seems fine with it.
Differential Revision: https://reviews.llvm.org/D74746
|
 | clang/include/clang/AST/CommentSema.h |
 | clang/lib/AST/CommentSema.cpp |
 | clang/test/Sema/warn-documentation-tag-typedef.cpp |
Commit
e4a9225f5d10f35cf9cf3664bb93620880228782
by qcolombet[GISel][KnownBits] Give up on PHI analysis as soon as we don't know anything
When analyzing PHIs, we gather the known bits for every operand and merge them together to get the known bits of the result of the PHI. It is not unusual that merging the information leads to know nothing on the result (e.g., phi a: i8 3, b: i8 unknown, ..., after looking at the second argument we know we will know nothing on the result), thus, as soon as we reach that state, stop analyzing the following operand (i.e., on the previous example, we won't process anything after looking at `b`).
This improves compile time in particular with PHIs with a large number of operands.
NFC.
|
 | llvm/unittests/CodeGen/GlobalISel/KnownBitsTest.cpp |
 | llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp |
Commit
6d34a87bae6ea211076c25faef7da5d29cb8e46d
by richard[cxx_status] Update -std= instructions for C++20.
We merged support for -std=c++20 to the Clang 10 branch, so -std=c++2a is only needed in Clang 9 and earlier.
|
 | clang/www/cxx_status.html |
Commit
0c8fa6db90ae856b844d7d2925672cbaef3e0668
by francesco.petrogalli[llvm][build] Fix shared lib builds. [NFC]
The code at https://reviews.llvm.org/D74808 has broken builds that are configured with -DBUILD_SHARED_LIBS=On.
This patch adds the correct library dependencies.
|
 | llvm/lib/Target/AArch64/MCTargetDesc/LLVMBuild.txt |
 | llvm/lib/Target/ARM/MCTargetDesc/LLVMBuild.txt |
 | llvm/lib/Target/PowerPC/MCTargetDesc/LLVMBuild.txt |
Commit
3d0564c7e07b00a4ddd672e5efb12b75501f47d9
by SourabhSingh.TomarRevert "[NFCI][DebugInfo]: Corrected a Typo."
This reverts commit 3e1090922a0b808f424ff424b744752b0d53a3ee as per Paul Robinson's suggestion.
|
 | llvm/lib/DebugInfo/DWARF/DWARFAbbreviationDeclaration.cpp |
Commit
7ddbf802cf64e89b77ef2ce44182248921a42172
by spatel[ConstantFold] add/move tests for FP with undef operand; NFC
|
 | llvm/test/Transforms/InstSimplify/fp-undef.ll |
 | llvm/test/Analysis/ConstantFolding/fp-undef.ll |
Commit
6f4d9d10293d8e93d7cf3397e3a82ac19c8b629f
by thakisRevert "[AArch64][SVE] Add intrinsics for SVE2 bitwise ternary operations"
This reverts commit ce70e2899879e092b153a4078b993833b6696713. It broke MC/AArch64/SVE2/bsl-diagnostics.s everywhere.
|
 | llvm/lib/Target/AArch64/SVEInstrFormats.td |
 | llvm/include/llvm/IR/IntrinsicsAArch64.td |
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
 | llvm/test/CodeGen/AArch64/sve2-bitwise-ternary.ll |
Commit
e84444781aad23ed66d46d23637df4768677e76e
by thakisRevert "libclang: Add static build support for Windows" and follow-up "libclang: Make shared object symbol exporting by default"
This reverts commit 7a7c753b0cca6abb61f054842fb087dfc30dc563. This reverts commit 7ff1f55a1219719f57a6f7905c26ce41d1767e4c.
They broke building libclang.dll on Windows, see https://reviews.llvm.org/D74564
|
 | clang/include/clang-c/Platform.h |
 | clang/tools/libclang/CMakeLists.txt |
Commit
714265dabb606bfef2f85694234f152edbfa91ac
by craig.topper[X86] Replace a bad use of MVT::getVectorVT with EVT::getVectorVT
The type here isn't guaranteed to be a simple type.
Fixes PR44976
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/pr44976.ll |
Commit
1d8860f90bcec1902e2d247c6b1261955a4b6353
by craig.topperRevert 714265dabb606bfef2f85694234f152edbfa91ac "[X86] Replace a bad use of MVT::getVectorVT with EVT::getVectorVT"
I accidentally messed up the author on the previous commit somehow.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/pr44976.ll |
Commit
c7b54a196e1363cbe43122f01a728cd71fa1686a
by craig.topperRecommit "[X86] Replace a bad use of MVT::getVectorVT with EVT::getVectorVT""
With the correct author this time
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/pr44976.ll |
Commit
9e0c95572e5a245b79eff2b214d9b3580e703e4d
by daltenty[AIX] Improve 32/64-bit build configuration
Summary: AIX supports both 32-bit and 64-bit environments (with 32-bit being the default). This patch improves support for building LLVM on AIX in both 32-bit and 64-bit mode.
- Change host detection to return correct 32/64-bit triple as config_guess does not return the correct version on 64-bit. This can confuse JIT tests and other things that care about what the host triple is. - Remove manual setting of 64-bit flags on AIX. AIX provides OBJECT_MODE environment variable to enable the user to obtain a 64-bit development environment. CMake will properly set these flags provided the user sets the correct OBJECT_MODE before configuring and setting them manually will interfere with 32-bit builds. - Don't present the LLVM_BUILD_32_BITS option on AIX, users should use OBJECT_MODE when running CMake instead.
Reviewers: hubert.reinterpretcast, DiggerLin, stevewan
Reviewed By: DiggerLin, stevewan
Subscribers: mgorny, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74256
|
 | llvm/cmake/modules/GetHostTriple.cmake |
 | llvm/CMakeLists.txt |
 | llvm/cmake/modules/HandleLLVMOptions.cmake |
Commit
bf3f427ba239bd2942bfaa350d06ed072935f048
by shafik[ASTImporter] Add linkage check to ASTNodeImporter::hasSameVisibilityContext and rename to hasSameVisibilityContextAndLinkage
This fixed is based on the assert in LinkageComputer::getLVForDecl(...) which assumes that all the decls in a redecl chain have the same linkage.
Differential Revision: https://reviews.llvm.org/D74639
|
 | clang/lib/AST/ASTImporter.cpp |
Commit
6123074d0c0de3614f1552f2f2d6b9db7b32cebe
by scott.linder[Driver] Escape the program path for -frecord-command-line
Similar to the rest of the command line that is recorded, the program path must also have spaces and backslashes escaped. Without this parsing the recorded command line becomes hard on platforms like Windows where spaces and backslashes are common.
Patch By: Ravi Ramaseshan Differential Revision: https://reviews.llvm.org/D74811
|
 | clang/lib/Driver/ToolChains/Clang.cpp |
 | clang/test/Driver/clang_f_opts.c |
Commit
c767cf24e48d9f6c17179abf2e42497601c7165b
by efriedma[SVE] Add support for lowering GEPs involving scalable vectors.
This includes both GEPs where the indexed type is a scalable vector, and GEPs where the result type is a scalable vector.
Differential Revision: https://reviews.llvm.org/D73602
|
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp |
 | llvm/test/CodeGen/AArch64/sve-gep.ll |
Commit
99809f98d7bb18dbe3be543942a4b467dff7e92e
by flo[SCCP] Do not mark unknown loads as overdefined.
For tracked globals that are unknown after solving, we expect all non-store uses to be replaced.
This is a follow-up to f8045b250d80, which removed forcedconstant.
We should not mark unknown loads as overdefined, as they either load from an unknown pointer or an undef global. Restore the original logic for loads.
|
 | llvm/test/Transforms/SCCP/loadtest.ll |
 | llvm/test/Transforms/SCCP/loadtest2.ll |
 | llvm/lib/Transforms/Scalar/SCCP.cpp |
 | llvm/test/Transforms/SCCP/apint-bigint2.ll |
 | llvm/test/Transforms/IPConstantProp/PR26044.ll |
Commit
ee260c1a0f1c0a8fd1179cdab9fb4312086dcc54
by ajcbik[mlir] [VectorOps] Multi-dim reductions for lowering vector.contract
Summary: This implements the last step for lowering vector.contract progressively to LLVM IR (except for masks). Multi-dimensional reductions that remain after expanding all parallel dimensions are lowered into into simpler vector.contract operations until a trivial 1-dim reduction remains.
Reviewers: nicolasvasilache, andydavis1
Reviewed By: andydavis1
Subscribers: mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74880
|
 | mlir/lib/Dialect/VectorOps/VectorTransforms.cpp |
 | mlir/test/Dialect/VectorOps/vector-contract-transforms.mlir |
Commit
6d60d8695d2066c9ef9360603c88ce938ca65491
by riddleriver[mlir] Use LLJIT::getMainJITDylib instead of hardcoding '<main>'
This fixes test failures caused by a change to the name of the main dylib, now called 'main'. It also hardens the engine against potential future changes to the name.
|
 | mlir/lib/ExecutionEngine/ExecutionEngine.cpp |
Commit
3ee281082737d18585abff3b482a7ab86af73b5a
by Jonas Devlieghere[lldb/Plugin] Don't mark ProcessNetBSD as a plugin
ProcessNetBSD has no initializers so it's just a regular library and shouldn't have the PLUGIN argument in add_lldb_library.
|
 | lldb/source/Plugins/Process/NetBSD/CMakeLists.txt |
Commit
577d9ce35532439203411c999deefc9c80e04c69
by scott.linderRevert "[Driver] Escape the program path for -frecord-command-line"
This reverts commit 6123074d0c0de3614f1552f2f2d6b9db7b32cebe.
Quoting/escaping rules seem host specific, so the test is failing on some bots.
|
 | clang/test/Driver/clang_f_opts.c |
 | clang/lib/Driver/ToolChains/Clang.cpp |
Commit
51bf5d3cc19ac113de2ff185fb5bc2b99b8d89bc
by riddleriver[mlir][Parser] Update DenseElementsAttr to print in hex when the number of elements is over a certain threshold.
Summary: DenseElementsAttr is used to store tensor data, which in some cases can become extremely large(100s of mb). In these cases it is much more efficient to format the data as a string of hex values instead.
Differential Revision: https://reviews.llvm.org/D74922
|
 | mlir/include/mlir/IR/Attributes.h |
 | mlir/lib/IR/Attributes.cpp |
 | mlir/lib/Parser/Parser.cpp |
 | mlir/lib/IR/AsmPrinter.cpp |
 | mlir/test/IR/invalid.mlir |
 | mlir/test/IR/dense-elements-hex.mlir |
Commit
0d19b016226dc2c442a34abfe9b9c06ab4d7ea1e
by Jonas Devlieghere[lldb/Test] Remove stale README in test/API
Now that the test live in the same directory the README is no longer relevant.
|
 | lldb/test/API/README.md |
Commit
07c559caef967cda9812ab7b6ab94c20748e6ac9
by Louis Dionne[libc++] Explain XFAILs with std::uncaught_exceptions test
|
 | libcxx/test/std/language.support/support.exception/uncaught/uncaught_exceptions.pass.cpp |
Commit
d95a10a7f976188e4ffec77d82000afc53a6d39a
by craig.topper[X86] Custom legalize v1i1 add/sub/mul to xor/xor/and with avx512.
We already did this for v2i1, v4i1, v8i1, etc.
|
 | llvm/test/CodeGen/X86/avx512-mask-op.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
5228a5544b2c887dab3aede7baf818ca4244141e
by craig.topper[X86] Fix a couple copy mistakes in v4i1 or/and/xor isel patterns.
VK1 was being used as the output of the copy to regclass, but it should be VK2/VK4. Shouldn't matter in practice though since VK1/VK2/VK4/VK8/VK16 are all identicaly and just have different VTs.
|
 | llvm/lib/Target/X86/X86InstrAVX512.td |
Commit
b00ef8951b52451eb31f9e41848246c8fb17a2bb
by craig.topper[X86] Custom legalize v1i1 UADDSAT/USUBSAT/SADDSAT/UADDSAT to match v2i1/v4i1/v8i1 etc.
|
 | llvm/test/CodeGen/X86/avx512-mask-op.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
7e927698621f476e698eea14e6954057c81ccf4b
by craig.topper[X86] Expand vselect of v1i1 under avx512.
We already do this for v2i1, v4i1, etc.
|
 | llvm/test/CodeGen/X86/avx512-select.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
e5782377f3f6184abc73a7098c9a0cea0a93350f
by craig.topper[X86] Add CMOV_VK1 pseudo so we don't crash on v1i1 ISD::SELECT
|
 | llvm/test/CodeGen/X86/avx512-select.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/lib/Target/X86/X86InstrCompiler.td |
Commit
72ce0c8073bc8dfa109d25a3c5f245ee0285568c
by Louis Dionne[libc++][regex] Validate backreferences in the constructor.
This patch enables throwing exceptions for invalid backreferences in the constructor when using the basic, extended, grep, or egrep grammar.
This fixes bug 34297.
Differential Revision: https://reviews.llvm.org/D62453
|
 | libcxx/include/regex |
 | libcxx/test/std/re/re.regex/re.regex.construct/bad_backref.pass.cpp |
Commit
d4ded05ba851304b26a437896bc3962ef56f62cb
by bigcheesegs[libunwind][CMake] Treat S files as C to work around CMake bug.
The OSX_ARCHITECTURES property is supposed to add the -arch flag when targeting Apple platforms. However, due to a bug in CMake (https://github.com/Kitware/CMake/blob/master/Source/cmLocalGenerator.cxx#L1780), this does not apply to assembly files. This results in a linker error when trying to build libunwind for i386 on MacOS.
rdar://59642189
|
 | libunwind/src/CMakeLists.txt |
Commit
2fe457690da0fc38bc7f9f1d0aee2ba6a6a16ada
by isanbardFilter callbr insts from critical edge splitting
Similarly to how splitting predecessors with an indirectbr isn't handled in the generic way, we also shouldn't split callbrs, for similar reasons.
|
 | llvm/test/Transforms/LICM/callbr-crash.ll |
 | llvm/lib/Transforms/Scalar/LICM.cpp |
 | llvm/lib/Transforms/Utils/BasicBlockUtils.cpp |
Commit
7593a480dbce4e26f7dda4aa8f15bffd03acbfdb
by Vedant Kumar[Dominators] Use Instruction::comesBefore for block-local queries, NFC
Use the lazy instruction ordering facility for block-local dominance queries.
Differential Revision: https://reviews.llvm.org/D74931
|
 | llvm/unittests/IR/DominatorTreeTest.cpp |
 | llvm/lib/IR/Dominators.cpp |
Commit
e27b61c1ea3dbc8329673003e16ecba96600933a
by tclin914[XCore] Add instruction pattern for bitrev
Summary: Add support for lowering bitreverse to the bitrev instruction. Fix https://bugs.llvm.org/show_bug.cgi?id=34628.
Reviewers: RKSimon, rtrieu, robertlytton
Reviewed By: RKSimon
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74748
|
 | llvm/lib/Target/XCore/XCoreISelLowering.cpp |
 | llvm/test/CodeGen/XCore/bitrev.ll |
 | llvm/lib/Target/XCore/XCoreInstrInfo.td |
Commit
4b540fa8a1c1077468cf8eb7c32fd2481cdbc520
by johannes[OpenMP][NFC] Remove leftover debug messages
|
 | clang/lib/CodeGen/CGOpenMPRuntime.cpp |
Commit
c32c8fd1437c69f90f48c91c7545a53d33d6ba20
by riddleriver[mlir] Use getOperation()->setAttr when generating attribute set methods.
This avoids the need to resolve overloads when the current operation also defines a 'setAttr' method.
|
 | mlir/test/mlir-tblgen/op-attribute.td |
 | mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp |
Commit
d8969a1cb963caa979a7cfd298f79108b9f0c0ca
by mvelsSplit _LIBCPP_STRING_EXTERN_TEMPLATE_LIST up into a V1 and UNSTABLE version.
This change splits the _LIBCPP_STRING_EXTERN_TEMPLATE_LIST up into a _LIBCPP_STRING_V1_EXTERN_TEMPLATE_LIST containing the stable ABI, and a _LIBCPP_STRING_UNSTABLE_EXTERN_TEMPLATE_LIST containing the unstable ABI.
The purpose is to explicitly define and maintain the two lists, where the unstable ABI allows for ABI breaking changes for purposes such as optimization while offering a strong guarantee that any change inside the unstable ABI does not affect the stable ABI.
As per the comment in the __string header, we do still allow etries to be added to the stable ABI list as the c++ versions and corresponding c++ std API changes.
|
 | libcxx/include/__string |
 | libcxx/include/string |
 | libcxx/src/string.cpp |
Commit
78be61871704a451a5d9462d7e96ed6c982746d4
by craig.topper[X86] Add CMOV_VR64 pseudo instruction for MMX. Remove mmx handling from combineSelect.
The combineSelect code was casting to i64 without any check that i64 was legal. This can break after type legalization.
It also required splitting the mmx register on 32-bit targets. It's not clear that this makes sense. Instead switch to using a cmov pseudo like we do for XMM/YMM/ZMM.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/select-mmx.ll |
 | llvm/lib/Target/X86/X86InstrCompiler.td |
Commit
efeafa1bdaa715733fc100bcd9d21f93c7272368
by jano.veselylibclc: Use acos implementation from amd_builtins
Fixes acos CTS (1 thread, scalar) on AMD Turks. Reviewer: tstellar Differential Revision: https://reviews.llvm.org/D74011
|
 | libclc/generic/lib/math/acos.inc |
 | libclc/generic/lib/math/acos.cl |
Commit
457660683154014db4b649e852d152354844338a
by craig.topper[X86] Remove unnecessary isNullConstant in LowerSelect. NFC
At this point in the code we know that Op1 or Op2 is all ones. Y points to the other operand. In the case that Op2 is zero, Op1 must be all ones and Y is Op2. The OR ORs Y into Res. But if Y is 0 the OR will be folded away by getNode so we don't need to check for it.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
df74033ec9fceb0c7c1c44a61f240c05c4d5b368
by sbc[WebAssembly] Remove unneeded getWasmKindForNamedSection function
I believe this was carried over from getELFKindForNamedSection since the wasm backend originally used ELF object writing as a template.
Differential Revision: https://reviews.llvm.org/D74565
|
 | llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp |
Commit
3bc525af235038602a2e1143f5491d3b802a8b5b
by craig.topper[X86] Autogenerate complete checks. NFC
|
 | llvm/test/CodeGen/X86/cmov-fp.ll |
Commit
263bef2bbcb0b3bad1f9113a638d6e6c92920a6b
by craig.topper[X86] Make combineCMov not create unsupported FCMOVs when f32/f64 are using X87.
This makes the behavior consistent with what's in LowerSELECT.
|
 | llvm/test/CodeGen/X86/cmov-fp.ll |
 | llvm/test/CodeGen/X86/pseudo_cmov_lower.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
97f11600e0b87b69b01412af8df4fc37af652fce
by craig.topper[X86] Don't bother avoiding illegal FCMOVs if we don't have the cmov subtarget feature.
We'll be forced to emit branches so we might as well use the most direct condition.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/pseudo_cmov_lower.ll |
 | llvm/test/CodeGen/X86/cmov-fp.ll |
Commit
e326f52430419af1ca5aed635168672fbaab5654
by hokein.wu[clangd] Fix the incomplete template specialization in findTarget.
Summary: FindTarget doesn't report the TemplatePattern for incomplete specialization.
Reviewers: sammccall
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D74900
|
 | clang-tools-extra/clangd/unittests/XRefsTests.cpp |
 | clang-tools-extra/clangd/unittests/FindTargetTests.cpp |
 | clang-tools-extra/clangd/FindTarget.cpp |
Commit
0e5ed1b26264f7eee32b23c533371c18ce1cdec0
by Raphael Isemann[lldb][NFC] Split up ClangASTSource::FindExternalVisibleDecls
This function has two functions hidden inside it. Let's make them proper functions.
|
 | lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h |
 | lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp |
Commit
bc498198b5559829d8f7138db01b0f51afefe2a7
by hokein.wu[clangd] Allow renaming class templates in cross-file rename.
Summary: It was disabled because we don't handle explicit template specialization well (due to the index limitation).
renaming templates is normal in practic, rather than disabling it, this patch allows to rename them though it is not perfect (just a known limitation).
Context: https://github.com/clangd/clangd/issues/280
Reviewers: kbobyrev
Reviewed By: kbobyrev
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D74709
|
 | clang-tools-extra/clangd/unittests/RenameTests.cpp |
 | clang-tools-extra/clangd/refactor/Rename.cpp |
Commit
e5eeb8465f29bf4e9cf6f1edb88573338fc12725
by sebastian.neubauerMake unittests include path relative
This change is relevant when embedding the llvm cmake project into another project. It should not change the build behavior of a normal llvm build.
In the case where llvm is embedded as a cmake subproject, CMAKE_SOURCE_DIR does not point to the expected directory and building the tests fails. Using CMAKE_CURRENT_SOURCE_DIR fixes this problem, as it will always point to the same directory.
Differential Revision: https://reviews.llvm.org/D73466
|
 | llvm/unittests/TableGen/CMakeLists.txt |
Commit
d0b09f89e0ed01730173e8b609f25da33e826fa6
by zinenko[NFC][mlir] Adding more operators to EDSC TemplatedIndexedValue
This change adds some missing arithmetic and logical operators to `TemplatedIndexedValue` for EDSC usage.
Differential Revision: https://reviews.llvm.org/D74686
|
 | mlir/include/mlir/EDSC/Builders.h |
 | mlir/include/mlir/Dialect/AffineOps/EDSC/Builders.h |
Commit
32e4e7196630dfe23072990ef4071df4aaa41bb6
by nicolai.haehnletest/CodeGen/AMDGPU: Add a test case that shows a miscompilation
Related to https://reviews.llvm.org/D74908
Change-Id: I6ebf3b5c7a32493016994f30d6796c41e95aecde
|
 | llvm/test/CodeGen/AMDGPU/skip-if-dead.ll |
Commit
a24d46318f669b3882f6c87f58633098e2a157bf
by sguelton[NFC] Corrected a minor typo in a comment
|
 | llvm/lib/Support/YAMLTraits.cpp |
 | llvm/lib/Target/ARM/README-Thumb.txt |
Commit
99b03c1c18de3e4228e31ef04d38f2d530d335be
by sgueltonDetect and disable openmp tests that require multiple hardware processor to run
Team tests seem to require at least two physical cores, and using the same trick as in https://reviews.llvm.org/D55598 doesn't work (why?) . Using lit configuration instead.
Differential Revision: https://reviews.llvm.org/D74921
|
 | openmp/runtime/test/lit.cfg |
 | openmp/runtime/test/ompt/teams/serial_teams.c |
 | openmp/runtime/test/ompt/teams/parallel_team.c |
Commit
d799190851fdd94800428ba335f864ce5fd8135b
by spatel[ConstantFold] fold fsub -0.0, undef to undef rather than NaN
A question about this behavior came up on llvm-dev: http://lists.llvm.org/pipermail/llvm-dev/2020-February/139003.html ...and as part of backend improvements in D73978, but this is an IR change first because we already have fairly thorough tests in place here.
We decided not to implement a more general change that would have folded any FP binop with nearly arbitrary constant + undef operand to undef because that is not theoretically correct (even if it is practically correct).
Differential Revision: https://reviews.llvm.org/D74713
|
 | llvm/test/Analysis/ConstantFolding/fp-undef.ll |
 | llvm/lib/IR/ConstantFold.cpp |
Commit
b0761bbc7639d0901d623e1fbf53ccf6ce066b16
by evgueni.brevnov[DependenceAnalysis] Memory dependence analysis internal caching mechanism is broken in presence of TBAA (PR42733).
Summary: There is a flaw in memory dependence analysis caching mechanism when memory accesses with TBAA are involved. Assume we first analysed and cached results for access with TBAA. Later we request dependence for the same memory but without TBAA (or different TBAA). By design these two queries should share one entry in the internal cache which corresponds to a general access (without TBAA). Thus upon second request internal cached is cleared and we continue analysis for access as if there is no TBAA.
The problem is that even though internal cache is cleared the set of visited nodes is not. That means we won't traverse visited nodes again and populate internal cache with the corresponding dependence results. So we end up with internal cache in an incomplete state. Current implementation tries to signal that situation by resetting CacheInfo->Pair at line 1104. But that doesn't actually help since later code ignores this invalidation and relies on 'Cache->empty()' property to decide on cache completeness.
Reviewers: reames, hfinkel, chandlerc, fedor.sergeev, asbirlea, fhahn, john.brawn, Prazek, sunfish
Reviewed By: john.brawn
Subscribers: DaniilSuchkov, kosarev, jfb, dantrushin, hiraditya, bmahjour, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D73032
|
 | llvm/lib/Analysis/MemoryDependenceAnalysis.cpp |
 | llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h |
 | llvm/test/Analysis/MemoryDependenceAnalysis/memdep_with_tbaa.ll |
Commit
c51b0bede82b9eeddce78151dfc257cf738bf367
by kparzysz[Hexagon] Introduce noop intrinsic to cast between vector predicate types
The (overloaded) intrinsic is llvm.hexagon.V6.pred.typecast[.128B]. The types of the operand and the return value are HVX boolean vector types. For each cast, there needs to be a corresponding intrinsic declared, with different suffixes appended to the name, e.g. ; cast <128 x i1> to <32 x i1> declare <32 x i1> @llvm.hexagon.V6.pred.typecast.128B.s1(<128 x i1>) ; cast <32 x i1> to <64 x i1> declare <64 x i1> @llvm.hexagon.V6.pred.typecast.128B.s2(<32 x i1>) etc.
|
 | llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp |
 | llvm/include/llvm/IR/IntrinsicsHexagon.td |
 | llvm/test/CodeGen/Hexagon/autohvx/vector-predicate-typecast.ll |
 | llvm/lib/Target/Hexagon/HexagonISelLowering.h |
 | llvm/lib/Target/Hexagon/HexagonISelLowering.cpp |
Commit
35b685270b410f6a1351c2a527021f22330c25b9
by antiagainst[mlir] Add a signedness semantics bit to IntegerType
Thus far IntegerType has been signless: a value of IntegerType does not have a sign intrinsically and it's up to the specific operation to decide how to interpret those bits. For example, std.addi does two's complement arithmetic, and std.divis/std.diviu treats the first bit as a sign.
This design choice was made some time ago when we did't have lots of dialects and dialects were more rigid. Today we have much more extensible infrastructure and different dialect may want different modelling over integer signedness. So while we can say we want signless integers in the standard dialect, we cannot dictate for others. Requiring each dialect to model the signedness semantics with another set of custom types is duplicating the functionality everywhere, considering the fundamental role integer types play.
This CL extends the IntegerType with a signedness semantics bit. This gives each dialect an option to opt in signedness semantics if that's what they want and helps code sharing. The parser is modified to recognize `si[1-9][0-9]*` and `ui[1-9][0-9]*` as signed and unsigned integer types, respectively, leaving the original `i[1-9][0-9]*` to continue to mean no indication over signedness semantics. All existing dialects are not affected (yet) as this is a feature to opt in.
More discussions can be found at:
https://groups.google.com/a/tensorflow.org/d/msg/mlir/XmkV8HOPWpo/7O4X0Nb_AQAJ
Differential Revision: https://reviews.llvm.org/D72533
|
 | mlir/lib/Transforms/LoopFusion.cpp |
 | mlir/test/lib/TestDialect/TestDialect.cpp |
 | mlir/include/mlir/Dialect/StandardOps/Ops.td |
 | mlir/test/mlir-tblgen/op-attribute.td |
 | mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp |
 | mlir/include/mlir/IR/StandardTypes.h |
 | mlir/lib/IR/MLIRContext.cpp |
 | mlir/lib/Dialect/StandardOps/Ops.cpp |
 | mlir/test/IR/parser.mlir |
 | mlir/include/mlir/IR/Matchers.h |
 | mlir/lib/Parser/Token.cpp |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/lib/Dialect/SPIRV/SPIRVOps.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp |
 | mlir/include/mlir/Dialect/VectorOps/VectorOps.td |
 | mlir/include/mlir/IR/OpBase.td |
 | mlir/lib/Analysis/Utils.cpp |
 | mlir/docs/Rationale.md |
 | mlir/lib/Dialect/Linalg/Utils/Utils.cpp |
 | mlir/include/mlir/IR/Types.h |
 | mlir/lib/Dialect/VectorOps/VectorOps.cpp |
 | mlir/include/mlir/IR/Attributes.h |
 | mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp |
 | mlir/lib/IR/AsmPrinter.cpp |
 | mlir/include/mlir/Dialect/FxpMathOps/FxpMathOps.td |
 | mlir/lib/Dialect/AffineOps/EDSC/Builders.cpp |
 | mlir/test/lib/TestDialect/TestPatterns.cpp |
 | mlir/lib/Dialect/SPIRV/Serialization/Deserializer.cpp |
 | mlir/include/mlir/Dialect/QuantOps/QuantPredicates.td |
 | mlir/include/mlir/Dialect/GPU/GPUOps.td |
 | mlir/lib/Parser/Token.h |
 | mlir/lib/Dialect/SPIRV/TargetAndABI.cpp |
 | mlir/lib/IR/Builders.cpp |
 | mlir/lib/Dialect/GPU/IR/GPUDialect.cpp |
 | mlir/lib/Parser/TokenKinds.def |
 | mlir/lib/Dialect/FxpMathOps/Transforms/UniformKernelUtils.h |
 | mlir/docs/LangRef.md |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td |
 | mlir/lib/IR/Attributes.cpp |
 | mlir/test/IR/invalid.mlir |
 | mlir/lib/Parser/Lexer.cpp |
 | mlir/include/mlir/Dialect/QuantOps/UniformSupport.h |
 | mlir/include/mlir/IR/Builders.h |
 | mlir/include/mlir/IR/OpDefinition.h |
 | mlir/lib/IR/Operation.cpp |
 | mlir/lib/IR/StandardTypes.cpp |
 | mlir/lib/IR/TypeDetail.h |
 | mlir/test/mlir-tblgen/predicate.td |
 | mlir/lib/Parser/Parser.cpp |
 | mlir/include/mlir/IR/Operation.h |
Commit
86c52af05a64c4aa9d61984eeda8fb7849a4b0fa
by llvm-dev[TargetLowering] SimplifyDemandedBits - use getValidShiftAmountConstant helper.
Use the SelectionDAG::getValidShiftAmountConstant helper to get const/constsplat shift amounts, which allows us to drop the out of range shift amount early-out.
First step towards better non-uniform shift amount support in SimplifyDemandedBits.
|
 | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp |
 | llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp |
Commit
d33e96b68c6f6424dc81145b1301f4cd478e84a2
by llvm-dev[X86] Regenerate hi reg tests
|
 | llvm/test/CodeGen/X86/h-register-addressing-32.ll |
 | llvm/test/CodeGen/X86/h-register-addressing-64.ll |
Commit
b55c58a2d569f2d92333b05c1a7a00114d75e0a6
by pavel[Error/unittests] Add a FailedWithMessage gtest matcher
Summary: We already have a "Failed" matcher, which can be used to check any property of the Error object. However, most frequently one just wants to check the error message, and while this is possible with the "Failed" matcher, it is also very convoluted (Failed<ErrorInfoBase>(testing::Property(&ErrorInfoBase::message, "the message"))).
Now, one can just write: FailedWithMessage("the message"). I expect that most of the usages will remain this simple, but the argument of the matcher is not limited to simple strings -- the argument of the matcher can be any other matcher, so one can write more complicated assertions if needed (FailedWithMessage(ContainsRegex("foo|bar"))). If one wants to match multiple error messages, he can pass multiple arguments to the matcher.
If one wants to match the message list as a whole (perhaps to check the message count), I've also included a FailedWithMessageArray matcher, which takes a single matcher receiving a vector of error message strings.
Reviewers: sammccall, dblaikie, jhenderson
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74898
|
 | llvm/include/llvm/Testing/Support/Error.h |
 | llvm/unittests/Support/ErrorTest.cpp |
Commit
4fdaac0e1eb8e75fe59de0bd01cf72329dacbdb4
by sd.fertile[PowerPC][NFC] Remove Darwin specific logic in frame finalization.
Remove some cumbersome Darwin specific logic for updating the frame offsets of the condition-register spill slots. The containing function has an early return if the subtarget is not ELF based which makes the Darwin logic dead.
|
 | llvm/lib/Target/PowerPC/PPCFrameLowering.cpp |
Commit
a49a41e7855fad426abf6ee9b8b88a535e8d33cc
by gabor.marton[AST][NFC] Update outdated comments in ASTStructuralEquivalence.cpp
|
 | clang/lib/AST/ASTStructuralEquivalence.cpp |
Commit
175f6e309ab911d43ab21707587615341112f3b5
by sd.fertile[PowerPC][NFC] Add a test for vrsave usage iinline asm.
Add a lit test that that uses vrsave register in the clobber list, and tests the extended mnemonics mtvrsave and mfvrsave.
|
 | llvm/test/CodeGen/PowerPC/vrsave-inline-asm.ll |
Commit
de8793b9184ece0d24f46bc2d86711092848f938
by pavel[lldb/DWARF] Add support for type units in dwp files
all that was needed was to teach lldb's DWARF context about the debug_tu_index section.
|
 | lldb/source/Plugins/SymbolFile/DWARF/DWARFContext.h |
 | lldb/test/Shell/SymbolFile/DWARF/dwp-debug-types.s |
 | lldb/source/Plugins/SymbolFile/DWARF/DWARFContext.cpp |
Commit
f0c642e82274158f692d184de177be65eba814c1
by epastorRemove unused functions in llvm-ml
On review, these functions will likely not be needed even in the final MasmParser.
|
 | llvm/lib/MC/MCParser/MasmParser.cpp |
Commit
5125803d344b848cdfc9441edfcc36dc8e488407
by alexandre.ganea[mlir] Silence error: call to constructor of 'llvm::APInt' is ambiguous
I was getting this error when using Clang 9.0.1 for compiling.
F:\llvm-project\mlir\lib\IR\Builders.cpp(119,27): error: call to constructor of 'llvm::APInt' is ambiguous APInt(32, value, /*isSigned=*/false)); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ F:\llvm-project\llvm\include\llvm/ADT/APInt.h(277,3): note: candidate constructor APInt(unsigned numBits, uint64_t val, bool isSigned = false) ^ F:\llvm-project\llvm\include\llvm/ADT/APInt.h(304,3): note: candidate constructor APInt(unsigned numBits, unsigned numWords, const uint64_t bigVal[]); ^ 1 error generated.
|
 | mlir/lib/IR/Builders.cpp |
Commit
b64aa8c715112ac4b9fd1ae8eb5ecb981ecd091a
by arsenm2AMDGPU/GlobalISel: Fix constant bus violation with source modifiers
This looked through copies to find the source modifiers, which may have been SGPR->VGPR copies added to avoid potential constant bus violations. Re-insert a copy to a VGPR if this happens.
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fadd.s32.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fadd.s64.mir |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/constant-bus-restriction.ll |
Commit
fab4cdea3911b19d1b1819102aee0252cbd4eba4
by arsenm2AMDGPU/GlobalISel: Select llvm.amdgcn.fmul.legacy
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fmul.legacy.ll |
 | llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td |
Commit
79ff188addeeea127c7a7edd808c5821917d4bb6
by arsenm2AMDGPU/GlobalISel: Legalize G_FPOW
There are few differences from the DAG handling. First, the DAG handling uses a primitive selection pattern instead of custom legalizing it. Because of this, this makes use of source modifiers while the DAG does not.
Also instead of promoting f16, try to use the f16 log/exp. There's no f16 fmul_legacy, so widen just for the multiply, although I'm not sure that's the best solution.
|
 | llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h |
 | llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fpow.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/fpow.ll |
Commit
ac7abe0ba9ae4c6a2248cc3ef4e4fe7e6d270105
by arsenm2AMDGPU/GlobalISel: Manually select G_BUILD_VECTOR_TRUNC
We have patterns for s_pack* selection, but they assume the inputs are a build_vector with 16-bit inputs, not a truncating build vector. Since there's still outstanding work for how to handle mismatched result and source element vector operations, and since I'm trying a different packed vector strategy than SelectionDAG, just manually select this for now.
|
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-build-vector-trunc.v2s16.mir |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h |
Commit
83012cb217189bb6faa1256cc44fd0c306363264
by david.green[ARM] Correct Formatting. NFC
Also removed an unnecessary TODO that I don't believe is relevant for the instruction in question.
|
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
Commit
89dc8fe6222041319e073ceb8ee0cb38d045ea16
by arsenm2AMDGPU/GlobalISel: Precommit xnor matching test
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/xnor.ll |
Commit
6ed8e2014330b6a48d238cdc4357e788cdd6d445
by maskray[ELF] Ignore the maximum of input section alignments for two cases
Follow-up for D74286.
Notations:
* alignExpr: the computed ALIGN value * max_input_align: the maximum of input section alignments
This patch changes the following two cases to match GNU ld:
* When ALIGN is present, GNU ld sets output sh_addr to alignExpr, while lld use max(alignExpr, max_input_align) * When addrExpr is specified but alignExpr is not, GNU ld sets output sh_addr to addrExpr, while lld uses `advance(0, max_input_align)`
Note, sh_addralign is still set to max(alignExpr, max_input_align).
lma-align.test is enhanced a bit to check we don't overalign sh_addr.
fixSectionAlignments() sets addrExpr but not alignExpr for the `!hasSectionsCommand` case. This patch sets alignExpr as well so that max_input_align will be respected.
Reviewed By: grimar
Differential Revision: https://reviews.llvm.org/D74736
|
 | lld/ELF/Writer.cpp |
 | lld/ELF/LinkerScript.cpp |
 | lld/test/ELF/linkerscript/outsections-addr.s |
 | lld/test/ELF/linkerscript/lma-align.test |
 | lld/test/ELF/linkerscript/section-align2.test |
Commit
de0dda54d38137d0714c279a540074fe73822b8b
by maskray[ELF] Warn changed output section address
When the output section address (addrExpr) is specified, GNU ld warns if sh_addr is different. This patch implements the warning.
Note, LinkerScript::assignAddresses can be called more than once. We need to record the changed section addresses, and only report the warnings after the addresses are finalized.
Reviewed By: grimar
Differential Revision: https://reviews.llvm.org/D74741
|
 | lld/test/ELF/linkerscript/section-align2.test |
 | lld/ELF/Writer.cpp |
 | lld/ELF/LinkerScript.h |
 | lld/test/ELF/linkerscript/lma-align.test |
 | lld/ELF/LinkerScript.cpp |
Commit
c47e0e2d37d32ec56c760f1a2c9740d69c370b57
by Jonas Devlieghere[lldb-vscode] Use libOption with tablegen to parse command line options.
This change will bring lldb-vscode in line with how several other llvm tools process command line arguments and make it easier to add future options.
Differential revision: https://reviews.llvm.org/D74798
|
 | lldb/test/Shell/VSCode/TestOptions.test |
 | lldb/test/Shell/helper/toolchain.py |
 | lldb/tools/lldb-vscode/Options.td |
 | lldb/tools/lldb-vscode/CMakeLists.txt |
 | lldb/tools/lldb-vscode/lldb-vscode.cpp |
Commit
dbd7281aa775a0e23c43a02583593900cd4c05be
by maskray[ELF] Shuffle .init_array/.fini_array with --shuffle-sections=
Useful for detecting static initialization order fiasco.
Reviewed By: grimar
Differential Revision: https://reviews.llvm.org/D74887
|
 | lld/ELF/Writer.cpp |
 | lld/test/ELF/shuffle-sections-init-fini.s |
Commit
42ec6fdce92090c02a10506fbdb2257fdbc2d1fd
by llvm-dev[TargetLowering] Apply basic shift combines before recursive SimplifyDemandedBits calls.
Minor refactor/cleanup before we begin adding non-uniform support.
|
 | llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp |
Commit
043ed2e22ac442c2116f5df6367d3889ea0b9de1
by arsenm2AMDGPU/GlobalISel: Fix xnor matching
We should try the generated matchers before the manual selection. This means the patterns are now handling the common cases, but the manual selection code is not yet dead. It's still handling the non-s32/s64 cases (like v2s16 and v2s32). Currently tablegen doesn't have a nice way to have a single pattern that covers multiple types.
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-pattern-or3.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-and.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-or.mir |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-xor.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-pattern-xor3.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/xnor.ll |
Commit
6a479220b5e8b25ec3ffe193c463cb3fdaac0e06
by arsenm2AMDGPU/GlobalISel: Commit test changes I forgot to squash
These should have been in ac7abe0ba9ae4c6a2248cc3ef4e4fe7e6d270105
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-build-vector-trunc.v2s16.mir |
Commit
cab39e4b8c826ec5dfebe17a18137272022e64ac
by jay.foadGlobalISel: Fix narrowing of (G_ASHR i64:x, 32)
Reviewers: arsenm
Subscribers: jvesely, wdng, nhaehnle, rovka, hiraditya, volkan, kerbowa, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74950
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/combine-ashr-narrow.mir |
 | llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp |
Commit
9fff6e823cf79075d1f386e1e875b73405368620
by mcinally[AArch64][SVE] Add +fullfp16 to sve-vector-splat.ll
Add +fullfp16 to sve-vector-splat.ll so we can test folding of immediates into moves.
This attribute can go away later when SVE has a full set of fp16 patterns in place.
Differential Revision: https://reviews.llvm.org/D74965
|
 | llvm/test/CodeGen/AArch64/sve-vector-splat.ll |
Commit
134bab7cd5679673d6807595ae77b5bc0c3b83c2
by flo[DSE,MSSA] Add debug counter.
Can be used like -debug-counter=dse-memoryssa-skip=10,dse-memoryssa-counter-count=20
Reviewers: dmgreen, rnk, efriedma, bryant, asbirlea
Reviewed By: asbirlea
Differential Revision: https://reviews.llvm.org/D72147
|
 | llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp |
 | llvm/test/Transforms/DeadStoreElimination/MSSA/debug-counter.ll |
Commit
23444edf30ba00ccefa3a582ac7ddc29774e9da5
by yitzhakm[AST matchers] Add basic matchers for googletest EXPECT/ASSERT calls.
Summary: This revision adds matchers that match calls to the gtest EXPECT and ASSERT macros almost like function calls. The matchers are placed in separate files (GtestMatchers...), because they are specific to the gtest library.
Reviewers: gribozavr2
Subscribers: mgorny, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D74840
|
 | clang/unittests/ASTMatchers/GtestMatchersTest.cpp |
 | clang/include/clang/ASTMatchers/GtestMatchers.h |
 | clang/lib/ASTMatchers/CMakeLists.txt |
 | clang/unittests/ASTMatchers/CMakeLists.txt |
 | clang/lib/ASTMatchers/GtestMatchers.cpp |
Commit
fc4455891c00bfa16c85d0cebe6158fafe11667d
by spatel[VectorCombine] refactor matching code to reduce duplication; NFC
cmp/binop were already diverging even though they are largely the same logic.
|
 | llvm/lib/Transforms/Vectorize/VectorCombine.cpp |
Commit
db9c40f5624e6d55e0cbafe3f3980a7223e197c4
by danilo.carvalho.grael[AArch64][SVE] Add intrinsics for SVE2 bitwise ternary operations
Summary: Add intrinsics for the following operations: - eor3, bcax - bsl, bsl1n, bsl2n, nbsl
Fix MC tests for bsl instructions.
Reviewers: kmclaughlin, c-rhodes, sdesmalen, efriedma, rengolin
Reviewed By: efriedma
Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74785
|
 | llvm/lib/Target/AArch64/SVEInstrFormats.td |
 | llvm/test/MC/AArch64/SVE2/nbsl-diagnostics.s |
 | llvm/include/llvm/IR/IntrinsicsAArch64.td |
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
 | llvm/test/CodeGen/AArch64/sve2-bitwise-ternary.ll |
 | llvm/test/MC/AArch64/SVE2/bsl-diagnostics.s |
 | llvm/test/MC/AArch64/SVE2/bsl1n-diagnostics.s |
 | llvm/test/MC/AArch64/SVE2/bsl2n-diagnostics.s |
Commit
60023e347116e5004295e8c7f2f09cc1855d4d84
by arsenm2AMDGPU: Use default operand for VOP3P clamp
We don't use this, and matching from the def doesn't make much sense.
There are multiple tablegen bugs with default operand handling. undef_tied_input should work to handle the vdst_in correctly, but this breaks the operand register class constraint which it should be able to infer.
|
 | llvm/lib/Target/AMDGPU/VOP3PInstructions.td |
 | llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp |
 | llvm/lib/Target/AMDGPU/VOP3Instructions.td |
 | llvm/lib/Target/AMDGPU/SIInstrInfo.td |
Commit
41bd9ead35f60823c59367efe4f3d5ade87e756d
by paulsson[SystemZ] Return scalarized costs for vector instructions on older archs.
A cost query for a vector instruction should return a cost even without target vector support, and not trigger an assert.
VectorCombine does this with an input containing source code vectors.
Review: Ulrich Weigand
|
 | llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp |
 | llvm/test/Analysis/CostModel/SystemZ/oldarch-vectors.ll |
Commit
8c70a2597f53457efc8eb2798c1d1056bb105ec3
by llvmgnsyncbot[gn build] Port 23444edf30b
|
 | llvm/utils/gn/secondary/clang/lib/ASTMatchers/BUILD.gn |
 | llvm/utils/gn/secondary/clang/unittests/ASTMatchers/BUILD.gn |
Commit
a8db806d52ce02ddca179b811da164023316d4b9
by nikita.ppv[SimplifyLibCalls][IRBuilder] Accept any IRBuilder in SimplifyLibCalls
This changes the SimplifyLibCalls utility to accept an IRBuilderBase, which allows us to pass through the IRBuilder used by InstCombine. This will ensure that new instructions get added to the worklist. The annotated test-case drops from 4 to 2 InstCombine iterations thanks to this.
To achieve this, I'm adding an IRBuilderBase::OperandBundlesGuard, which is basically the same as the existing InsertPointGuard and FastMathFlagsGuard, but for operand bundles. Also add a setDefaultOperandBundles() method so these can be set outside the constructor.
Differential Revision: https://reviews.llvm.org/D74792
|
 | llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp |
 | llvm/include/llvm/IR/IRBuilder.h |
 | llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp |
 | llvm/lib/CodeGen/CodeGenPrepare.cpp |
 | llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h |
 | llvm/test/Transforms/InstCombine/simplify-libcalls.ll |
Commit
c90ea87cfd71f8da05f2e684d3cf139f9773c15d
by nikita.ppv[X86] Fix SDLoc initialization
Fixes -Wparentheses warning, in this case indicating a genuine bug.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
98f5268a7292c2996e2f718382e2d5404eb5d112
by flo[VectorUtils] Move ToVectorTy to VectorUtils.h (NFC).
ToVectorTy is defined and used in multiple places. Hoist it to VectorUtils.h to avoid duplication and improve re-usability.
Reviewers: rengolin, hsaito, Ayal, gilr, fpetrogalli
Reviewed By: fpetrogalli
Differential Revision: https://reviews.llvm.org/D74959
|
 | llvm/include/llvm/Analysis/VectorUtils.h |
 | llvm/lib/Transforms/Vectorize/LoopVectorize.cpp |
 | llvm/lib/Transforms/Utils/InjectTLIMappings.cpp |
Commit
deb0a8bfc4923356beaa47b960d14b0c46a14721
by flo[DSE,MSSA] Dbg counters required assertions. Mark test accordingly.
|
 | llvm/test/Transforms/DeadStoreElimination/MSSA/debug-counter.ll |
Commit
656dff9af48bd242fc0f8a20cf50c6d0921df052
by nikita.ppv[InstCombine] Use replaceOperand() in more places
Followup to D73919 with another batch of replacements of setOperand() -> replaceOperand(), to make sure the old operand gets DCEd right away.
Differential Revision: https://reviews.llvm.org/D74932
|
 | llvm/lib/Transforms/InstCombine/InstructionCombining.cpp |
 | llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp |
Commit
e4df934ca7b408cfb52531016198545a8d50f41a
by maskray[Clang interpreter] Rename Block.{h,cpp} to InterpBlock.{h,cpp}
The Blocks runtime provide a header named Block.h. It is generally preferable to avoid name collision with system headers (reducing reliance on -isystem order, more friendly when navigating files in an editor, etc).
Reviewed By: gribozavr2
Differential Revision: https://reviews.llvm.org/D74934
|
 | llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn |
 | clang/lib/AST/Interp/InterpBlock.cpp |
 | clang/lib/AST/Interp/Block.cpp |
 | clang/lib/AST/CMakeLists.txt |
 | clang/lib/AST/Interp/InterpBlock.h |
 | clang/lib/AST/Interp/Pointer.cpp |
 | clang/lib/AST/Interp/Pointer.h |
 | clang/lib/AST/Interp/Block.h |
Commit
0e3e242209c7f84009c9d88fe52982f8ba21c68b
by yamauchi[BFI] Fix missed BFI updates in MachineSink.
Summary: This prevents BFI queries on new blocks (from MachineSinking::GetAllSortedSuccessors) and fixes a bunch of assert failures under -check-bfi-unknown-block-queries=true.
Reviewers: davidxl
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74511
|
 | llvm/lib/CodeGen/MachineBlockFrequencyInfo.cpp |
 | llvm/lib/CodeGen/MachineSink.cpp |
 | llvm/include/llvm/CodeGen/MachineBlockFrequencyInfo.h |
 | llvm/test/CodeGen/X86/machine-sink.ll |
Commit
b178555318cdccecc9d3fb4af89b4a765cb0e48c
by nikita.ppv[InstCombine] Improve simplify demanded bits worklist management
This fixes a small mistake from D72944: The worklist add should happen before assigning the new operand, not after.
In case an actual replacement happens, the old operand needs to be added for DCE. If no actual replacement happens, then old/new are the same, so it doesn't matter.
This drops one iteration from the annotated test case.
|
 | llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp |
 | llvm/test/Transforms/InstCombine/2010-11-01-lshr-mask.ll |
Commit
31ec721516b5ed36f7dbed180a903e269f29716d
by francesco.petrogalli[llvm][CodeGen] DAG Combiner folds for vscale.
Summary: This patch simplifies the DAGs generated when using the intrinsic `@llvm.vscale.*` as follows:
* Fold (add (vscale * C0), (vscale * C1)) to (vscale * (C0 + C1)). * Canonicalize (sub X, (vscale * C)) to (add X, (vscale * -C)). * Fold (mul (vscale * C0), C1) to (vscale * (C0 * C1)). * Fold (shl (vscale * C0), C1) to (vscale * (C0 << C1)).
The test `sve-gep-ll` have been updated to reflect the folding introduced by this patch.
Reviewers: efriedma, sdesmalen, andwar, rengolin
Reviewed By: sdesmalen
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74782
|
 | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp |
 | llvm/test/CodeGen/AArch64/sve-gep.ll |
 | llvm/test/CodeGen/AArch64/sve-vscale-combine.ll |
Commit
bc7b26c333f51b4b534abb81d597c0b86123718c
by diego.caballero[MLIR] Allow Loop dialect IfOp and ForOp to define values
This patch implements the RFCs proposed here: https://llvm.discourse.group/t/rfc-modify-ifop-in-loop-dialect-to-yield-values/463 https://llvm.discourse.group/t/rfc-adding-operands-and-results-to-loop-for/459/19.
It introduces the following changes: - All Loop Ops region, except for ReduceOp, terminate with a YieldOp. - YieldOp can have variadice operands that is used to return values out of IfOp and ForOp regions. - Change IfOp and ForOp syntax and representation to define values. - Add unit-tests and update .td documentation. - YieldOp is a terminator to loop.for/if/parallel - YieldOp custom parser and printer
Lowering is not supported at the moment, and will be in a follow-up PR.
Thanks.
Reviewed By: bondhugula, nicolasvasilache, rriddle
Differential Revision: https://reviews.llvm.org/D74174
|
 | mlir/test/Dialect/Linalg/parallel_loops.mlir |
 | mlir/test/Dialect/Loops/invalid.mlir |
 | mlir/lib/Dialect/LoopOps/LoopOps.cpp |
 | mlir/test/Conversion/LoopsToGPU/parallel_loop.mlir |
 | mlir/lib/Parser/Parser.cpp |
 | mlir/test/Dialect/Loops/ops.mlir |
 | mlir/lib/Conversion/GPUToSPIRV/ConvertGPUToSPIRV.cpp |
 | mlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp |
 | mlir/examples/toy/Ch7/mlir/LowerToLLVM.cpp |
 | mlir/include/mlir/Dialect/LoopOps/LoopOps.td |
 | mlir/test/Dialect/Loops/parallel-loop-fusion.mlir |
 | mlir/include/mlir/IR/OpImplementation.h |
 | mlir/examples/toy/Ch6/mlir/LowerToLLVM.cpp |
Commit
6b4a193defbe59b2b93e9d0289b2a7d9c2d842b9
by jasonliu[XCOFF][AIX] Put undefined symbol name into StringTable when neccessary
Summary: When we have a long name for the undefined symbol, we would hit this assertion: Assertion failed: I != StringIndexMap.end() && "String is not in table!" This patch addresses that.
Reviewed by: DiggerLin, daltenty
Differential Revision: https://reviews.llvm.org/D74924
|
 | llvm/test/CodeGen/PowerPC/aix-undef-func-call.ll |
 | llvm/lib/MC/XCOFFObjectWriter.cpp |
Commit
2769fb90f0a4e6178306b521c5e79708b16de1fc
by llvm-dev[LoopVectorize][X86] Regenerate tests. NFCI.
|
 | llvm/test/Transforms/LoopVectorize/X86/interleaving.ll |
 | llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll |
Commit
1723f219939e1d4dc1c53ec7caf10c9380822b99
by llvm-devFix MSVC "not all control paths return a value" warning. NFCI.
|
 | clang/lib/ASTMatchers/GtestMatchers.cpp |
Commit
72eef820d528ab93982e54cd49c44fabf20e83a5
by arsenm2AMDGPU/GlobalISel: Select G_SHUFFLE_VECTOR
G_SHUFFLE_VECTOR is legal since it theoretically may help match op_sel for VOP3P instructions. Expand it in some other way in case it doesn't fold into the use instructions.
|
 | llvm/lib/Target/AMDGPU/AMDGPUGlobalISelUtils.h |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-shuffle-vector.v2s16.mir |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp |
 | llvm/lib/Target/AMDGPU/AMDGPUGlobalISelUtils.cpp |
 | llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp |
Commit
dfce5fd50a00110890ad95dacca75886c6fd456d
by arsenm2AMDGPU/GlobalISel: Select VOP3P instructions
This only handles the basic cases. More work is needed to make better use of op_sel.
|
 | llvm/lib/Target/AMDGPU/AMDGPUGISel.td |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/fmul.v2f16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fmaxnum-ieee.v2s16.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-lshr.v2s16.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-ashr.v2s16.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fminnum-ieee.v2s16.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fmul.v2s16.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-shl.v2s16.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fminnum.v2s16.mir |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fcanonicalize.mir |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fmaxnum.v2s16.mir |
Commit
4c1c9422a3adab64433b8fde31f1ac346459b491
by arsenm2AMDGPU/GlobalISel: Select llvm.amdgcn.fdot2
I'm slighly worried about the generated checks, since they won't catch incorrect modifiers being added at the end of the line.
|
 | llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td |
 | llvm/lib/Target/AMDGPU/VOP3PInstructions.td |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fdot2.ll |
Commit
db06870dbd5e85acbd39bb8dc3b2e1c751904f86
by arsenm2AMDGPU: Move dot intrinsic patterns to instruction def
I tried to use some of the new tablegen features to avoid creating different operand list permutations, but I still don't see a way to programmatically build a source pattern dag.
Also add GlobalISel tests, which now all import successfully.
Some of the fneg fold tests are incorrect, which need to be fixed in a future commit
|
 | llvm/lib/Target/AMDGPU/VOP3PInstructions.td |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot2.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot2.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot8.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot8.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sdot4.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.udot4.ll |
 | llvm/lib/Target/AMDGPU/VOP3Instructions.td |
Commit
07d2cdae11633139947f105888163adfd5646ce7
by nullptr[lldb/cmake] Enable more verbose find_package output.
Summary: The purpose of this patch is to make identifying missing dependencies clearer to the user. `find_package` will report if a package is not found, that output, combined with the exiting status message, is clearer than not having the additional verbosity.
If the SWIG dependency is required {LLDB_ENABLE_PYTHON, LLDB_ENABLE_LUA} and SWIG is not available, fail the configuration step. Terminate the configure early rather than later with a clear error message.
We could possibly modify: `llvm-project/lldb/cmake/modules/FindPythonInterpAndLibs.cmake` However, the patch here seems clear in my opinion.
Reviewers: aadsm, hhb, JDevlieghere
Reviewed By: JDevlieghere
Subscribers: labath, jrm, mgorny, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74917
|
 | lldb/cmake/modules/FindPythonInterpAndLibs.cmake |
 | lldb/cmake/modules/FindLuaAndSwig.cmake |
Commit
00955a62e4333c7ca889043d6a9033cb8cbf800d
by arsenm2AMDGPU/GlobalISel: Fix SALU mapping for v2s16 min/max
The legalizer helper functions are unusably awkward to perform the 3-5 part legalization. This needs to be widened, scalarized, lowered, and we should avoid creating vector extends and truncates. Manually do all of this and expand.
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-umax.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-smax.mir |
 | llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-smin.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-umin.mir |
Commit
73d8d83a6d9adac3216ea8a39eb502b2a5c4d083
by maskray[ARM] Change ARMAttributeParser::Parse to use support::endianness and simplify
|
 | llvm/lib/Support/ARMAttributeParser.cpp |
 | llvm/unittests/Support/ARMAttributeParser.cpp |
 | lld/ELF/InputFiles.cpp |
 | llvm/include/llvm/Object/ELFObjectFile.h |
 | llvm/tools/llvm-readobj/ELFDumper.cpp |
 | llvm/include/llvm/Support/ARMAttributeParser.h |
Commit
7dd6a862e5ece866c787d4509a5a5cad19531fbc
by Louis Dionne[libc++] Do not set the `availability=XXX` feature when not testing against a system libc++
Otherwise, the `availability=XXX` lit feature is set even when we're testing trunk and _LIBCPP_DISABLE_AVAILABILITY is defined, which causes tests that check for availability markup to be enabled and unexpectedly pass.
|
 | libcxx/utils/libcxx/test/config.py |
Commit
266959c0f72ff359a60fe43da0cf336604611029
by mcinally[AArch64][SVE] Add backend support for splats of immediates
This patch adds backend support for splats of both Int and FP immediates.
Differential Revision: https://reviews.llvm.org/D74856
|
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
 | llvm/test/CodeGen/AArch64/sve-vector-splat.ll |
 | llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp |
Commit
0781e93a6eaa71ec5d87be3bbeeeed053067f7ee
by luismarques[CodeGen][RISCV] Fix clang/test/CodeGen/atomic_ops.c for RISC-V
By default the RISC-V target doesn't have the atomics standard extension enabled. The first RUN line in `clang/test/CodeGen/atomic_ops.c` didn't specify a target triple, which meant that on RISC-V Linux hosts it would target RISC-V, but because it used clang cc1 we didn't get the toolchain driver functionality to automatically turn on the extensions implied by the target triple (riscv64-linux includes atomics). This would cause the test to fail on RISC-V hosts.
This patch changes the test to have RUN lines for two explicit targets, one with native atomics and one without. To work around FileCheck limitations and more accurately match the output, some tests now have separate prefixes for the two cases.
Reviewers: jyknight, eli.friedman, lenary, efriedma Reviewed By: efriedma Differential Revision: https://reviews.llvm.org/D74847
|
 | clang/test/CodeGen/atomic_ops.c |
Commit
29ad9d6b26ee92c7843c06392625d894d58658c2
by hanchung[mlir][spirv] Add lowering for load/store zero-rank memref from std to SPIR-V.
Differential Revision: https://reviews.llvm.org/D74874
|
 | mlir/lib/Dialect/SPIRV/SPIRVLowering.cpp |
 | mlir/test/Conversion/StandardToSPIRV/std-to-spirv.mlir |
 | mlir/test/Dialect/SPIRV/Serialization/memory-ops.mlir |
Commit
042d97eda9fabbf7718e32fc5efe9150c7d8bfa9
by diego.caballero[MLIR] Remove constexpr from LoopOps.td
Reviewed By: rriddle
Differential Revision: https://reviews.llvm.org/D74978
|
 | mlir/include/mlir/Dialect/LoopOps/LoopOps.td |
Commit
d2b7c09e79a12cb61fc424429b348b2c04364d07
by kparzysz[Hexagon] Simplify intrinsic (vandvrt (vandqrt q b) m) -> q if possible
When each byte in b&m is non-zero, this conversion Q->V->Q is a no-op.
|
 | llvm/test/Transforms/InstCombine/Hexagon/simplify-hvx-qvq.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp |
 | llvm/test/Transforms/InstCombine/Hexagon/lit.local.cfg |
Commit
69d757c0e8ffc5b49fda10df38e470a56d616ef4
by riddleriverMove StandardOps/Ops.h to StandardOps/IR/Ops.h
Summary: NFC - Moved StandardOps/Ops.h to a StandardOps/IR dir to better match surrounding directories. This is to match other dialects, and prepare for moving StandardOps related transforms in out for Transforms and into StandardOps/Transforms.
Differential Revision: https://reviews.llvm.org/D74940
|
 | mlir/lib/Transforms/LoopFusion.cpp |
 | mlir/lib/Transforms/Vectorize.cpp |
 | mlir/examples/toy/Ch7/mlir/LowerToAffineLoops.cpp |
 | mlir/lib/Dialect/VectorOps/VectorOps.cpp |
 | mlir/lib/Transforms/PipelineDataTransfer.cpp |
 | mlir/lib/Transforms/AffineLoopInvariantCodeMotion.cpp |
 | mlir/include/mlir/Dialect/StandardOps/CMakeLists.txt |
 | mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp |
 | mlir/include/mlir/Dialect/Linalg/Utils/Utils.h |
 | mlir/include/mlir/Dialect/Linalg/EDSC/Builders.h |
 | mlir/lib/Conversion/LoopToStandard/ConvertLoopToStandard.cpp |
 | mlir/lib/Conversion/GPUCommon/OpToFuncCallLowering.h |
 | mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp |
 | mlir/lib/Analysis/AffineStructures.cpp |
 | mlir/lib/Dialect/FxpMathOps/Transforms/LowerUniformRealMath.cpp |
 | mlir/lib/Transforms/LoopCoalescing.cpp |
 | mlir/lib/Conversion/StandardToSPIRV/ConvertStandardToSPIRV.cpp |
 | mlir/test/lib/Transforms/TestConstantFold.cpp |
 | mlir/include/mlir/Dialect/StandardOps/IR/CMakeLists.txt |
 | mlir/lib/Conversion/StandardToSPIRV/StandardToSPIRV.td |
 | mlir/lib/Analysis/Utils.cpp |
 | mlir/test/lib/Transforms/TestMemRefStrideCalculation.cpp |
 | mlir/lib/Transforms/Utils/Utils.cpp |
 | mlir/test/lib/Transforms/TestLoopFusion.cpp |
 | mlir/lib/Analysis/AffineAnalysis.cpp |
 | mlir/include/mlir/Dialect/StandardOps/Ops.td |
 | mlir/lib/Conversion/AffineToStandard/AffineToStandard.cpp |
 | mlir/lib/Conversion/LoopsToGPU/LoopsToGPUPass.cpp |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.td |
 | mlir/include/mlir/Transforms/Utils.h |
 | mlir/lib/Dialect/StandardOps/CMakeLists.txt |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.h |
 | mlir/lib/Transforms/MemRefDataFlowOpt.cpp |
 | mlir/lib/Transforms/Utils/LoopFusionUtils.cpp |
 | mlir/examples/toy/Ch6/mlir/LowerToAffineLoops.cpp |
 | mlir/lib/Dialect/Linalg/Utils/Utils.cpp |
 | mlir/lib/Dialect/VectorOps/VectorTransforms.cpp |
 | mlir/test/lib/DeclarativeTransforms/TestVectorTransformPatterns.td |
 | mlir/lib/Conversion/LoopsToGPU/LoopsToGPU.cpp |
 | mlir/lib/Dialect/StandardOps/Ops.cpp |
 | mlir/include/mlir/Dialect/StandardOps/Ops.h |
 | mlir/include/mlir/InitAllDialects.h |
 | mlir/examples/toy/Ch7/mlir/LowerToLLVM.cpp |
 | mlir/test/lib/Transforms/TestInlining.cpp |
 | mlir/lib/Dialect/Linalg/Analysis/DependenceAnalysis.cpp |
 | mlir/test/lib/IR/TestMatchers.cpp |
 | mlir/lib/Analysis/NestedMatcher.cpp |
 | mlir/lib/Dialect/QuantOps/Transforms/ConvertConst.cpp |
 | mlir/lib/Dialect/LoopOps/Transforms/ParallelLoopFusion.cpp |
 | mlir/lib/Dialect/GPU/IR/GPUDialect.cpp |
 | mlir/lib/Dialect/AffineOps/AffineOps.cpp |
 | mlir/lib/Dialect/VectorOps/VectorUtils.cpp |
 | mlir/test/lib/Transforms/TestOpaqueLoc.cpp |
 | mlir/examples/toy/Ch6/mlir/LowerToLLVM.cpp |
 | mlir/lib/Dialect/LoopOps/LoopOps.cpp |
 | mlir/test/lib/Transforms/TestMemRefDependenceCheck.cpp |
 | mlir/lib/Quantizer/Configurations/FxpMathConfig.cpp |
 | mlir/test/lib/Transforms/TestMemRefBoundCheck.cpp |
 | mlir/lib/Transforms/Utils/FoldUtils.cpp |
 | mlir/lib/Conversion/StandardToSPIRV/LegalizeStandardForSPIRV.cpp |
 | mlir/examples/toy/Ch5/mlir/LowerToAffineLoops.cpp |
 | mlir/lib/Conversion/StandardToLLVM/ConvertStandardToLLVM.cpp |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/test/lib/Transforms/TestVectorTransforms.cpp |
 | mlir/include/mlir/Dialect/StandardOps/EDSC/Builders.h |
 | mlir/lib/Dialect/GPU/Transforms/AllReduceLowering.cpp |
 | mlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp |
 | mlir/lib/Dialect/StandardOps/IR/Ops.cpp |
 | mlir/lib/Conversion/LinalgToSPIRV/LinalgToSPIRV.cpp |
 | mlir/lib/Conversion/GPUToVulkan/ConvertLaunchFuncToVulkanCalls.cpp |
Commit
e2ed1d14d6c2d11d1a5df23bd679bcb7e6cbf433
by francesco.petrogalli[llvm][aarch64] SVE addressing modes.
Summary: Added register + immediate and register + register addressing modes for the following intrinsics:
1. Masked load and stores: * Sign and zero extended load and truncated stores. * No extension or truncation. 2. Masked non-temporal load and store.
Reviewers: andwar, efriedma
Subscribers: cameron.mcinally, sdesmalen, tschuett, kristof.beyls, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74254
|
 | llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp |
 | llvm/test/CodeGen/AArch64/sve-pred-non-temporal-ldst-addressing-mode-reg-imm.ll |
 | llvm/lib/Target/AArch64/SVEInstrFormats.td |
 | llvm/test/CodeGen/AArch64/sve-pred-non-temporal-ldst-addressing-mode-reg-reg.ll |
 | llvm/test/CodeGen/AArch64/sve-pred-contiguous-ldst-addressing-mode-reg-imm.ll |
 | llvm/test/CodeGen/AArch64/sve-pred-contiguous-ldst-addressing-mode-reg-reg.ll |
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
Commit
34e3485560cbe8b0e843a1a9ef0cf796e6a4e237
by spatel[VectorCombine] refactor cost calcs to reduce duplication; NFC
More cleanup is possible now, but we probably need to resolve the TODO about the existing difference between compares and binops.
|
 | llvm/lib/Transforms/Vectorize/VectorCombine.cpp |
Commit
33bf1196475cbc9b84914c41308cf252764803ee
by francesco.petrogalli[llvm][CodeGen][aarch64] Add contiguous prefetch intrinsics for SVE.
Summary: The patch covers both register/register and register/immediate addressing modes.
Reviewers: efriedma, andwar, sdesmalen
Reviewed By: sdesmalen
Subscribers: sdesmalen, tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74581
|
 | llvm/test/CodeGen/AArch64/sve-intrinsics-contiguous-prefetches.ll |
 | llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp |
 | llvm/include/llvm/IR/IntrinsicsAArch64.td |
 | llvm/lib/Target/AArch64/SVEInstrFormats.td |
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
Commit
446b150065c331daa82a9f5436f4987e340e5d6f
by rnk[IR] Update BasicBlock::validateInstrOrdering comments, NFC
Pointed out by Jay Foad.
|
 | llvm/include/llvm/IR/BasicBlock.h |
 | llvm/lib/IR/BasicBlock.cpp |
Commit
8875ee18d72b1b395331c1b7217d2b91fb4dc4b7
by craig.topper[X86] Add a new format type for instructions that represent named prefix bytes like data16 and rep. Use it to make a simpler version of isPrefix.
isPrefix was added to support the patches to align branches. it relies on a switch over instruction names.
This moves those opcodes to a new format so the information is tablegen and we can just check for a specific value in some bits in TSFlags instead.
I've left the other function in place for now so that the existing patches in phabricator will still work. I'll work with the owner to get them migrated.
|
 | llvm/lib/Target/X86/X86InstrInfo.td |
 | llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h |
 | llvm/utils/TableGen/X86RecognizableInstr.cpp |
 | llvm/utils/TableGen/X86RecognizableInstr.h |
 | llvm/lib/Target/X86/X86InstrSystem.td |
 | llvm/lib/Target/X86/X86InstrTSX.td |
 | llvm/tools/llvm-exegesis/lib/X86/Target.cpp |
 | llvm/lib/Target/X86/X86InstrFormats.td |
 | llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp |
Commit
1874dee5662603c9251228c71b66de72cec0c979
by francisvm[macho][NFC] Extract all CPU_(SUB_)TYPE logic to BinaryFormat
This moves all the logic of converting LLVM Triples to MachO::CPU_(SUB_)TYPE from the specific target (Target)AsmBackend to more convenient functions in lib/BinaryFormat.
This also gets rid of the separate two X86AsmBackend classes.
The previous attempt was to add it to libObject, but that adds an unnecessary dependency to libObject from all the targets.
Differential Revision: https://reviews.llvm.org/D74808
|
 | llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp |
 | llvm/include/llvm/BinaryFormat/MachO.h |
 | llvm/lib/BinaryFormat/CMakeLists.txt |
 | llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp |
 | llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp |
 | llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackendDarwin.h |
 | llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp |
 | llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp |
 | llvm/lib/BinaryFormat/MachO.cpp |
Commit
0bb90628b5f7c170689d2d3f019af773772fc649
by hhbAllow customized relative PYTHONHOME
Summary: This change allows a hard coded relative PYTHONHOME setting. So that python can easily be packaged together with lldb.
The change includes: 1. Extend LLDB_RELOCATABLE_PYTHON to all platforms. It defaults to ON for platforms other than Windows, to keep the behavior compatible. 2. Allows to customize LLDB_PYTHON_HOME. But still defaults to PYTHON_HOME. 3. LLDB_PYTHON_HOME can be a path relative to liblldb. If it is relative, we will resolve it before send it to Py_DecodeLocale.
Subscribers: mgorny, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74727
|
 | lldb/include/lldb/Host/Config.h.cmake |
 | lldb/cmake/modules/LLDBConfig.cmake |
 | lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp |
Commit
8fa776b8ed02f36e6bc072c6748725890dfadcbe
by llvmgnsyncbot[gn build] Port 1874dee5662
|
 | llvm/utils/gn/secondary/llvm/lib/BinaryFormat/BUILD.gn |
Commit
e9c79a7aef19b14e68ed50eb9382856e9453c5a0
by spatel[VectorCombine] refactor to reduce duplicated code; NFC
This should be the last step in the current cleanup. Follow-ups should resolve the TODO about cost calc and enable the more general case where we extract different elements.
|
 | llvm/lib/Transforms/Vectorize/VectorCombine.cpp |
Commit
b72f1448ce42f4e38f0c2a33418089f2320ab8f3
by jay.foadAMDGPU/GlobalISel: Better code for one case of G_SHUFFLE_VECTOR on v2i16
Reviewers: arsenm
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, rovka, dstuttard, tpr, t-tye, hiraditya, kerbowa, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74987
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-shuffle-vector.v2s16.mir |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp |
Commit
a5b22b768f5a6f34c8f41eea6a32880794c1690b
by mcinally[AArch64][SVE] Add support for DestructiveBinary and DestructiveBinaryComm DestructiveInstTypes
Add support for DestructiveBinaryComm DestructiveInstType, as well as the lowering code to expand the new Pseudos into the final movprfx+instruction pairs.
Differential Revision: https://reviews.llvm.org/D73711
|
 | llvm/test/CodeGen/AArch64/O0-pipeline.ll |
 | llvm/test/CodeGen/AArch64/O3-pipeline.ll |
 | llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp |
 | llvm/lib/Target/AArch64/AArch64InstrInfo.cpp |
 | llvm/lib/Target/AArch64/AArch64TargetMachine.cpp |
 | llvm/lib/Target/AArch64/AArch64InstrInfo.h |
 | llvm/lib/Target/AArch64/SVEInstrFormats.td |
 | llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp |
 | llvm/lib/Target/AArch64/AArch64InstrFormats.td |
 | llvm/test/CodeGen/AArch64/sve-intrinsics-fp-arith-merging.ll |
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
Commit
dc046c70de96784772050e2704141c9e2a478220
by alexshap[llvm-objcopy][MachO] Change the storage of sections
In this diff we change the storage of a section to unique_ptr. This refactoring was factored out from D71647.
Test plan: make check-all
Differential revision: https://reviews.llvm.org/D74946
|
 | llvm/tools/llvm-objcopy/MachO/MachOReader.cpp |
 | llvm/tools/llvm-objcopy/MachO/MachOWriter.cpp |
 | llvm/tools/llvm-objcopy/MachO/MachOObjcopy.cpp |
 | llvm/tools/llvm-objcopy/MachO/Object.h |
 | llvm/tools/llvm-objcopy/MachO/MachOLayoutBuilder.cpp |
 | llvm/tools/llvm-objcopy/MachO/Object.cpp |
Commit
1f04d1b7069bf6c513526f36b8c7327c8dec6604
by medismail.bennani[lldb/test] Move `platform process list` tests to its own directory (NFC)
Since the `platform process` commamnd has more tests now, this commits separates each of the `platform process` subcommand's test in its own directory.
Differential Revision: https://reviews.llvm.org/D74836
Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
|
 | lldb/test/API/commands/platform/process/Makefile |
 | lldb/test/API/commands/platform/process/list/TestProcessList.py |
 | lldb/test/API/commands/platform/process/list/main.cpp |
 | lldb/test/API/commands/platform/process/TestProcessList.py |
 | lldb/test/API/commands/platform/process/list/Makefile |
 | lldb/test/API/commands/platform/process/main.cpp |
Commit
d7c403e64043281b9c5883e3e034da5ebaf4985a
by medismail.bennani[lldb/Plugins] Add ability to fetch crash information on crashed processes
Currently, in macOS, when a process crashes, lldb halts inside the implementation disassembly without yielding any useful information. The only way to get more information is to detach from the process, then wait for ReportCrash to generate a report, find the report, then see what error message was included in it. Instead of waiting for this to happen, lldb could locate the error_string and make it available to the user.
This patch addresses this issue by enabling the user to fetch extended crash information for crashed processes using `process status --verbose`.
Depending on the platform, this will try to gather different crash information into an structured data dictionnary. This dictionnary is generic and extensible, as it contains an array for each different type of crash information.
On Darwin Platforms, lldb will iterate over each of the target's images, extract their `__crash_info` section and generated a StructuredData::Array containing, in each entry, the module spec, its UUID, the crash messages and the abort cause. The array will be inserted into the platform's `m_extended_crash_info` dictionnary and `FetchExtendedCrashInformation` will return its JSON representation like this:
``` { "crash-info annotations": [ { "abort-cause": 0, "image": "/usr/lib/system/libsystem_malloc.dylib", "message": "main(76483,0x1000cedc0) malloc: *** error for object 0x1003040a0: pointer being freed was not allocated", "message2": "", "uuid": "5747D0C9-900D-3306-8D70-1E2EA4B7E821" }, ... ], ... } ```
This crash information can also be fetched using the SB API or lldb-rpc protocol using SBTarget::GetExtendedCrashInformation().
rdar://37736535
Differential Revision: https://reviews.llvm.org/D74657
Signed-off-by: Med Ismail Bennani <medismail.bennani@gmail.com>
|
 | lldb/test/API/functionalities/process_crash_info/main.c |
 | lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h |
 | lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp |
 | lldb/source/Commands/CommandObjectProcess.cpp |
 | lldb/include/lldb/API/SBTarget.h |
 | lldb/test/API/functionalities/process_crash_info/TestProcessCrashInfo.py |
 | lldb/include/lldb/Target/Platform.h |
 | lldb/source/Commands/Options.td |
 | lldb/source/API/SBTarget.cpp |
 | lldb/include/lldb/Target/Process.h |
 | lldb/test/API/functionalities/process_crash_info/Makefile |
 | lldb/bindings/interface/SBTarget.i |
Commit
5c33a81b7a46373aa695ab676bec8b70b1abd0e2
by maskray[AArch64][SVE] Fix -Wimplicit-fallthrough after D73711
|
 | llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp |
Commit
a6c8698924d2b31a2f096e0f4c06a7015ecccb5e
by vsapsaiclang/Modules: Finish renaming CompilerInstance::ModuleManager, NFC.
Follow-up to 20d51b2f14ac4488f684f8fc57cb0ba718a6b91d, rename the setter to make it consistent with the getter. Also fixed a few comments along the way, didn't try to find all references to a module manager.
Reviewed By: dexonsmith
Differential Revision: https://reviews.llvm.org/D74939
|
 | clang/lib/Frontend/FrontendAction.cpp |
 | clang/lib/Frontend/CompilerInstance.cpp |
 | clang/include/clang/Frontend/CompilerInstance.h |
 | clang/lib/Frontend/ChainedIncludesSource.cpp |
Commit
0ad6fc9928d8a5e3bd148a112d6e772248e515ae
by spatel[SelectionDAG] remove unused isFast() helper function; NFC
We want flag users to check individual fast-math flags, not that all of them are set. This was also probably not working as intended because NoFPExcept isn't always set on non-strict nodes.
|
 | llvm/include/llvm/CodeGen/SelectionDAGNodes.h |
Commit
fad1c750f16c5f7a7ef8ec7d78ae1df4bc473c4a
by maskray[AArch64][SVE] Fix -DBUILD_SHARED_LIBS=on builds after -D74808/1874dee5662603c9251228c71b66de72cec0c979
|
 | llvm/lib/Target/AArch64/MCTargetDesc/LLVMBuild.txt |
 | llvm/lib/Target/PowerPC/MCTargetDesc/LLVMBuild.txt |
 | llvm/lib/Target/ARM/MCTargetDesc/LLVMBuild.txt |
 | llvm/lib/Target/X86/MCTargetDesc/LLVMBuild.txt |
Commit
fddbff147357a7f5618fb6166b716ad60c3eb9fc
by maskray[AArch64] Delete an unneeded dependency on Object after 1874dee5662603c9251228c71b66de72cec0c979
1874dee5662603c9251228c71b66de72cec0c979 moved CPU_(SUB_)TYPE logic to BinaryFormat. Object is not directly referenced.
|
 | llvm/lib/Target/AArch64/MCTargetDesc/LLVMBuild.txt |
Commit
d37cbda5f9a47a4206439632ef4fa1534e66f856
by sidneym[Hexagon] Define __ELF__ by default.
Differential Revision: https://reviews.llvm.org/D74972
|
 | clang/lib/Basic/Targets/Hexagon.cpp |
 | compiler-rt/lib/builtins/CMakeLists.txt |
 | clang/test/Preprocessor/hexagon-predefines.c |
Commit
0a70edd696264ba69914f4d4ecb28d559cbe5444
by whitneyt[CloneFunction] Update loop headers after cloning all blocks in loop.
Summary: Blocks in a loop can be in any order as long as the loop header is the first block in Blocks. With some order of Blocks, cloneLoopWithPreheader would trigger the assertion in addBasicBlockToLoop.
Example:
define void @test(i64 %N) { preheader.i: br label %header.i
header.i: %i = phi i64 [ 0, %preheader.i ], [ %inc.i, %latch.i ] br label %header.j
header.j: %j = phi i64 [ 0, %header.i ], [ %inc.j, %latch.j ] br label %header.k
header.k: %k = phi i64 [ 0, %header.j ], [ %inc.k, %latch.k ] call void @baz(i64 %i, i64 %j, i64 %k) br label %latch.k
latch.k: %inc.k = add nsw i64 %k, 1 %cmp.k = icmp slt i64 %inc.k, %N br i1 %cmp.k, label %header.k, label %latch.j
latch.j: %inc.j = add nsw i64 %j, 1 %cmp.j = icmp slt i64 %inc.j, %N br i1 %cmp.j, label %header.j, label %latch.i
latch.i: %inc.i = add nsw i64 %i, 1 %cmp.i = icmp slt i64 %inc.i, %N br i1 %cmp.i, label %header.i, label %exit.i
exit.i: ret void } declare void @baz(i64, i64, i64) If the blocks of loop-i is in the order: header.i, latch.k, header.k, header.j, latch.j, latch.i, then cloneLoopWithPreheader would trigger the assertion in addBasicBlockToLoop assert(contains(SameHeader) && getHeader() == SameHeader->getHeader() && "Incorrect LI specified for this loop!");
As latch.k is in both loop-j and loop-k, it would be set as the header of both loops after adding latch.k. If we update loop headers during cloning blocks, then after adding header.k, the header of loop-k would be updated with header.k, while the header of loop-j stays as latch.k.
When adding header.j, SameHeader is loop-k, SameHeader->getHeader() is header.k, but getHeader() is latch.k, which trigger the assertion. Reviewer: jdoerfert, Meinersbur, fhahn, kbarton, hfinkel, bmahjour, etiotto Reviewed By: Meinersbur Subscribers: hiraditya, llvm-commits Tag: LLVM Differential Revision: https://reviews.llvm.org/D74382
|
 | llvm/lib/Transforms/Utils/CloneFunction.cpp |
Commit
9708279c725a515c69c41130aaaa36dc6a0b34d8
by johannes[Attributor][FIX] Undo 16188f9 until SCC iterator bug is fixed
The buildbot http://lab.llvm.org:8011/builders/llvm-clang-x86_64-expensive-checks-win shows some strange SCC iterator bug since 16188f9 which we need to investigate. This patch should remove the part of 16188f9 that could have exposed the problem.
|
 | llvm/lib/Transforms/IPO/Attributor.cpp |
Commit
618dec2aeffd9d7778b581176e0897b10731e273
by qcolombet[GISel][KnownBits] Add a cache mechanism to speed compile time
This patch adds a cache that is valid only for the duration of a call to getKnownBits. With such short lived cache we avoid all the problems of cache invalidation while still getting the benefits of reusing the information we already computed.
This cache is useful whenever an instruction occurs more than once in a chain of computation. E.g., v0 = G_ADD v1, v2 v3 = G_ADD v0, v1
Previously we would compute the known bits for: v1, v2, v0, then v1 again and finally v3.
With the patch, now we won't have to recompute v1 again.
NFC
|
 | llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp |
 | llvm/include/llvm/CodeGen/GlobalISel/GISelKnownBits.h |
Commit
528a6a1d4cceda58d57c28a75a524dcdd8d35f3e
by johannes[Attributor][FIX] Disable a test to unblock the builders
To unblock the builders this disables a test for which the CHECK lines need to be updated. The patch causing the failure was not reverted because it is needed for a different problem we are investigating. Here we just need to update the CHECK lines which will happen in the meantime.
|
 | llvm/test/Transforms/Attributor/liveness.ll |
Commit
a32d539798e4f0b97420e7b60b223b3a3fae5ff1
by francisvm[Target] Remove libObject dependency in lib/Target
This removes a couple useless includes and the dependency of X86Desc on Object, which was useless as well.
|
 | llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.cpp |
 | llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp |
 | llvm/lib/Target/X86/MCTargetDesc/LLVMBuild.txt |
Commit
215a31115f89c851331a822e67aa4528ba5c21e6
by stilisRevert "Allow customized relative PYTHONHOME"
This reverts commit 0bb90628b5f7c170689d2d3f019af773772fc649 since it is causing failures on the Windows LLDB buildbot:
http://lab.llvm.org:8011/builders/lldb-x64-windows-ninja/builds/14048
|
 | lldb/include/lldb/Host/Config.h.cmake |
 | lldb/cmake/modules/LLDBConfig.cmake |
 | lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp |
Commit
393f4e8ac263d0debecb571bbab69bcf31474cdb
by llvm-project[Analysis][Docs] Parents of loops documentation.
Recently I had to use it and although one assumes it returns null if there's no parent loop, I think it helps to doc it.
Reviewed By: Meinersbur
Differential Revision: https://reviews.llvm.org/D74890
|
 | llvm/docs/LoopTerminology.rst |
 | llvm/include/llvm/Analysis/LoopInfo.h |
Commit
26222db01b079023d0fe3bb60f2c1b38f4f19d5a
by riddleriver[mlir][DeclarativeParser] Add support for the TypesMatchWith trait.
This allows for injecting type constraints that are not direct 1-1 mappings, for example when one type is equal to the element type of another. This allows for moving over several more parsers to the declarative form.
Differential Revision: https://reviews.llvm.org/D74648
|
 | mlir/lib/Dialect/StandardOps/IR/Ops.cpp |
 | mlir/include/mlir/IR/OpImplementation.h |
 | mlir/test/IR/invalid-ops.mlir |
 | mlir/include/mlir/IR/OperationSupport.h |
 | mlir/include/mlir/Dialect/VectorOps/VectorOps.td |
 | mlir/lib/Dialect/VectorOps/VectorOps.cpp |
 | mlir/tools/mlir-tblgen/OpFormatGen.cpp |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.td |
Commit
2d0477a003687588886ae6e9b59b9355f8bb6b8c
by riddleriver[mlir][DeclarativeParser] Add basic support for optional groups in the assembly format.
When operations have optional attributes, or optional operands(i.e. empty variadic operands), the assembly format often has an optional section to represent these arguments. This revision adds basic support for defining an "optional group" in the assembly format to support this. An optional group is defined by wrapping a set of elements in `()` followed by `?` and requires the following:
* The first element of the group must be either a literal or an operand argument. - This is because the first element must be optionally parsable. * There must be exactly one argument variable within the group that is marked as the anchor of the group. The anchor is the element whose presence controls whether the group should be printed/parsed. An element is marked as the anchor by adding a trailing `^`. * The group must only contain literals, variables, and type directives. - Any attribute variables may be used, but only optional attributes can be marked as the anchor. - Only variadic, i.e. optional, operand arguments can be used. - The elements of a type directive must be defined within the same optional group.
An example of this can be seen with the assembly format for ReturnOp, which has a variadic number of operands.
``` def ReturnOp : ... { let arguments = (ins Variadic<AnyType>:$operands);
// We only print the operands+types if there are a non-zero number // of operands. let assemblyFormat = "attr-dict ($operands^ `:` type($operands))?"; } ```
Differential Revision: https://reviews.llvm.org/D74681
|
 | mlir/docs/OpDefinitions.md |
 | mlir/test/mlir-tblgen/op-format-spec.td |
 | mlir/tools/mlir-tblgen/OpFormatGen.cpp |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.td |
 | mlir/lib/Dialect/StandardOps/IR/Ops.cpp |
Commit
ca4ea51c0af2dd3f3c73adc587c8e642c9dcdeec
by riddleriver[mlir][DeclarativeParser] Add an 'attr-dict-with-keyword' directive
This matches the '(print|parse)OptionalAttrDictWithKeyword' functionality provided by the assembly parser/printer.
Differential Revision: https://reviews.llvm.org/D74682
|
 | mlir/test/mlir-tblgen/op-format.mlir |
 | mlir/docs/OpDefinitions.md |
 | mlir/test/lib/TestDialect/TestOps.td |
 | mlir/tools/mlir-tblgen/OpFormatGen.cpp |
 | mlir/test/mlir-tblgen/op-format-spec.td |
Commit
93813e5feb18ece7becd1eece24d0138c955fd53
by riddleriver[mlir] Add a utility iterator range that repeats a given value `n` times.
This range is useful when an desired API expects a range or when comparing two different ranges for equality, but the underlying data is a splat. This range removes the need to explicitly construct a vector in those cases.
Differential Revision: https://reviews.llvm.org/D74683
|
 | mlir/include/mlir/Support/STLExtras.h |
Commit
b1de971ba8c83c82ef63077b666aaff3ba8e56b9
by riddleriver[mlir][ODS] Add support for specifying the successors of an operation.
This revision add support in ODS for specifying the successors of an operation. Successors are specified via the `successors` list: ``` let successors = (successor AnySuccessor:$target, AnySuccessor:$otherTarget); ```
Differential Revision: https://reviews.llvm.org/D74783
|
 | mlir/lib/Dialect/SPIRV/SPIRVOps.cpp |
 | mlir/test/lib/TestDialect/TestOps.td |
 | mlir/docs/OpDefinitions.md |
 | mlir/include/mlir/TableGen/Operator.h |
 | mlir/include/mlir/TableGen/Successor.h |
 | mlir/include/mlir/IR/OpBase.td |
 | mlir/test/Dialect/SPIRV/control-flow-ops.mlir |
 | mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td |
 | mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp |
 | mlir/include/mlir/TableGen/Constraint.h |
 | mlir/lib/TableGen/Constraint.cpp |
 | mlir/include/mlir/Dialect/SPIRV/SPIRVControlFlowOps.td |
 | mlir/lib/TableGen/Operator.cpp |
 | mlir/lib/TableGen/CMakeLists.txt |
 | mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td |
 | mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.td |
 | mlir/lib/TableGen/Successor.cpp |
Commit
9eb436feaa7f5f01dc4852396647a5b46311c8eb
by riddleriver[mlir][DeclarativeParser] Add support for formatting the successors of an operation.
This revision add support for formatting successor variables in a similar way to operands, attributes, etc.
Differential Revision: https://reviews.llvm.org/D74789
|
 | mlir/docs/OpDefinitions.md |
 | mlir/lib/Parser/Parser.cpp |
 | mlir/test/mlir-tblgen/op-format-spec.td |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.td |
 | mlir/test/Dialect/SPIRV/control-flow-ops.mlir |
 | mlir/test/lib/TestDialect/TestOps.td |
 | mlir/include/mlir/IR/OpImplementation.h |
 | mlir/lib/Dialect/StandardOps/IR/Ops.cpp |
 | mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td |
 | mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp |
 | mlir/include/mlir/Dialect/SPIRV/SPIRVControlFlowOps.td |
 | mlir/test/IR/invalid.mlir |
 | mlir/lib/Dialect/SPIRV/SPIRVOps.cpp |
 | mlir/tools/mlir-tblgen/OpFormatGen.cpp |
 | mlir/test/mlir-tblgen/op-format.mlir |
Commit
0050e8f0cf5782217ebd78fa2b58be3aa9f8d9e2
by riddleriver[mlir][Tutorial] Add a section to Toy Ch.2 detailing the custom assembly format.
Summary: This details the C++ format as well as the new declarative format. This has been one of the major missing pieces from the toy tutorial.
Differential Revision: https://reviews.llvm.org/D74938
|
 | mlir/docs/Tutorials/Toy/Ch-3.md |
 | mlir/docs/Tutorials/Toy/Ch-6.md |
 | mlir/test/Examples/Toy/Ch7/affine-lowering.mlir |
 | mlir/examples/toy/Ch7/mlir/Dialect.cpp |
 | mlir/examples/toy/Ch3/include/toy/Ops.td |
 | mlir/test/Examples/Toy/Ch7/shape_inference.mlir |
 | mlir/examples/toy/Ch4/mlir/Dialect.cpp |
 | mlir/docs/Tutorials/Toy/Ch-4.md |
 | mlir/docs/Tutorials/Toy/Ch-5.md |
 | mlir/examples/toy/Ch2/mlir/Dialect.cpp |
 | mlir/test/Examples/Toy/Ch6/scalar.toy |
 | mlir/test/Examples/Toy/Ch6/affine-lowering.mlir |
 | mlir/examples/toy/Ch6/mlir/Dialect.cpp |
 | mlir/examples/toy/Ch2/include/toy/Ops.td |
 | mlir/test/Examples/Toy/Ch5/shape_inference.mlir |
 | mlir/docs/Tutorials/Toy/Ch-7.md |
 | mlir/examples/toy/Ch3/mlir/Dialect.cpp |
 | mlir/test/Examples/Toy/Ch7/scalar.toy |
 | mlir/test/Examples/Toy/Ch5/codegen.toy |
 | mlir/test/Examples/Toy/Ch6/shape_inference.mlir |
 | mlir/test/Examples/Toy/Ch4/shape_inference.mlir |
 | mlir/test/Examples/Toy/Ch4/codegen.toy |
 | mlir/test/Examples/Toy/Ch3/scalar.toy |
 | mlir/examples/toy/Ch5/include/toy/Ops.td |
 | mlir/examples/toy/Ch6/include/toy/Ops.td |
 | mlir/test/Examples/Toy/Ch6/llvm-lowering.mlir |
 | mlir/docs/Tutorials/Toy/Ch-2.md |
 | mlir/test/Examples/Toy/Ch7/struct-opt.mlir |
 | mlir/examples/toy/Ch4/include/toy/Ops.td |
 | mlir/test/Examples/Toy/Ch2/scalar.toy |
 | mlir/test/Examples/Toy/Ch2/codegen.toy |
 | mlir/test/Examples/Toy/Ch3/codegen.toy |
 | mlir/test/Examples/Toy/Ch4/scalar.toy |
 | mlir/examples/toy/Ch7/include/toy/Ops.td |
 | mlir/test/Examples/Toy/Ch5/scalar.toy |
 | mlir/test/Examples/Toy/Ch7/struct-codegen.toy |
 | mlir/test/Examples/Toy/Ch7/llvm-lowering.mlir |
 | mlir/examples/toy/Ch5/mlir/Dialect.cpp |
 | mlir/test/Examples/Toy/Ch5/affine-lowering.mlir |
 | mlir/test/Examples/Toy/Ch6/codegen.toy |
 | mlir/test/Examples/Toy/Ch7/codegen.toy |
Commit
266877a2a8b2d1939f3b08fcfb711890fefc96e3
by rupprecht[llvm-objdump] Print method name from debug info in disassembly output.
Summary: GNU objdump prints the method name in disassembly output, and upon further investigation this seems to come from debug info, not the symbol table.
Some additional refactoring is necessary to make this work even when the line number is 0/the filename is unknown. The added test case includes a note for this scenario.
See http://llvm.org/PR41341 for more info.
Reviewers: dblaikie, MaskRay, jhenderson
Reviewed By: MaskRay
Subscribers: ormris, jvesely, aprantl, kerbowa, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74507
|
 | llvm/test/tools/llvm-objdump/Hexagon/source-interleave-hexagon.ll |
 | llvm/test/tools/llvm-objdump/X86/source-interleave-x86_64.test |
 | llvm/test/tools/llvm-objdump/AMDGPU/source-lines.ll |
 | llvm/test/tools/llvm-objdump/embedded-source.test |
 | llvm/tools/llvm-objdump/llvm-objdump.cpp |
 | llvm/test/tools/llvm-objdump/X86/source-interleave-function-from-debug.test |
Commit
75af9da755721123e62b45cd0bc0c5e688a9722a
by maskray[MC][ELF] Error for sh_type, sh_flags or sh_entsize change
Heads-up message: https://lists.llvm.org/pipermail/llvm-dev/2020-February/139390.html
GNU as started to emit warnings for changed sh_type or sh_flags in 2000. GNU as>=2.35 will emit errors for most sh_type/sh_flags change, and error for entsize change.
Some cases remain warnings for legacy reasons:
.section .init_array,"ax", @progbits .section .init_array,"ax", @init_array # And some obscure sh_flags changes (OS/Processor specific flags)
The rationale of a diagnostic (warning or error) is that sh_type, sh_flags or sh_entsize changes usually indicate user errors. The values are taken from the first .section directive. Successive directives are ignored.
We just try to be rigid and emit errors for all sh_type/sh_flags/sh_entsize change.
A possible improvement in the future is to reuse llvm-readobj/ELFDumper.cpp:getSectionTypeString so that we can name the type in the diagnostics.
Reviewed By: psmith
Differential Revision: https://reviews.llvm.org/D73999
|
 | llvm/test/MC/ELF/section-type-changed.s |
 | llvm/test/MC/ELF/section-flags-changed.s |
 | llvm/test/MC/ELF/section-entsize-changed.s |
 | llvm/lib/MC/MCParser/ELFAsmParser.cpp |
 | llvm/test/MC/ELF/exclude-debug-dwo.s |
Commit
8a0f0e2656abf76b771037c6543caf9a31744120
by Vedant Kumar[lldb/test] Tweak libcxx string test on Apple+ARM devices
On Apple platforms, is __arm__ isn't defined and we're not on Intel, we use an alternate std::string layout. I.e., the libcxx string test fails on phones because the hand-crafted "garbage" string structs are actually valid strings.
See:
``` // _LIBCPP_ALTERNATE_STRING_LAYOUT is an old name for // _LIBCPP_ABI_ALTERNATE_STRING_LAYOUT left here for backward compatibility. #if (defined(__APPLE__) && !defined(__i386__) && !defined(__x86_64__) && \ (!defined(__arm__) || __ARM_ARCH_7K__ >= 2)) || \ defined(_LIBCPP_ALTERNATE_STRING_LAYOUT) #define _LIBCPP_ABI_ALTERNATE_STRING_LAYOUT #endif ```
Disable inspection of the garbage structs on Apple+ARM devices.
|
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string/TestDataFormatterLibcxxString.py |
Commit
d3e170c4388693b6628fa91cbf78506a5fb45439
by mark.searlesRevert "[AMDGPU] Don’t marke the .note section as ALLOC"
This reverts commit 977cd661cf019039dec7ffdd15bf0ac500828c87.
It breaks OpenCL testing. OpenCL Runtime is using PT_LOAD information to calculate memory for global variables. This commit should be relanded once the OpenCL runtime stops relying on PT_LOAD information for calculating global variable memory size.
Differential Revision: https://reviews.llvm.org/D74995
|
 | llvm/test/CodeGen/AMDGPU/hsa.ll |
 | llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp |
Commit
42060c0a987076567814f97abdf485a55bf6018a
by riddleriver[mlir][DeclarativeParser][NFC] Use explicit type names in TypeSwitch to appease older GCC.
Older versions of GCC are unable to properly capture 'this' in template lambdas, resulting in errors.
|
 | mlir/tools/mlir-tblgen/OpFormatGen.cpp |
Commit
340feac6721e840f88c1e77dd79931eea5eaccf3
by scott.linder[Driver] Escape the program path for -frecord-command-line
Similar to the rest of the command line that is recorded, the program path must also have spaces and backslashes escaped. Without this parsing the recorded command line becomes hard on platforms like Windows where spaces and backslashes are common.
This was originally reverted in 577d9ce35532439203411c999deefc9c80e04c69; this version makes a test agnostic to the presence of backslashes in paths on some platforms.
Patch By: Ravi Ramaseshan Differential Revision: https://reviews.llvm.org/D74811
|
 | clang/test/Driver/clang_f_opts.c |
 | clang/lib/Driver/ToolChains/Clang.cpp |
Commit
bf4933b4ea657128f1afcf19758866d41e5aebf9
by arsenm2AMDGPU/GlobalISel: Remove dead code
|
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h |
 | llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp |
Commit
3ec3f62f0a0b1ac13230922c91ffc988c1b1e8d5
by hhbAllow customized relative PYTHONHOME (Attemp 1)
Summary: This is another attempt of 0bb90628b5f7c170689d2d3f019af773772fc649.
The difference is that g_python_home is not declared as const. Since some versions of python do not expect that.
Subscribers: mgorny, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74998
|
 | lldb/include/lldb/Host/Config.h.cmake |
 | lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp |
 | lldb/cmake/modules/LLDBConfig.cmake |
Commit
d17123b2577e610b2a19de1f530cecea353c8c7a
by maskray[llvm-objdump][test] Fix source-interleave-function-from-debug.test on Windows after D74507
|
 | llvm/test/tools/llvm-objdump/X86/source-interleave-function-from-debug.test |
Commit
3648370a79235ddc7a26c2db5b968725c320f6aa
by aheejin[WebAssembly] Fix a non-determinism problem in FixIrreducibleControlFlow
Summary: We already sorted the blocks when fixing up a set of mutual loop entries, however, there can be multiple sets of such mutual loop entries, and the order we encounter them should not be random, so sort them too.
Fixes https://bugs.llvm.org/show_bug.cgi?id=44982
Patch by Alon Zakai (kripken)
Reviewers: aheejin, sbc100, dschuff
Subscribers: mgrang, sunfish, hiraditya, jgravelle-google, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74999
|
 | llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp |
Commit
e33c9bb245a0c17cdd5c06897a911f908215db50
by apilipenkoFlags for displaying only hot nodes in CFGPrinter graph
Added two flags to omit uncommon or dead paths in the CFG graphs: -cfg-hide-unreachable-paths -cfg-hide-deoptimize-paths
The main purpose is performance analysis when such block are not "interesting" from perspective of common path performance.
Reviewed By: apilipenko, davidxl
Differential Revision: https://reviews.llvm.org/D74346
|
 | llvm/test/Other/cfg_deopt_unreach.ll |
 | llvm/lib/Analysis/CFGPrinter.cpp |
 | llvm/include/llvm/Analysis/CFGPrinter.h |
Commit
ebee131259719fa9c06cd346e21ace3fa8ac0888
by maskray[lldb][test] Fix sh_type of .debug_cu_index and .debug_tu_index
They do not have the SHF_EXCLUDE flag. After D73999, MC errors `changed section type for .debug_cu_index, expected: 0x0`
|
 | lldb/test/Shell/SymbolFile/DWARF/dwp-debug-types.s |
 | lldb/test/Shell/SymbolFile/DWARF/dwp.s |
Commit
1b1a97e9b55754302c4b41f6bddc8fbc3870f68a
by alexbrachetmialotRemove unused variable
|
 | libc/src/signal/linux/raise.cpp |
Commit
228a2bc9b70c3d93bd28f0038a8664ef8dac042e
by craig.topper[X86] Teach combineCVTPH2PS to shrink v8i16 loads when the output type is v4f32. Remove extra isel patterns.
Similar to what do for other operations that use a subset of bits. Allows us to remove a pattern that shrinks a load. Which was incorrect if the load was volatile.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/lib/Target/X86/X86InstrSSE.td |
 | llvm/lib/Target/X86/X86InstrAVX512.td |
Commit
e29065a105342a904871437d18a4e6fab09e5bc1
by maskray[lldb][test] Fix sh_flags and sh_entsize of .debug_str.dwo
sh_flags: SHF_MERGE | SHF_STRINGS | SHF_EXCLUDE sh_entsize: 1
Incorrect sh_flags or sh_entsize is an error after the assembler change made by D73999.
|
 | lldb/test/Shell/SymbolFile/DWARF/dwp.s |
Commit
a4f45ee73a9e948622488f874d5e01408dffba2a
by paulatoth[libc] Lay out framework for fuzzing libc functions.
Summary: Added fuzzing test for strcpy and some documentation related to fuzzing. This will be the first step in integrating this with oss-fuzz.
Reviewers: sivachandra, abrachet
Reviewed By: sivachandra, abrachet
Subscribers: gchatelet, abrachet, mgorny, MaskRay, tschuett, libc-commits
Tags: #libc-project
Differential Revision: https://reviews.llvm.org/D74091
|
 | libc/fuzzing/string/CMakeLists.txt |
 | libc/CMakeLists.txt |
 | libc/fuzzing/CMakeLists.txt |
 | libc/cmake/modules/LLVMLibCRules.cmake |
 | libc/docs/fuzzing.rst |
 | libc/docs/source_layout.rst |
 | libc/fuzzing/string/strcpy_fuzz.cpp |
Commit
b6d63c92ec37a4416009c3bd279561421429c396
by qcolombet[GISel][KnownBits] Suppress unused warning on the dump method
NFC
|
 | llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp |
Commit
59a572eb742437c17b78f6cf63f14d4b808fe61f
by maskray[Preprocessor][test] Move AArch64 tests from init.c to init-aarch.c
|
 | clang/test/Preprocessor/init.c |
 | clang/test/Preprocessor/init-aarch64.c |
 | clang/test/Preprocessor/aarch64-target-features.c |
Commit
0123744d46a1fd6041755b403633af2d6c47f64a
by maskray[Preprocessor][test] Fix __VERSION__ in init-aarch64.c
|
 | clang/test/Preprocessor/init-aarch64.c |
Commit
fc6057e34fb3b1cfbbfcd5d71ae25ba24eb3ffa3
by maskray[Frontend] Replace CC1 option -mcode-model with -mcmodel=
Before:
% clang -mcmodel=x -xc /dev/null error: invalid argument 'x' in '-mcode-model x'
Now:
% clang -mcmodel=x -xc /dev/null clang-11: error: invalid argument 'x' to -mcmodel=
|
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | clang/test/Driver/mcmodel.c |
 | clang/test/CodeGen/codemodels.c |
 | clang/lib/Driver/ToolChains/Clang.cpp |
 | clang/include/clang/Driver/Options.td |
 | clang/include/clang/Driver/CC1Options.td |
 | llvm/docs/Extensions.rst |
 | clang/test/Driver/code-model.c |
Commit
d2e949eed5b49ca70a8845dfaf7bac6ca40c429d
by maskray[AArch64] Predefine __AARCH64_CMODEL_*__ as GCC does
Make Clang on aarch64 targets predefine `__AARCH64_CMODEL_SMALL__` or `__AARCH64_CMODEL_TINY__`, etc. These are the names that GCC uses for its predefines.
Reviewed By: tamur, MaskRay
Differential Revision: https://reviews.llvm.org/D75002
|
 | clang/test/Preprocessor/init-aarch64.c |
 | clang/lib/Basic/Targets/AArch64.cpp |
Commit
271f96477328f42cbf31a2b42433cdef8ed91914
by maskray[Preprocessor][X86] Fix __code_model_*__ predefine macros
GCC defines __code_model_*__ (two trailing underscores), not __code_model_*_ (one trailing underscore).
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D75003
|
 | clang/test/Preprocessor/init.c |
 | clang/lib/Basic/Targets/X86.cpp |
Commit
d192a4ab2b8c0f80efcb006a4b200ad3ba73d485
by sgueltonUpdate Quantization.md
Various typographic, grammatical and formatting edits and tidy ups.
|
 | mlir/docs/Quantization.md |
Commit
453cd2dbe57bce945c9d9a2bbf43677252b53597
by sgueltonUpdate ShapeInference.md
Variety of editorial and typographic and formatting tweaks.
|
 | mlir/docs/ShapeInference.md |
Commit
635034f19387427e7df60efb985d2de7766a1e58
by simon.moll[VE][fix] missing include
|
 | llvm/lib/Target/VE/MCTargetDesc/VEMCExpr.cpp |
Commit
31f2ad9c368d47721508cbd0d120d626f9041715
by grimar[yaml2obj] - Automatically assign sh_addr for allocatable sections.
I've noticed that it is not convenient to create YAMLs from binaries (using obj2yaml) that have to be test cases for obj2yaml later (after applying yaml2obj).
The problem, for example is that obj2yaml emits "DynamicSymbols:" key instead of .dynsym. It also does not create .dynstr. And when a YAML document without explicitly defined .dynsym/.dynstr is given to yaml2obj, we have issues:
1) These sections are placed after non-allocatable sections (I've fixed it in D74756). 2) They have VA == 0. User needs create descriptions for such sections explicitly manually to set a VA.
This patch addresses (2). I suggest to let yaml2obj assign virtual addresses by itself. It makes an output binary to be much closer to "normal" ELF. (It is still possible to use "Address: 0x0" for a section to get the original behavior if it is needed)
Differential revision: https://reviews.llvm.org/D74764
|
 | llvm/include/llvm/ObjectYAML/ELFYAML.h |
 | llvm/test/tools/llvm-readobj/ELF/verneed-invalid.test |
 | llvm/lib/ObjectYAML/ELFYAML.cpp |
 | llvm/tools/obj2yaml/elf2yaml.cpp |
 | llvm/test/tools/llvm-objcopy/ELF/only-keep-debug.test |
 | llvm/test/tools/llvm-readobj/ELF/versioninfo.test |
 | llvm/lib/ObjectYAML/ELFEmitter.cpp |
 | llvm/test/tools/yaml2obj/ELF/section-address-assign.yaml |
 | llvm/test/tools/obj2yaml/elf-gnu-hash-section.yaml |
Commit
a6370d5798313e99d37fb85db5d78f1141506864
by grimar[lldb][test] - Update basic-elf.yaml to fix build bot.
D74764 (https://reviews.llvm.org/rG31f2ad9c368d47721508cbd0d120d626f9041715) changed the behavior of the yaml2obj. Now it assigns virtual addresses for allocatable sections.
SymbolFile/Breakpad/symtab.test started to fail after this change: (http://lab.llvm.org:8011/builders/lldb-x86_64-debian/builds/5520/steps/test/logs/stdio)
Command Output (stderr): -- /home/worker/lldb-x86_64-debian/lldb-x86_64-debian/llvm-project/lldb/test/Shell/SymbolFile/Breakpad/symtab.test:6:10: error: CHECK: expected string not found in input # CHECK: Symtab, file = {{.*}}symtab.out, num_symbols = 5: ^ <stdin>:15:1: note: scanning from here Symtab, file = /home/worker/lldb-x86_64-debian/lldb-x86_64-debian/build/tools/lldb/test/SymbolFile/Breakpad/Output/symtab.out, num_symbols = 6: ^ <stdin>:15:99: note: possible intended match here Symtab, file = /home/worker/lldb-x86_64-debian/lldb-x86_64-debian/build/tools/lldb/test/SymbolFile/Breakpad/Output/symtab.out, num_symbols = 6:
For now I've updated the basic-elf.yaml so that now it produce the same layout as before D74764. Breakpad/symtab.test should be updated it seems.
|
 | lldb/test/Shell/SymbolFile/Breakpad/Inputs/basic-elf.yaml |
Commit
837d8129e916765123f83f47ce380ff436191f6e
by tyker[NFC] Remove some GCC warning from c9e93c84f61400d1aac7d195a0578e80bc48c69a
|
 | llvm/unittests/Transforms/Utils/KnowledgeRetentionTest.cpp |
 | llvm/lib/Transforms/Utils/KnowledgeRetention.cpp |
Commit
e48849a2404128175df25168f961a83d6c0a901e
by bion[libcxx] [test] Suppress MSVC++ warning 4640 under /Zc:threadSafeInit-
|
 | libcxx/test/support/type_id.h |
 | libcxx/test/support/count_new.h |
Commit
7b44f0428af4000372af5f016995c032a959d17e
by iAdd a llvm::shuffle and use it in lld
With this --shuffle-sections=seed produces the same result in every host.
Reviewed By: grimar, MaskRay
Differential Revision: https://reviews.llvm.org/D74971
|
 | lld/ELF/Writer.cpp |
 | llvm/include/llvm/ADT/STLExtras.h |
 | lld/test/ELF/shuffle-sections.s |
 | lld/test/ELF/shuffle-sections-init-fini.s |
Commit
56eb15a1c71061043d50aa669407816bc08dfb5d
by koraq[Sema] Fix pointer-to-int-cast diagnostic for _Bool
The diagnostic added in D72231 also shows a diagnostic when casting to a _Bool. This is unwanted. This patch removes the diagnostic for _Bool types.
Differential Revision: https://reviews.llvm.org/D74860
|
 | clang/test/SemaCXX/cstyle-cast.cpp |
 | clang/test/Sema/MicrosoftExtensions.c |
 | clang/lib/Sema/SemaCast.cpp |
 | clang/test/Sema/cast.c |
Commit
81726894d3c8af556eb86007c8c26d7e2d9639f3
by Lang Hames[ORC] Add errors for missing and extraneous symbol definitions.
This patch adds new errors and error checking to the ObjectLinkingLayer to catch cases where a compiled or loaded object either: (1) Contains definitions not covered by its responsibility set, or (2) Is missing definitions that are covered by its responsibility set.
Proir to this patch providing the correct set of definitions was treated as an API contract requirement, however this requires that the client be confident in the correctness of the whole compiler / object-cache pipeline and results in difficult-to-debug assertions upon failure. Treating this as a recoverable error results in clearer diagnostics.
The performance overhead of this check is one comparison of densemap keys (symbol string pointers) per linking object, which is minimal. If this overhead ever becomes a problem we can add the check under a flag that can be turned off if the client fully trusts the rest of the pipeline.
|
 | llvm/lib/ExecutionEngine/OrcError/OrcError.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/OrcError.h |
 | llvm/include/llvm/ExecutionEngine/Orc/Core.h |
 | llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp |
 | llvm/lib/ExecutionEngine/Orc/Core.cpp |
Commit
1df947ab403a9ec3bb1bf4cd83610a997dc4f3bc
by Lang Hames[ORC] Update LLJIT to automatically run specially named initializer functions.
The GenericLLVMIRPlatformSupport class runs a transform on all LLVM IR added to the LLJIT instance to replace instances of llvm.global_ctors with a specially named function that runs the corresponing static initializers (See (GlobalCtorDtorScraper from lib/ExecutionEngine/Orc/LLJIT.cpp). This patch updates the GenericIRPlatform class to check for this specially named function in other materialization units that are added to the JIT and, if found, add the function to the initializer work queue. Doing this allows object files that were compiled from IR and cached to be reloaded in subsequent JIT sessions without their initializers being skipped.
To enable testing this patch also updates the lli tool's -jit-kind=orc-lazy mode to respect the -enable-cache-manager and -object-cache-dir options, and modifies the CompileOnDemandLayer to rename extracted submodules to include a hash of the names of their symbol definitions. This allows a simple object caching scheme based on module names (which was already implemented in lli) to work with the lazy JIT.
|
 | llvm/lib/ExecutionEngine/Orc/LLJIT.cpp |
 | llvm/tools/lli/lli.cpp |
 | llvm/test/ExecutionEngine/OrcLazy/static-initializers-in-objectfiles.ll |
 | llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp |
Commit
e7a184fc7c044b883ab782fa05e56f873050bd72
by craig.topper[X86] Use movlps for i64 atomic stores on 32-targets with sse1.
This is similar to using movd which we do for sse2 targets.
I've added a DAG combine for VEXTRACT_STORE to use SimplifyDemandedVectorElts to clean up some artifacts from type legalization.
|
 | llvm/test/CodeGen/X86/atomic-non-integer.ll |
 | llvm/test/CodeGen/X86/atomic-fp.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
bdb1729c8347c2b7d932976f8588e524b4f7b8d5
by craig.topper[X86] Teach EltsFromConsecutiveLoads that it's ok to form a v4f32 VZEXT_LOAD with a 64 bit memory size on SSE1 targets.
We can use MOVLPS which will load 64 bits, but we need a v4f32 result type. We already have isel patterns for this.
The code here is a little hacky. We can probably improve it with more isel patterns.
|
 | llvm/test/CodeGen/X86/merge-consecutive-loads-128.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/atomic-fp.ll |
 | llvm/test/CodeGen/X86/atomic-non-integer.ll |
Commit
84cd968f75bbd6e0fbabecc29d2c1090263adec7
by craig.topper[X86] Add AddToWorklist(N) after calls to SimplifyDemandedBits/SimplifyDemandedVectorElts that are called on an operand of N.
If a simplication occurs the operand will be added to the worklist. But since the demanded mask was based on N, we need to make sure we revisit N in case there are more simplifications to be done. Returning SDValue(N, 0) as we do, only tells DAG combine that something changed, but that won't make it add anything to the worklist.
Found while playing around with using VEXTRACT_STORE in more cases. But I guess this doesn't affect any of our existing tests.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
57923617181b0181e8d5c2f2e940a94a82737c7c
by craig.topper[X86] Add sse2 command lines to sse-intrinsics-fast-isel.ll.
The extra available vector types on sse2 causes us to produce different code.
|
 | llvm/test/CodeGen/X86/sse-intrinsics-fast-isel.ll |
Commit
21316f6f928301fb7b4fb1cbd8836cdbbcc62b41
by khalikov.denis[NFC] Test commit access. Drop trivial braces.
|
 | mlir/tools/mlir-vulkan-runner/VulkanRuntime.cpp |
Commit
98ac6e76960aec89ac5094702d124678e8524afa
by nunoplopes[NFC] fix test nan value
|
 | llvm/test/Transforms/InstCombine/fneg.ll |
Commit
7d3f8b1e2dcda99b245a9e3a254090aa1b5cfd66
by sam.mccall[clangd] Debounce rebuilds responsively to rebuild times.
Summary: Old: 500ms always. New: rebuild time, up to 500ms.
Fixes https://github.com/clangd/clangd/issues/275
Reviewers: hokein
Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D73949
|
 | clang-tools-extra/clangd/ClangdServer.h |
Commit
a2ce807eb72a8e154abca09b1e968b2d99ba6933
by sam.mccall[clangd] Reapply b60896fad926 Fall back to selecting token-before-cursor if token-after-cursor fails.
This reverts commit 6af1ad20d60ef8ea23f2cfdb02d299b3b3114b06.
|
 | clang-tools-extra/clangd/Selection.cpp |
 | clang-tools-extra/clangd/refactor/Tweak.cpp |
 | clang-tools-extra/clangd/unittests/HoverTests.cpp |
 | clang-tools-extra/clangd/unittests/TweakTests.cpp |
 | clang-tools-extra/clangd/XRefs.cpp |
 | clang-tools-extra/clangd/refactor/Rename.cpp |
 | clang-tools-extra/clangd/ClangdServer.cpp |
 | clang-tools-extra/clangd/refactor/Tweak.h |
 | clang-tools-extra/clangd/SemanticSelection.cpp |
 | clang-tools-extra/clangd/unittests/SelectionTests.cpp |
 | clang-tools-extra/clangd/Hover.cpp |
 | clang-tools-extra/clangd/unittests/TweakTesting.cpp |
 | clang-tools-extra/clangd/Selection.h |
 | clang-tools-extra/clangd/unittests/FindTargetTests.cpp |
Commit
b4b9706d5da368c81b86867b1c11a2e17b4472ac
by sam.mccallRevert "[clangd] Reapply b60896fad926 Fall back to selecting token-before-cursor if token-after-cursor fails."
This reverts commit a2ce807eb72a8e154abca09b1e968b2d99ba6933.
Buildbot failures on GCC due to SelectionTree not being copyable, and instantiating vector<Selection> in the tweak-handling in ClangdServer.
|
 | clang-tools-extra/clangd/unittests/FindTargetTests.cpp |
 | clang-tools-extra/clangd/refactor/Tweak.cpp |
 | clang-tools-extra/clangd/Hover.cpp |
 | clang-tools-extra/clangd/unittests/TweakTests.cpp |
 | clang-tools-extra/clangd/Selection.cpp |
 | clang-tools-extra/clangd/Selection.h |
 | clang-tools-extra/clangd/unittests/HoverTests.cpp |
 | clang-tools-extra/clangd/refactor/Rename.cpp |
 | clang-tools-extra/clangd/ClangdServer.cpp |
 | clang-tools-extra/clangd/refactor/Tweak.h |
 | clang-tools-extra/clangd/XRefs.cpp |
 | clang-tools-extra/clangd/unittests/TweakTesting.cpp |
 | clang-tools-extra/clangd/unittests/SelectionTests.cpp |
 | clang-tools-extra/clangd/SemanticSelection.cpp |
Commit
af69d5e10eb7bef52521fc052795690598040dc7
by flo[DSE] Track overlapping stores.
Add a map from BasicBlocks to overlap intervals. For partial writes, we can keep track of those in IOLs. We only add candidates that are valid for eliminations.
Reviewers: dmgreen, bryant, asbirlea, Tyker
Reviewed By: asbirlea
Differential Revision: https://reviews.llvm.org/D73757
|
 | llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-memintrinsics.ll |
 | llvm/test/Transforms/DeadStoreElimination/MSSA/memset-missing-debugloc.ll |
 | llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-loops.ll |
 | llvm/test/Transforms/DeadStoreElimination/MSSA/OverwriteStoreEnd.ll |
 | llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp |
 | llvm/test/Transforms/DeadStoreElimination/MSSA/OverwriteStoreBegin.ll |
Commit
a253a2a793cda34d1f6421ee9b7ca76a03fdfc59
by spatel[SDAG] fold fsub -0.0, undef to undef rather than NaN
A question about this behavior came up on llvm-dev: http://lists.llvm.org/pipermail/llvm-dev/2020-February/139003.html ...and as part of backend improvements in D73978.
We decided not to implement a more general change that would have folded any FP binop with nearly arbitrary constant + undef operand to undef because that is not theoretically correct (even if it is practically correct).
This is the SDAG-equivalent to the IR change in D74713.
|
 | llvm/test/CodeGen/X86/vec_fneg.ll |
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp |
Commit
31059ba5eb12ccbf18c957e76318306474af6166
by craig.topper[X86] Regenerate some tests to show FMA4 comments. NFC
|
 | llvm/test/CodeGen/X86/recip-fastmath.ll |
 | llvm/test/CodeGen/X86/recip-fastmath2.ll |
Commit
7769030b9310c1865fd331edb78dc242a39b109a
by floRecommit "[PatternMatch] Match XOR variant of unsigned-add overflow check."
This version fixes a buildbot failure cause by picking the wrong insert point for XORs. We cannot pick the XOR binary operator as insert point, as it is not guaranteed that both input operands for the overflow intrinsic are defined before it.
This reverts the revert commit c7fc0e5da6c3c36eb5f3a874a6cdeaedb26856e0.
|
 | llvm/test/Transforms/CodeGenPrepare/AArch64/overflow-intrinsics.ll |
 | llvm/test/CodeGen/X86/sat-add.ll |
 | llvm/include/llvm/IR/PatternMatch.h |
 | llvm/lib/CodeGen/CodeGenPrepare.cpp |
 | llvm/test/CodeGen/AArch64/sat-add.ll |
 | llvm/test/Transforms/CodeGenPrepare/X86/overflow-intrinsics.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp |
Commit
335e21f9006912ce547125fc406a0441a82e8c5d
by flo[AArch64] Update new test.
Changed after 7769030b9310c1865fd331edb78dc242a39b109a.
|
 | llvm/test/CodeGen/AArch64/sat-add.ll |
Commit
be6d07c9208e70e6453201f52e9b10dc3524abb9
by sam.mccall[clangd] Reapply b60896fad926 Fall back to selecting token-before-cursor if token-after-cursor fails.
This reverts commit b4b9706d5da368c81b86867b1c11a2e17b4472ac. Now avoiding expected<vector<selection>> in favor of expected<vector<unique_ptr<selection>>>
|
 | clang-tools-extra/clangd/XRefs.cpp |
 | clang-tools-extra/clangd/unittests/FindTargetTests.cpp |
 | clang-tools-extra/clangd/Selection.h |
 | clang-tools-extra/clangd/unittests/SelectionTests.cpp |
 | clang-tools-extra/clangd/Selection.cpp |
 | clang-tools-extra/clangd/unittests/TweakTests.cpp |
 | clang-tools-extra/clangd/Hover.cpp |
 | clang-tools-extra/clangd/SemanticSelection.cpp |
 | clang-tools-extra/clangd/ClangdServer.cpp |
 | clang-tools-extra/clangd/unittests/HoverTests.cpp |
 | clang-tools-extra/clangd/refactor/Rename.cpp |
 | clang-tools-extra/clangd/unittests/TweakTesting.cpp |
 | clang-tools-extra/clangd/refactor/Tweak.cpp |
 | clang-tools-extra/clangd/refactor/Tweak.h |
Commit
86cda4c50da4fe31771f866071c8516199c7c2b0
by aaronUpdating a comment to clarify that SkipUntil handles balanced delimiters.
|
 | clang/include/clang/Parse/Parser.h |
Commit
e9997cfb4d44e93cc65a29d1e1bb7451f418a7c7
by sam.mccall[clangd] Try to fix buildbots - copy elision not happening here?
|
 | clang-tools-extra/clangd/ClangdServer.cpp |
Commit
82879c2913da69ef2deadee9d075140a84eb6e8c
by paulsson[SystemZ] Support the kernel back chain.
In order to build the Linux kernel, the back chain must be supported with packed-stack. The back chain is then stored topmost in the register save area.
Review: Ulrich Weigand
Differential Revision: https://reviews.llvm.org/D74506
|
 | clang/test/Driver/mbackchain.c |
 | llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp |
 | llvm/lib/Target/SystemZ/SystemZFrameLowering.h |
 | llvm/test/CodeGen/SystemZ/frame-23.ll |
 | llvm/test/CodeGen/SystemZ/frame-24.ll |
 | llvm/test/CodeGen/SystemZ/frameaddr-02.ll |
 | llvm/lib/Target/SystemZ/SystemZISelLowering.cpp |
 | clang/lib/Driver/ToolChains/Clang.cpp |
Commit
2a10f8019dd9525c91d1f2f74538c83edfc16bee
by craig.topper[X86] Use FIST for i64 atomic stores on 32-bit targets without SSE.
|
 | llvm/test/CodeGen/X86/atomic-fp.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/atomic-load-store-wide.ll |
 | llvm/test/CodeGen/X86/atomic-mi.ll |
 | llvm/test/CodeGen/X86/atomic-non-integer.ll |
Commit
15b6aa744881b6e77a3d6773afa3016fc2f9f123
by craig.topper[X86] Enable the use of movlps for i64 atomic load on 32-bit targets with sse1.
Still a little room for improvement by using movlps to store to the stack temporary needed to move data out of the xmm register after the load.
|
 | llvm/test/CodeGen/X86/atomic-non-integer.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/atomic-fp.ll |
Commit
5a705186604fbd1bc762f5fe7370983cc0827ffd
by craig.topper[X86] Remove most X86 specific subclasses of MemSDNode. Just use a MemIntrinsicSDNode as we usually do.
Leave the gather/scatter subclasses, but make them inherit from MemIntrinsicSDNode and delete their constructor and destructor. This way we can still have the getIndex, getMask, etc. convenience functions.
|
 | llvm/lib/Target/X86/X86ISelLowering.h |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/lib/Target/X86/X86InstrFragmentsSIMD.td |
Commit
384d5e33fe2ea0b40119b003b60cfa8b21e3fd15
by craig.topper[SelectionDAG] Remove SelectionDAG::getTargetMemSDNode now that its not used.
Targets are expected to use getMemIntrinsicNode and not provide their own subclasses. X86 was previously the only user.
|
 | llvm/include/llvm/CodeGen/SelectionDAG.h |
Commit
bae33a7c5a1f220671e6d99cda21749afe2501a6
by aktoonIR printing for single function with the new pass manager.
Summary: The IR printing always prints out all functions in a module with the new pass manager, even with -filter-print-funcs specified. This is being fixed in this change. However, there are two exceptions, i.e, with user-specified wildcast switch -filter-print-funcs=* or -print-module-scope, under which IR of all functions should be printed.
Test Plan: make check-clang make check-llvm
Reviewers: wenlei
Reviewed By: wenlei
Subscribers: wenlei, hiraditya, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D74814
|
 | llvm/test/Other/module-pass-printer.ll |
 | llvm/lib/Passes/StandardInstrumentations.cpp |
Commit
8b3a62dc987288a04f84c0e105303871943e8831
by qshanz[NFC][PowerPC] Refactor the tryAndWithMask()
Split the tryAndWithMask into several small calls.
Differential Revision: https://reviews.llvm.org/D72250
|
 | llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp |
Commit
6a3506a208b90e65c719b0942376f46902a08945
by shengchen.kan[Driver][X86] Add helptext for malign-branch*, mbranches-within-32B-boundaries
Differential Revision: https://reviews.llvm.org/D75017
|
 | clang/include/clang/Driver/Options.td |
Commit
4d812acba61e6306181a830a18d21bcb07b9f8c7
by sivachandra[libc] Add a README to the sub-directories under the utils directory.
Also, the source layout document has been updated to reflect the current layout of the `utils` directory.
Reviewers: PaulkaToast
Differential Revision: https://reviews.llvm.org/D74502
|
 | libc/utils/CPP/README.md |
 | libc/utils/UnitTest/README.md |
 | libc/docs/source_layout.rst |
 | libc/utils/HdrGen/README.md |
Commit
3a6bb32bd24b6f1b01ae2378ea7fa726f453fb1c
by craig.topper[SelectionDAG] Remove ISD::LIFETIME_START/LIFETIME_END from assert in getMemIntrinsicNode.
These appear to have their own SDNode type and shouldn't use MemIntrinsicSDNode.
|
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp |
Commit
f1b8ec3398fc0022b825b709eb6e792d35276bc1
by craig.topper[X86] Use custom isel for gather/scatter instructions.
The type profile we use for the isel patterns lied about how many operands the gather/scatter node has to skip the index and scale operands. This allowed us to expand the baseptr operand into base, displacement, and segment and then merge the index and scale with them in the final instruction during isel. This is kind of a hack that relies on isel not checking the number of operands at all.
This commit switches to custom isel where we can manage this directly without relying on holes in the isel checking.
|
 | llvm/lib/Target/X86/X86InstrSSE.td |
 | llvm/lib/Target/X86/X86ISelDAGToDAG.cpp |
 | llvm/lib/Target/X86/X86InstrAVX512.td |
 | llvm/lib/Target/X86/X86InstrFragmentsSIMD.td |
Commit
7a7146cf72ad46f706e892f32f64405665f31ba3
by craig.topper[X86] When creating X86ISD::MGATHER nodes from AVX2 gather intrinsics, cast the mask to integer type.
The gather intrinsics use a floating point mask when the result type is FP. But we call DemandedBits on the mask assuming its an integer type. We also use integer types when we create it from generic IR. So add a bitcast to the intrinsic path to guarantee the integer type.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/lib/Target/X86/X86ISelDAGToDAG.cpp |
Commit
27a79b721628ce0814cdc7b4d5267717bcc52421
by Lang Hames[JITLink] Add a MachO x86-64 GOT and Stub bypass optimization.
This optimization bypasses GOT loads and calls/branches through stubs when the ultimate target of the access/branch is found to be within range of the reference.
Extra debugging output is also added to the generic JITLink algorithm and basic GOT and Stubs builder utility to aid debugging.
|
 | llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h |
 | llvm/lib/ExecutionEngine/JITLink/BasicGOTAndStubsBuilder.h |
 | llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.cpp |
 | llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.h |
 | llvm/test/ExecutionEngine/JITLink/X86/Inputs/MachO_GOTAndStubsOptimizationHelper.s |
 | llvm/lib/ExecutionEngine/JITLink/MachO_x86_64.cpp |
 | llvm/include/llvm/ExecutionEngine/JITLink/MachO_x86_64.h |
 | llvm/test/ExecutionEngine/JITLink/X86/MachO_x86-64_relocations.s |
 | llvm/test/ExecutionEngine/JITLink/X86/MachO_GOTAndStubsOptimization.s |
Commit
e657a1eb23f8231296ac0c62a1cd497762bd0f3e
by Raphael Isemann[lldb] Remove all the 'current_id' logging counters from the lookup code.
Summary: We have a lot of code in our lookup code to pass around `current_id` counters which end up in our logs like this: ``` AOCTV::FT [234] Found XYZ ```
This patch removes all of this code because: * I'm splitting up all humongous functions, so I need to write more and more boilerplate to pass around these ids. * I never saw any similar counters in the LLDB/LLVM code base. * They're essentially globals and the last thing we need in LLDB is even more global state. * They're not really useful when readings logs. It doesn't help that there isn't just 1 or 2 counters, but 12 (!) unique counters. I always thought that if I see two identical counter values in those brackets it's the same lookup request, but it seems that's only true by accident (and you can't know which of the 12 counters is actually printed without reading the code). The only time I know I can trust the counters is when it's obvious from the log that it's the same counter like in the log below, but then why have the counters in the first place?
``` LayoutRecordType[28] on (ASTContext*)0x00007FFA1C840200 'scratch ASTContext' for (RecordDecl*)0x00007FFA0AAE8CF0 [name = '__tree'] LRT[28] returned: LRT[28] Original = (RecordDecl*)%p LRT[28] Size = %lld LRT[28] Alignment = %lld LRT[28] Fields: LRT[28] (FieldDecl*)0x00007FFA1A13B1D0, Name = '__begin_node_', Offset = 0 bits LRT[28] (FieldDecl*)0x00007FFA1C08FD30, Name = '__pair1_', Offset = 64 bits LRT[28] (FieldDecl*)0x00007FFA1C061210, Name = '__pair3_', Offset = 128 bits LRT[28] Bases: ```
Reviewers: labath, shafik, JDevlieghere
Reviewed By: labath, shafik, JDevlieghere
Subscribers: abidh, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74951
|
 | lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp |
 | lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.h |
 | lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h |
 | lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp |
 | lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp |
Commit
03756a41979915c63d0a9eb214524e03aaff876d
by sam.parker[ARM][MVE] Combine more extending masked loads
For MVE, don't look at the users of the extending loads so that more as desirable for folding.
Differential Revision: https://reviews.llvm.org/D74958
|
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/extending-loads.ll |
Commit
0f7cfb25432e405aeb12251598a9798662979ced
by pavel[lldb/DWARF] Don't index dwp file multiple times
Summary: When we added support for type units in dwo files, we changed the "manual" dwarf index to index _all_ dwarf units in the dwo file instead of just the split unit belonging to our skeleton unit. This was fine for dwo files, as they contain only a single compile units and type units do not have a split type unit which would point to them.
However, this does not work for dwp files because, these files do contain multiple split compile units, and the current approach means that each unit gets indexed multiple times (once for each split unit => n^2 complexity).
This patch teaches the manual dwarf index to treat dwp files specially. Any type units in the dwp file added to the main list of compile units and indexed with them in a single batch. Split compile units in dwp files are still indexed as a part of their skeleton unit -- this is done because we need the DW_AT_language attribute from the skeleton unit to index them properly.
Handling of dwo files remains unchanged -- all units (type and skeleton) are indexed when we reach the dwo file through the split unit.
Reviewers: clayborg, JDevlieghere, aprantl
Subscribers: arphaman, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74964
|
 | lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp |
 | lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp |
 | lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h |
 | lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.h |
 | lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.h |
 | lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp |
 | lldb/test/Shell/SymbolFile/DWARF/dwp-debug-types.s |
Commit
be3b448c2e39b9f1302601935955a9f5e5f013e8
by pavel[lldb/test] simplify basic-elf.yaml
Explicit dynsym/dynstr sections were added in a6370d5 to compensate for a yaml2obj change D74764. This test doesn't need those sections, so instead I just delete the explicit section blocks, and also the "DynamicSymbols" block, which triggers their implicit generation.
|
 | lldb/test/Shell/SymbolFile/Breakpad/Inputs/basic-elf.yaml |
Commit
c131dfefe2b404dc1dbb32a02ea484fd7edaffdc
by Raphael Isemann[lldb] Disable auto fix-its when evaluating expressions in the test suite
Summary: Currently the test suite runs with enabled automatically applied Clang fix-its for expressions. This is causing that sometimes incorrect expressions in tests are still evaluated even though they are actually incorrect. Let's disable this feature in the test suite so that we know when expressions are wrong and leave the fix-it testing to the dedicated tests for that feature.
Also updates the `lang/cpp/operators/` test as it seems Clang needs the `struct` keywords before C and would otherwise fail without fixits.
Reviewers: jingham, JDevlieghere, shafik
Reviewed By: JDevlieghere, shafik
Subscribers: shafik, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74957
|
 | lldb/test/API/lang/cpp/operators/main.cpp |
 | lldb/packages/Python/lldbsuite/test/lldbtest.py |
 | lldb/test/Shell/lit-lldb-init.in |
Commit
c3f36acc92479f6f27ed226e52499d619308561e
by bevin.hansson[MC] Widen the functional unit type from 32 to 64 bits.
Summary: The type used to represent functional units in MC is 'unsigned', which is 32 bits wide. This is currently not a problem in any upstream target as no one seems to have hit the limit on this yet, but in our downstream one, we need to define more than 32 functional units.
Increasing the size does not seem to cause a huge size increase in the binary (an llc debug build went from 1366497672 to 1366523984, a difference of 26k), so perhaps it would be acceptable to have this patch applied upstream as well.
Subscribers: hiraditya, jsji, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71210
|
 | llvm/utils/TableGen/SubtargetEmitter.cpp |
 | llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp |
 | llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp |
 | llvm/include/llvm/MC/MCInstrItineraries.h |
 | llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp |
 | llvm/lib/CodeGen/MachinePipeliner.cpp |
 | llvm/include/llvm/CodeGen/ScoreboardHazardRecognizer.h |
 | llvm/lib/Target/Hexagon/HexagonInstrInfo.h |
Commit
9b23024c8b5d29d352215cc2e78eb1522f82a340
by pavelUse new FailedWithMessage matcher in DWARFDebugLineTest.cpp
Summary: This should produce slightly better error messages in case of failures. Only slightly, because this code was pretty careful about that to begin with -- I've seen code which does much worse.
Reviewers: jhenderson, dblaikie
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74899
|
 | llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp |
Commit
8f46269f0c1cc93b080931fd9dfeffc4d364004b
by calixte.denizet[profile] Don't dump counters when forking and don't reset when calling exec** functions
Summary: There is no need to write out gcdas when forking because we can just reset the counters in the parent process. Let say a counter is N before the fork, then fork and this counter is set to 0 in the child process. In the parent process, the counter is incremented by P and in the child process it's incremented by C. When dump is ran at exit, parent process will dump N+P for the given counter and the child process will dump 0+C, so when the gcdas are merged the resulting counter will be N+P+C. About exec** functions, since the current process is replaced by an another one there is no need to reset the counters but just write out the gcdas since the counters are definitely lost. To avoid to have lists in a bad state, we just lock them during the fork and the flush (if called explicitely) and lock them when an element is added.
Reviewers: marco-c
Reviewed By: marco-c
Subscribers: hiraditya, cfe-commits, #sanitizers, llvm-commits, sylvestre.ledru
Tags: #clang, #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D74953
|
 | clang/lib/Driver/ToolChains/Darwin.cpp |
 | llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp |
 | compiler-rt/lib/profile/GCDAProfiling.c |
Commit
6e561d1c94edc2ecaab7b79f6b3f1a06f515d531
by bevin.hansson[Intrinsic] Add fixed point saturating division intrinsics.
Summary: This patch adds intrinsics and ISelDAG nodes for signed and unsigned fixed-point division:
``` llvm.sdiv.fix.sat.* llvm.udiv.fix.sat.* ```
These intrinsics perform scaled, saturating division on two integers or vectors of integers. They are required for the implementation of the Embedded-C fixed-point arithmetic in Clang.
Reviewers: bjope, leonardchan, craig.topper
Subscribers: hiraditya, jdoerfert, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71550
|
 | llvm/docs/LangRef.rst |
 | llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp |
 | llvm/include/llvm/CodeGen/TargetLowering.h |
 | llvm/lib/IR/Verifier.cpp |
 | llvm/test/CodeGen/X86/sdiv_fix_sat.ll |
 | llvm/lib/CodeGen/TargetLoweringBase.cpp |
 | llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp |
 | llvm/include/llvm/IR/Intrinsics.td |
 | llvm/test/CodeGen/X86/udiv_fix_sat.ll |
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp |
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp |
 | llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp |
 | llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp |
 | llvm/include/llvm/CodeGen/ISDOpcodes.h |
 | llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp |
 | llvm/include/llvm/Target/TargetSelectionDAG.td |
Commit
bc1947a6f51fec9239248043d1a85afa3ce586aa
by benny.kraAdd a basic tiling pass for parallel loops
This exploits the fact that the iterations of parallel loops are independent so tiling becomes just an index transformation. This pass only tiles the innermost loop of a loop nest.
The ultimate goal is to allow vectorization of the tiled loops, but I don't think we're there yet with the current rewriting, as the tiled loops don't have a constant trip count.
Differential Revision: https://reviews.llvm.org/D74954
|
 | mlir/include/mlir/Dialect/LoopOps/Passes.h |
 | mlir/test/Dialect/Loops/parallel-loop-tiling.mlir |
 | mlir/include/mlir/InitAllPasses.h |
 | mlir/lib/Dialect/LoopOps/Transforms/ParallelLoopTiling.cpp |
 | mlir/lib/Dialect/LoopOps/Transforms/CMakeLists.txt |
Commit
3ac37eb9a93a4009f58c29497aa141fc103f4c45
by benny.kraSilence compiler warnings
mlir/lib/Parser/Parser.cpp:4484:15: warning: 'parseAssignmentList' overrides a member function but is not marked 'override' [-Winconsistent-missing-override] ParseResult parseAssignmentList(SmallVectorImpl<OperandType> &lhs, ^ mlir/include/mlir/IR/OpImplementation.h:662:3: note: overridden virtual function is here parseAssignmentList(SmallVectorImpl<OperandType> &lhs, ^ mlir/lib/Parser/Parser.cpp:4488:12: warning: unused variable 'type' [-Wunused-variable] Type type; ^
|
 | mlir/lib/Parser/Parser.cpp |
Commit
f2ff153401fa894844e1f365697e58297d328207
by kerry.mclaughlin[AArch64][SVE] Add intrinsics for SVE2 cryptographic instructions
Summary: Implements the following SVE2 intrinsics: - @llvm.aarch64.sve.aesd - @llvm.aarch64.sve.aesimc - @llvm.aarch64.sve.aese - @llvm.aarch64.sve.aesmc - @llvm.aarch64.sve.rax1 - @llvm.aarch64.sve.sm4e - @llvm.aarch64.sve.sm4ekey
Reviewers: sdesmalen, c-rhodes, dancgr, cameron.mcinally, efriedma, rengolin
Reviewed By: sdesmalen
Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, cfe-commits, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74833
|
 | llvm/lib/Target/AArch64/SVEInstrFormats.td |
 | llvm/include/llvm/IR/IntrinsicsAArch64.td |
 | llvm/test/CodeGen/AArch64/sve2-intrinsics-crypto.ll |
 | llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td |
Commit
8c893cac3f65cecf5b5a05dc32cfbfe4b82cc8e0
by benny.kra[ORC] Remove spammy debug print
|
 | llvm/lib/ExecutionEngine/Orc/RTDyldObjectLinkingLayer.cpp |
Commit
a4370b2ec4624c8aceb2754cf916b98c2bfc1914
by kbobyrevUse temporary directory for tests in D74346
|
 | llvm/test/Other/cfg_deopt_unreach.ll |
Commit
eaa41e103c568a3f97039fe64c89baa7e9b085ca
by llvm-dev[CostModel][X86] Try to check against common prefixes before using target-specific cpu checks
SLM/GLM is still a mess so not all of them have been updated yet.
|
 | llvm/test/Analysis/CostModel/X86/fshr.ll |
 | llvm/test/Analysis/CostModel/X86/shuffle-reverse.ll |
 | llvm/test/Analysis/CostModel/X86/uitofp.ll |
 | llvm/test/Analysis/CostModel/X86/fptoui.ll |
 | llvm/test/Analysis/CostModel/X86/shuffle-transpose.ll |
 | llvm/test/Analysis/CostModel/X86/arith-overflow.ll |
 | llvm/test/Analysis/CostModel/X86/fptosi.ll |
 | llvm/test/Analysis/CostModel/X86/shuffle-broadcast.ll |
 | llvm/test/Analysis/CostModel/X86/arith-fp.ll |
 | llvm/test/Analysis/CostModel/X86/trunc.ll |
 | llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll |
 | llvm/test/Analysis/CostModel/X86/shuffle-insert_subvector.ll |
 | llvm/test/Analysis/CostModel/X86/arith-fix.ll |
 | llvm/test/Analysis/CostModel/X86/fshl.ll |
 | llvm/test/Analysis/CostModel/X86/shuffle-single-src.ll |
 | llvm/test/Analysis/CostModel/X86/div.ll |
 | llvm/test/Analysis/CostModel/X86/rem.ll |
 | llvm/test/Analysis/CostModel/X86/fcmp.ll |
 | llvm/test/Analysis/CostModel/X86/shuffle-two-src.ll |
 | llvm/test/Analysis/CostModel/X86/vshift-ashr-cost.ll |
 | llvm/test/Analysis/CostModel/X86/sitofp.ll |
 | llvm/test/Analysis/CostModel/X86/alternate-shuffle-cost.ll |
 | llvm/test/Analysis/CostModel/X86/fround.ll |
 | llvm/test/Analysis/CostModel/X86/vshift-shl-cost.ll |
 | llvm/test/Analysis/CostModel/X86/arith.ll |
 | llvm/test/Analysis/CostModel/X86/arith-ssat.ll |
 | llvm/test/Analysis/CostModel/X86/arith-usat.ll |
 | llvm/test/Analysis/CostModel/X86/vector-extract.ll |
 | llvm/test/Analysis/CostModel/X86/vshift-lshr-cost.ll |
 | llvm/test/Analysis/CostModel/X86/icmp.ll |
 | llvm/test/Analysis/CostModel/X86/vector-insert.ll |
 | llvm/test/Analysis/CostModel/X86/extend.ll |
Commit
f287bb8cf5e48a22b5d1be47da803f73c5aa8186
by david.green[ARM] FP16 bitcast test. NFC
|
 | llvm/test/CodeGen/ARM/fp16-bitcast.ll |
Commit
12fed51c0807b0727f9eecdd3dcf774a82fa7ecd
by mikhail.maltsev[ARM,MVE] Remove 64-bit variants of vbrsrq* intrinsics
Summary: According to the ACLE the vbrsrq* intrinsics don't accept vectors with 64-bit elements (and neither does the corresponding VBRSR instruction).
Reviewers: simon_tatham, dmgreen, MarkMurrayARM, ostannard
Reviewed By: simon_tatham
Subscribers: kristof.beyls, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D75038
|
 | clang/include/clang/Basic/arm_mve.td |
Commit
bd5b22070b6984d89c13b6cf38c3e54fc98ce291
by aaronFix TryParsePtrOperatorSeq.
The syntax rules for ptr-operator allow attributes after *, &, &&, therefore we should be able to parse the following:
void fn() { void (*[[attr]] x)() = &fn; void (&[[attr]] y)() = fn; void (&&[[attr]] z)() = fn; } However the current logic in TryParsePtrOperatorSeq does not consider the presence of attributes leading to unexpected parsing errors.
Moreover we should also consider _Atomic a possible qualifier that can appear after the sequence of attribute specifiers.
|
 | clang/lib/Parse/ParseTentative.cpp |
 | clang/test/Parser/cxx-attributes.cpp |
 | clang/include/clang/Parse/Parser.h |
 | clang/test/Parser/cxx-ambig-decl-expr.cpp |
 | clang/test/CXX/dcl.decl/p4-0x.cpp |
Commit
a67eb221e2281350eeab5dd4b9119895c500674c
by sam.parker[RDA][ARM][LowOverheadLoops] Iteration count IT blocks
Change the way that we remove the redundant iteration count code in the presence of IT blocks. collectLocalKilledOperands has been introduced to scan an instructions operands, collecting the killed instructions and then visiting them too. This is used to delete the code in the preheader which calculates the iteration count. We also track any IT blocks within the preheader and, if we remove all the instructions from the IT block, we also remove the IT instruction. isSafeToRemove is used to remove any redundant uses of the iteration count within the loop body.
Differential Revision: https://reviews.llvm.org/D74975
|
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-mov.mir |
 | llvm/include/llvm/CodeGen/ReachingDefAnalysis.h |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-itercount.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-random.mir |
 | llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp |
 | llvm/lib/CodeGen/ReachingDefAnalysis.cpp |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-chain.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-ignore-vctp.mir |
Commit
f87f23c81caeb0b0b7b8e795023b7273a13115d2
by kerry.mclaughlin[AArch64][SVE] Add the SVE dupq_lane intrinsic
Summary: Implements the @llvm.aarch64.sve.dupq.lane intrinsic.
As specified in the ACLE, the behaviour of: svdupq_lane_u64(data, index)
...is identical to: svtbl(data, svadd_x(svptrue_b64(), svand_x(svptrue_b64(), svindex_u64(0, 1), 1), index * 2))
If the index is in the range [0,3], the operation is equivalent to a single DUP (.q) instruction.
Reviewers: sdesmalen, c-rhodes, cameron.mcinally, efriedma, dancgr, rengolin
Reviewed By: sdesmalen
Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, cfe-commits, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D74734
|
 | llvm/test/CodeGen/AArch64/sve-intrinsics-perm-select.ll |
 | llvm/include/llvm/IR/IntrinsicsAArch64.td |
 | llvm/lib/Target/AArch64/AArch64ISelLowering.cpp |
 | llvm/lib/Target/AArch64/AArch64ISelLowering.h |
Commit
7efabe5c7de46fe190638741c6ee81ae13255e38
by sjoerd.meijer[MIR][ARM] MachineOperand comments
This adds infrastructure to print and parse MIR MachineOperand comments. The motivation for the ARM backend is to print condition code names instead of magic constants that are difficult to read (for human beings). For example, instead of this:
dead renamable $r2, $cpsr = tEOR killed renamable $r2, renamable $r1, 14, $noreg t2Bcc %bb.4, 0, killed $cpsr
we now print this:
dead renamable $r2, $cpsr = tEOR killed renamable $r2, renamable $r1, 14 /* CC::always */, $noreg t2Bcc %bb.4, 0 /* CC:eq */, killed $cpsr
This shows that MachineOperand comments are enclosed between /* and */. In this example, the EOR instruction is not conditionally executed (i.e. it is "always executed"), which is encoded by the 14 immediate machine operand. Thus, now this machine operand has /* CC::always */ as a comment. The 0 on the next conditional branch instruction represents the equal condition code, thus now this operand has /* CC:eq */ as a comment.
As it is a comment, the MI lexer/parser completely ignores it. The benefit is that this keeps the change in the lexer extremely minimal and no target specific parsing needs to be done. The changes on the MIPrinter side are also minimal, as there is only one target hooks that is used to create the machine operand comments.
Differential Revision: https://reviews.llvm.org/D74306
|
 | llvm/test/CodeGen/ARM/cmpxchg.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/non-masked-store.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vmaxmin_vpred_r.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/select-pkhbt.mir |
 | llvm/test/CodeGen/ARM/ifcvt_simple_unanalyzable.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp16-reduce.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-while.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/select-revsh.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/inloop-vpsel-1.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/wlstp.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-select-globals-pic.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-select-copy_to_regclass-of-fptosi.mir |
 | llvm/lib/CodeGen/MIRParser/MILexer.cpp |
 | llvm/test/CodeGen/ARM/constant-island-movwt.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/select-neon.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-arithmetic-ops.mir |
 | llvm/test/CodeGen/ARM/machine-copyprop.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/move-def-before-start.mir |
 | llvm/test/CodeGen/Thumb/peephole-mi.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/inloop-vpnot-2.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/safe-def-no-mov.mir |
 | llvm/test/CodeGen/ARM/vldm-liveness.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-globals-static.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/inloop-vpnot-1.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/loop-dec-copy-chain.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-instruction-select.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/select-fp.mir |
 | llvm/lib/Target/ARM/ARMBaseInstrInfo.h |
 | llvm/test/CodeGen/ARM/tst-peephole.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-instruction-select-cmp.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/inloop-vpsel-2.mir |
 | llvm/test/CodeGen/ARM/ifcvt_triangleSameCvtNext.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/end-positive-offset.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-param-lowering.ll |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-in-vpt-2.mir |
 | llvm/test/CodeGen/ARM/regcoal-invalid-subrange-update.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/size-limit.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-select-globals-ropi-rwpi.mir |
 | llvm/test/CodeGen/ARM/register-scavenger-exceptions.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/loop-dec-copy-prev-iteration.mir |
 | llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update.mir |
 | llvm/test/CodeGen/Thumb2/constant-islands-cbz.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-select-globals-static.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/revert-non-header.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/remove-elem-moves.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-3-blocks-kill-vpr.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-itercount.mir |
 | llvm/test/CodeGen/Thumb2/ifcvt-cbz.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/while.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/add_reduce.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update2.mir |
 | llvm/test/CodeGen/MIR/ARM/bundled-instructions.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-globals-ropi-rwpi.mir |
 | llvm/test/CodeGen/ARM/codesize-ifcvt.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/inloop-vpnot-3.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-instruction-select-cmp.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-use-after.mir |
 | llvm/test/CodeGen/ARM/load_store_opt_kill.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-block-optnone.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-shifts.mir |
 | llvm/test/CodeGen/ARM/ifcvt-diamond-unanalyzable-common.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vmldava_in_vpt.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-vctp-opcode-liveout.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/disjoint-vcmp.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subri.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-16.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/out-of-range-cbz.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/cond-mov.mir |
 | llvm/test/CodeGen/ARM/ifcvt_simple_bad_zero_prob_succ.mir |
 | llvm/test/CodeGen/ARM/fpoffset_overflow.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-block-1-ins.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-8.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-vctp-operand-liveout.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-call-lowering.ll |
 | llvm/test/CodeGen/Thumb2/peephole-addsub.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/select-fp-const.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/no-vpsel-liveout.mir |
 | llvm/test/CodeGen/Thumb/peephole-cmp.mir |
 | llvm/test/CodeGen/ARM/constant-islands-split-IT.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-2-blocks.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/wrong-liveout-lsr-shift.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-imm.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/select-pr35926.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-cpsr-loop-def.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-block-2-ins.mir |
 | llvm/test/CodeGen/Thumb2/peephole-cmp.mir |
 | llvm/test/CodeGen/ARM/peephole-phi.mir |
 | llvm/test/CodeGen/MIR/ARM/thumb2-sub-sp-t3.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-add-operand-liveout.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/predicated-liveout.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/unrolled-and-vector.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-2-blocks-2-preds.mir |
 | llvm/test/CodeGen/ARM/load_store_opt_clobber_cpsr.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-preuse.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-in-vpt.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/select-clz.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/extract-element.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-logical-ops.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-br.mir |
 | llvm/test/CodeGen/Thumb2/fp16-stacksplot.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-load-store.mir |
 | llvm/include/llvm/CodeGen/TargetInstrInfo.h |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subi3.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-2-blocks-ctrl-flow.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/unsafe-cpsr-loop-use.mir |
 | llvm/test/DebugInfo/MIR/ARM/live-debug-values-reg-copy.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-block-fold-vcmp.mir |
 | llvm/test/CodeGen/Thumb2/t2-teq-reduce.mir |
 | llvm/test/CodeGen/ARM/ifcvt_forked_diamond_unanalyzable.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll |
 | llvm/test/CodeGen/ARM/load_store_opt_reg_limit.mir |
 | llvm/test/CodeGen/ARM/ifcvt_diamond_unanalyzable.mir |
 | llvm/test/CodeGen/ARM/ifcvt_triangleWoCvtToNextEdge.mir |
 | llvm/lib/CodeGen/MIRPrinter.cpp |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/matrix.mir |
 | llvm/test/CodeGen/Thumb2/high-reg-spill.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/loop-dec-liveout.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/mov-lr-terminator.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-nots.mir |
 | llvm/test/CodeGen/ARM/ARMLoadStoreDBG.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-random.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-globals-pic.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-mov.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/mov-after-dls.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/skip-debug.mir |
 | llvm/test/CodeGen/ARM/expand-pseudos.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/multiple-do-loops.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-legalize-divmod.mir |
 | llvm/test/CodeGen/ARM/tail-dup-bundle.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-block-4-ins.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/matrix-debug.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/livereg-no-loop-def.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-2-blocks-non-consecutive-ins.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vctp-subri12.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/no-dec-cbnz.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/arm-instruction-select-combos.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-exts.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/irtranslator-varargs-lowering.ll |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/incorrect-sub-32.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/move-start-after-def.mir |
 | llvm/test/CodeGen/Thumb2/t2sizereduction.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/it-block-chain.mir |
 | llvm/test/CodeGen/ARM/constant-islands-cfg.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-ignore-vctp.mir |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/non-masked-load.mir |
 | llvm/test/CodeGen/Thumb2/mve-stacksplot.mir |
 | llvm/test/CodeGen/ARM/GlobalISel/thumb-select-select.mir |
 | llvm/test/CodeGen/ARM/cmp1-peephole-thumb.mir |
 | llvm/test/CodeGen/Thumb2/mve-vpt-2-blocks-1-pred.mir |
Commit
b82438872b1f88feb393d5651bdfacb89bd2f8fa
by llvm-dev[CostModel][X86] We don't need a scale factor for SLM extract costs
D74976 will handle larger vector types, but since SLM doesn't support AVX+ then we will always be extracting from 128-bit vectors so don't need to scale the cost.
|
 | llvm/test/Transforms/SLPVectorizer/X86/alternate-cast.ll |
 | llvm/test/Analysis/CostModel/X86/vector-extract.ll |
 | llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll |
 | llvm/lib/Target/X86/X86TargetTransformInfo.cpp |
Commit
c8dadac228b7dd3a71d5fc25489d1b884a2b0f5e
by melanie.bloweradd release notes for ffp-model and ffp-exception-behavior
|
 | clang/docs/ReleaseNotes.rst |
Commit
8bee52bdb54a51ccfe1eb6c6ed5077132c2950a1
by Xiangling.Liao[AIX][Frontend] C++ ABI customizations for AIX boilerplate
This PR enables "XL" C++ ABI in frontend AST to IR codegen. And it is driven by static init work. The current kind in Clang by default is Generic Itanium, which has different behavior on static init with IBM xlclang compiler on AIX.
Differential Revision: https://reviews.llvm.org/D74015
|
 | clang/test/CodeGen/static-init.cpp |
 | clang/lib/Basic/Targets/OSTargets.h |
 | clang/lib/AST/ASTContext.cpp |
 | clang/lib/CodeGen/ItaniumCXXABI.cpp |
 | clang/include/clang/Basic/TargetCXXABI.h |
 | clang/lib/CodeGen/CodeGenModule.cpp |
Commit
d66d25f83824e2d72e06bf0813cc9e9e564dd74c
by a.bataev[OpenMP] Refactor the analysis in checkMapClauseBaseExpression using StmtVisitor class.
Summary: This step is the preparation of allowing lvalue in map/motion clause.
Reviewers: ABataev, jdoerfert
Reviewed By: ABataev
Subscribers: guansong, cfe-commits
Tags: #clang, #openmp
Differential Revision: https://reviews.llvm.org/D74970
|
 | clang/lib/Sema/SemaOpenMP.cpp |
 | clang/test/OpenMP/target_messages.cpp |
Commit
54fa9ecd3088508b05b0c5b5cb52da8a3c188655
by Louis Dionne[libc++] Implementation of C++20's P1135R6 for libcxx
Differential Revision: https://reviews.llvm.org/D68480
|
 | libcxx/test/std/thread/thread.semaphore/version.pass.cpp |
 | libcxx/include/CMakeLists.txt |
 | libcxx/include/barrier |
 | libcxx/test/std/thread/thread.barrier/arrive_and_wait.pass.cpp |
 | libcxx/test/std/thread/thread.semaphore/max.pass.cpp |
 | libcxx/include/module.modulemap |
 | libcxx/src/include/apple_availability.h |
 | libcxx/www/cxx2a_status.html |
 | libcxx/test/std/thread/thread.latch/arrive_and_wait.pass.cpp |
 | libcxx/include/semaphore |
 | libcxx/test/std/thread/thread.barrier/arrive.pass.cpp |
 | libcxx/test/std/thread/thread.latch/version.pass.cpp |
 | libcxx/test/std/thread/thread.latch/count_down.pass.cpp |
 | libcxx/src/CMakeLists.txt |
 | libcxx/test/std/atomics/types.pass.cpp |
 | libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait.pass.cpp |
 | libcxx/test/std/thread/thread.semaphore/binary.pass.cpp |
 | libcxx/test/std/thread/thread.semaphore/timed.pass.cpp |
 | libcxx/include/__threading_support |
 | libcxx/src/barrier.cpp |
 | libcxx/test/std/thread/thread.barrier/version.pass.cpp |
 | libcxx/test/std/thread/thread.latch/try_wait.pass.cpp |
 | libcxx/test/std/thread/thread.barrier/completion.pass.cpp |
 | libcxx/test/std/thread/thread.latch/max.pass.cpp |
 | libcxx/include/latch |
 | libcxx/include/atomic |
 | libcxx/test/std/thread/thread.semaphore/acquire.pass.cpp |
 | libcxx/test/std/thread/thread.semaphore/release.pass.cpp |
 | libcxx/src/atomic.cpp |
 | libcxx/test/std/thread/thread.semaphore/try_acquire.pass.cpp |
 | libcxx/test/std/thread/thread.barrier/max.pass.cpp |
 | libcxx/test/libcxx/double_include.sh.cpp |
 | libcxx/test/std/thread/thread.barrier/arrive_and_drop.pass.cpp |
Commit
80e73f22956c532e581c280a7388cfa87cec98e8
by Louis Dionne[libc++] Adapt a few things around the implementation of P1135R6
- Add the new symbols to the ABI list on Darwin - Add XFAIL markup to the tests that require dylib support on older platforms - Add availability markup for back-deployment
|
 | libcxx/test/std/thread/thread.semaphore/binary.pass.cpp |
 | libcxx/test/std/thread/thread.semaphore/try_acquire.pass.cpp |
 | libcxx/lib/abi/CHANGELOG.TXT |
 | libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait.pass.cpp |
 | libcxx/include/__config |
 | libcxx/test/std/thread/thread.semaphore/acquire.pass.cpp |
 | libcxx/test/std/thread/thread.latch/arrive_and_wait.pass.cpp |
 | libcxx/test/std/thread/thread.barrier/arrive_and_drop.pass.cpp |
 | libcxx/test/std/thread/thread.barrier/arrive_and_wait.pass.cpp |
 | libcxx/test/std/thread/thread.semaphore/timed.pass.cpp |
 | libcxx/test/std/thread/thread.semaphore/release.pass.cpp |
 | libcxx/include/atomic |
 | libcxx/test/std/thread/thread.latch/try_wait.pass.cpp |
 | libcxx/test/std/thread/thread.barrier/arrive.pass.cpp |
 | libcxx/include/barrier |
 | libcxx/lib/abi/x86_64-apple-darwin.v2.abilist |
 | libcxx/test/std/thread/thread.barrier/completion.pass.cpp |
 | libcxx/lib/abi/x86_64-apple-darwin.v1.abilist |
 |