Commit
5a9f3867046c4e1c97760e22a505f4d1d788417e
by kadircet[clang-tidy] Make clang-format and include-order-check coherent
LLVM style puts both gtest and gmock to the end of the include list. But llvm-include-order-check was only moving gtest headers to the end, resulting in a false tidy-warning.
Differential Revision: https://reviews.llvm.org/D91602
|
 | clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/gmock/foo.h |
 | clang-tools-extra/test/clang-tidy/checkers/llvm-include-order.cpp |
 | clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.cpp |
Commit
13042da5cb3fe5f17c58c2446c93635a2c432049
by flo[ConstraintElimination] Add support for And.
When processing conditional branches, if the condition is an AND of 2 compares and the true successor only has the current block as predecessor, queue both conditions for the true successor.
|
 | llvm/lib/Transforms/Scalar/ConstraintElimination.cpp |
 | llvm/test/Transforms/ConstraintElimination/and.ll |
Commit
e8356a79ffd36a6cfdc1ca19c1283d7f517c77b6
by andrzej.warzynski[flang][nfc] Add missing dependency in CMake
This missing dependency has been causing the Flang buildbots (with BUILD_SHARED_LIBS set to ON) to fail: * http://lab.llvm.org:8011/#/builders/66/builds/542 * http://lab.llvm.org:8011/#/builders/33/builds/764
This missing dependency was exposed by this change: * https://reviews.llvm.org/D91461 This change is fine - the root cause of the failing builds is the missing dependency.
|
 | flang/tools/f18-parse-demo/CMakeLists.txt |
Commit
c25e1edf61b9098bc839bbd675d21cb9cf1ed553
by benny.kra[MLIR] Fix up integration tests after b7382ed3fea08da27530a6d6d53f168fc704e4c4
|
 | mlir/integration_test/Dialect/Async/CPU/test-async-parallel-for-1d.mlir |
 | mlir/integration_test/Dialect/Linalg/CPU/test-subtensor-insert.mlir |
 | mlir/integration_test/Dialect/Async/CPU/test-async-parallel-for-2d.mlir |
 | mlir/integration_test/Dialect/Linalg/CPU/test-subtensor-insert-multiple-uses.mlir |
Commit
498859cbf6682d63e9dfdfc89d298481261cf1dd
by Paul C. Anagnostopoulos[TableGen] Clean up Target .td include files
Differential Revision: https://reviews.llvm.org/D91483
|
 | llvm/include/llvm/Target/Target.td |
 | llvm/include/llvm/Target/TargetSelectionDAG.td |
 | llvm/include/llvm/Target/GenericOpcodes.td |
 | llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td |
 | llvm/include/llvm/Target/TargetInstrPredicate.td |
 | llvm/include/llvm/Target/TargetItinerary.td |
 | llvm/include/llvm/Target/TargetSchedule.td |
 | llvm/include/llvm/Target/TargetCallingConv.td |
 | llvm/include/llvm/Target/TargetPfmCounters.td |
Commit
23a96b84a8d985b686a4e06dec1f7aebc0cca6c6
by joe.ellis[AArch64][SVE] Support implicit lax vector conversions for SVE types
Lax vector conversions was behaving incorrectly for implicit casts between scalable and fixed-length vector types. For example, this:
#include <arm_sve.h>
#define N __ARM_FEATURE_SVE_BITS #define FIXED_ATTR __attribute__((arm_sve_vector_bits(N)))
typedef svfloat32_t fixed_float32_t FIXED_ATTR;
void allowed_depending() { fixed_float32_t fs32; svfloat64_t s64;
fs32 = s64; }
... would fail because the vectors have differing lane sizes. This patch implements the correct behaviour for -flax-vector-conversions={none,all,integer}. Specifically:
- -flax-vector-conversions=none prevents all lax vector conversions between scalable and fixed-sized vectors. - -flax-vector-conversions=integer allows lax vector conversions between scalable and fixed-size vectors whose element types are integers. - -flax-vector-conversions=all allows all lax vector conversions between scalable and fixed-size vectors (including those with floating point element types).
The implicit conversions are implemented as bitcasts.
Reviewed By: fpetrogalli
Differential Revision: https://reviews.llvm.org/D91067
|
 | clang/include/clang/AST/ASTContext.h |
 | clang/lib/Sema/SemaOverload.cpp |
 | clang/test/SemaCXX/aarch64-sve-lax-vector-conversions.cpp |
 | clang/lib/Sema/SemaExpr.cpp |
 | clang/lib/AST/ASTContext.cpp |
 | clang/test/Sema/attr-arm-sve-vector-bits.c |
 | clang/test/Sema/aarch64-sve-lax-vector-conversions.c |
Commit
b90228e4113764b4126e958418022411de6275c3
by sbc[WebAssembly][MC] Remove useless overrides in MCWasmStreamer
Differential Revision: https://reviews.llvm.org/D91604
|
 | llvm/lib/MC/MCWasmStreamer.cpp |
 | llvm/include/llvm/MC/MCWasmStreamer.h |
Commit
fcad8d3635cff61a2749dcef94c0d51fa1e3e413
by anton.a.afanasyev[SLP] Make SLPVectorizer to use `llvm.masked.gather` intrinsic
For the scattered operands of load instructions it makes sense to use gathering load intrinsic, which can lower to native instruction for X86/AVX512 and ARM/SVE. This also enables building vectorization tree with entries containing scattered operands. The next step is to add scattered store.
Fixes PR47629 and PR47623
Differential Revision: https://reviews.llvm.org/D90445
|
 | llvm/test/Transforms/SLPVectorizer/X86/lookahead.ll |
 | llvm/test/Transforms/SLPVectorizer/X86/pr47623.ll |
 | llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll |
 | llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp |
Commit
46846ac45b2c44aa6e33be5ac498309f465ba7eb
by flo[Matrix] Add inline assembly test case.
This patch adds a new test cases which uses a matrix value as memory inline assembly argument. Currently the pointer element type does not match the vector type.
|
 | clang/test/CodeGen/matrix-type.c |
Commit
5292187a2d627fe5ff6f24c00dafae8d9f8c8e3b
by a.bataev[OPENMP]Fix PR48076: mapping of data member pointer.
If the data member pointer is mapped, the compiler tries to optimize the mapping of such data by discarding explicit mapping flags and trying to emit combined data instead. In some cases, this optimization is not quite correctly implemented and it leads to a program crash at the runtime. Instead, if the data member is mapped, just emit it as is and do not emit combined mapping flags for it.
Differential Revision: https://reviews.llvm.org/D91552
|
 | clang/test/OpenMP/target_map_codegen_20.cpp |
 | clang/test/OpenMP/target_data_member_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_23.cpp |
 | clang/test/OpenMP/target_parallel_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp |
 | clang/lib/CodeGen/CGOpenMPRuntime.cpp |
 | clang/test/OpenMP/teams_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_24.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_codegen.cpp |
 | clang/test/OpenMP/target_teams_num_teams_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_codegen.cpp |
 | clang/test/OpenMP/target_teams_codegen.cpp |
 | clang/test/OpenMP/target_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_parallel_for_codegen.cpp |
 | clang/test/OpenMP/target_teams_thread_limit_codegen.cpp |
 | clang/test/OpenMP/target_parallel_if_codegen.cpp |
 | clang/test/OpenMP/target_codegen.cpp |
 | clang/test/OpenMP/declare_mapper_codegen.cpp |
 | clang/test/OpenMP/target_parallel_num_threads_codegen.cpp |
 | clang/test/OpenMP/target_parallel_for_simd_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_codegen.cpp |
Commit
bba96c99655579f5b94abb1e2d07bf2b4b497718
by powerman1st[clang][AVR] Improve avr-ld command line options
Reviewed By: dylanmckay
Differential Revision: https://reviews.llvm.org/D88410
|
 | clang/test/Driver/avr-link-mcu-family-unimplemented.c |
 | clang/lib/Driver/ToolChains/AVR.cpp |
 | clang/test/Driver/avr-mmcu.c |
Commit
0a1d315f9f166207a95ce5d1e124e1a290807f98
by anton.a.afanasyev[SLPVectorizer] Fix assert
|
 | llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp |
Commit
e67d8859f205308d9e799c8448dcc1dcedc30102
by jay.foad[AMDGPU] Precommit more vccz workaround tests
|
 | llvm/test/CodeGen/AMDGPU/vccz-corrupt-bug-workaround.mir |
Commit
c5ce6036c169522eebd2ed330de58f4980cfb45a
by Matthew.ArsenaultLinker: Fix linking of byref types
This wasn't properly remapping the type like with the other attributes, so this would end up hitting a verifier error after linking different modules using byref.
|
 | llvm/lib/Transforms/Utils/ValueMapper.cpp |
 | llvm/lib/Linker/IRMover.cpp |
 | llvm/test/Linker/byref-types.ll |
 | llvm/test/Linker/Inputs/byref-type-input.ll |
Commit
0454154efd5423a5400a0d76572421d4f62c18d1
by jonathan.l.peyton[OpenMP][stats] reset serial state when re-entering serial region
Differential Revision: https://reviews.llvm.org/D90867
|
 | openmp/runtime/src/kmp_csupport.cpp |
Commit
2a473db57391e87ac0207a92117a14b0313661f7
by sbc[WebAssembly] Fix parsing of linking section for named global imports
Differential Revision: https://reviews.llvm.org/D91635
|
 | llvm/lib/Object/WasmObjectFile.cpp |
 | llvm/test/MC/WebAssembly/debug-info64.ll |
 | llvm/test/MC/WebAssembly/debug-info.ll |
Commit
8647c669a4a3193558ce0f2f398ffe04b80ad886
by jonathan.l.peyton[OpenMP] NFC: remove tabs in message catalog file
|
 | openmp/runtime/src/i18n/en_US.txt |
Commit
d06a445ca4c9848d04dfc1bae367f4141a6130b4
by llvm-dev[X86] subvector-broadcast.ll - replace X32 check prefix with X86. NFC.
We typically use X32 for gnux32 triples
|
 | llvm/test/CodeGen/X86/subvector-broadcast.ll |
Commit
53fba9d9d30307bac3d1ce31e39b0fccc13bed80
by llvm-dev[X86] nontemporal.ll - replace X32 check prefix with X86. NFC.
We typically use X32 for gnux32 triples
|
 | llvm/test/CodeGen/X86/nontemporal.ll |
Commit
7e30989dabce9ddbca0cbad7a8f25fb4e756d334
by llvm-dev[IR] ShuffleVectorInst::isIdentityWithPadding - bail on non-fixed-type vector shuffles.
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=27416
|
 | llvm/test/Transforms/InstCombine/vscale_insertelement.ll |
 | llvm/lib/IR/Instructions.cpp |
Commit
52f3714dae7b23ba734a449623cb1570c6c1b700
by flo[VPlan] Add VPDef class.
This patch introduces a new VPDef class, which can be used to manage VPValues defined by recipes/VPInstructions.
The idea here is to mirror VPUser for values defined by a recipe. A VPDef can produce either zero (e.g. a store recipe), one (most recipes) or multiple (VPInterleaveRecipe) result VPValues.
To traverse the def-use chain from a VPDef to its users, one has to traverse the users of all values defined by a VPDef.
VPValues now contain a pointer to their corresponding VPDef, if one exists. To traverse the def-use chain upwards from a VPValue, we first need to check if the VPValue is defined by a VPDef. If it does not have a VPDef, this means we have a VPValue that is not directly defined iniside the plan and we are done.
If we have a VPDef, it is defined inside the region by a recipe, which is a VPUser, and the upwards def-use chain traversal continues by traversing all its operands.
Note that we need to add an additional field to to VPVAlue to link them to their defs. The space increase is going to be offset by being able to remove the SubclassID field in future patches.
Reviewed By: Ayal
Differential Revision: https://reviews.llvm.org/D90558
|
 | llvm/unittests/Transforms/Vectorize/VPlanTest.cpp |
 | llvm/lib/Transforms/Vectorize/VPlan.cpp |
 | llvm/lib/Transforms/Vectorize/VPlanValue.h |
 | llvm/docs/Proposals/VectorizationPlan.rst |
Commit
43ede0e2a7fff54c450a0c2a698d02e197aa7b2a
by csigg[mlir] Remove unused ConvertToLLVMPattern::linearizeSubscripts().
Reviewed By: ftynse
Differential Revision: https://reviews.llvm.org/D91594
|
 | mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp |
 | mlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVM.h |
Commit
5f3a8074a431ad68815ccb957e319c3db5bf2d2d
by llvm-dev[PPC] Fix dead store value clang static analyzer warning. NFCI.
Simplify the SplatBits 2-byte -> 4-byte 'splat'.
|
 | llvm/lib/Target/PowerPC/PPCISelLowering.cpp |
Commit
019723fc295b692af31ced0d8e5c3c1736117de9
by steveireInvert accessor for checking traversal mode
For now, there is a traversal mode which ignores implicit casts and parenthesis. Invert the check in order to not obviously break that.
|
 | clang/include/clang/ASTMatchers/ASTMatchersInternal.h |
 | clang/lib/ASTMatchers/ASTMatchersInternal.cpp |
 | clang/lib/ASTMatchers/ASTMatchFinder.cpp |
Commit
36011bdfb6486217c45f1b0c7739c1c356ad9592
by steveireRename API to not be constrained to template instantiations
A follow-up commit will use this method to ignore implcit AST nodes.
|
 | clang/include/clang/ASTMatchers/ASTMatchersInternal.h |
 | clang/lib/ASTMatchers/ASTMatchFinder.cpp |
 | clang/lib/ASTMatchers/ASTMatchersInternal.cpp |
Commit
34c0f3cbf1ee025c2e85858b1eb0b0bf1755b569
by steveireMove ASTMatchFinder definition so it can be accessed from other functions
|
 | clang/include/clang/ASTMatchers/ASTMatchersInternal.h |
Commit
246b428fb3b5d58685064966bcea6592f8839b7e
by steveire[AST] Ignore implicit nodes in IgnoreUnlessSpelledInSource mode
Update the ASTNodeTraverser to dump only nodes spelled in source. There are only a few which need to be handled, but Decl nodes for which isImplicit() is true are handled together.
Update the RAV instances used in ASTMatchFinder to ignore the nodes too. As with handling of template instantiations, it is necessary to allow the RAV to process the implicit nodes because they need to be visitable before the first traverse() matcher is encountered. An exception to this is in the MatchChildASTVisitor, because we sometimes wish to make a node matchable but make its children not-matchable. This is the case for defaulted CXXMethodDecls for example.
Extend TransformerTests to illustrate the kinds of problems that can arise when performing source code rewriting due to matching implicit nodes.
This change accounts for handling nodes not spelled in source when using direct matching of nodes, and when using the has() and hasDescendant() matchers. Other matchers such as cxxRecordDecl(hasMethod(cxxMethodDecl())) still succeed for compiler-generated methods for example after this change. Updating the implementations of hasMethod() and other matchers is for a follow-up patch.
Differential Revision: https://reviews.llvm.org/D90982
|
 | clang/unittests/AST/ASTTraverserTest.cpp |
 | clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp |
 | clang/lib/ASTMatchers/ASTMatchFinder.cpp |
 | clang/include/clang/AST/ASTNodeTraverser.h |
 | clang/docs/ReleaseNotes.rst |
 | clang/unittests/Tooling/TransformerTest.cpp |
Commit
4cadb66b490e3323f79a89120c3442456e4c24fa
by steveire[AST] Update matchers to be traverse-aware
Don't match Stmt or Decl nodes not spelled in the source when using TK_IgnoreUnlessSpelledInSource. This prevents accidental modification of source code at incorrect locations.
Differential Revision: https://reviews.llvm.org/D90984
|
 | clang/include/clang/ASTMatchers/ASTMatchersInternal.h |
 | clang/include/clang/ASTMatchers/ASTMatchers.h |
 | clang/unittests/Tooling/TransformerTest.cpp |
 | clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp |
Commit
f3dab16dc721feee669947d4cb95e88ab90c78f5
by zinenko[mlir] Add a _get_default_loc_context utility to Python bindings
This utility function is helpful for dialect-specific builders that need to access the context through location, and the location itself may be either provided as an argument or expected to be recovered from the implicit location stack.
Reviewed By: stellaraccident
Differential Revision: https://reviews.llvm.org/D91623
|
 | mlir/lib/Bindings/Python/mlir/dialects/__init__.py |
 | mlir/test/mlir-tblgen/op-python-bindings.td |
 | mlir/tools/mlir-tblgen/OpPythonBindingGen.cpp |
Commit
cb4fc25c9189ce779e19b31c976b257364d00ea6
by nikita.ppv[BasicAA] Make alias GEP positive offset handling symmetric
aliasGEP() currently implements some special handling for the case where all variable offsets are positive, in which case the constant offset can be taken as the minimal offset. However, it does not perform the same handling for the all-negative case. This means that the alias-analysis result between two GEPs is asymmetric: If GEP1 - GEP2 is all-positive, then GEP2 - GEP1 is all-negative, and the first will result in NoAlias, while the second will result in MayAlias.
Apart from producing sub-optimal results for one order, this also violates our caching assumption. In particular, if BatchAA is used, the cached result depends on the order of the GEPs in the first query. This results in an inconsistency in BatchAA and AA results, which is how I noticed this issue in the first place.
Differential Revision: https://reviews.llvm.org/D91383
|
 | llvm/lib/Analysis/AliasAnalysisEvaluator.cpp |
 | llvm/test/Analysis/BasicAA/zext.ll |
 | llvm/lib/Analysis/BasicAliasAnalysis.cpp |
Commit
f4d9d80fe477ac7963e49265e4d7eb3766688c5a
by i[ARC] Correct ARCInstPrinter::getMnemonic after D90039
|
 | llvm/lib/Target/ARC/MCTargetDesc/ARCInstPrinter.h |
Commit
3f9091888656ff3aabf677caac6054b3fd4eaa0d
by i[ELF] --gc-sections: collect unused .gcc_except_table in section groups and associated text sections
`try ... catch` in an inline function produces `.gcc_except_table.*` in a COMDAT group with GCC or newer Clang (since D83655). For --gc-sections, currently we scan `.eh_frame` pieces and mark liveness of such a `.gcc_except_table.*` and then the associated `.text.*` (if a member in a section group is retained, the others should be retained as well).
Essentially all `.text.*` and `.gcc_except_table.*` compiled from inline functions with `try ... catch` cannot be discarded by the imprecise --gc-sections. Compared with the state before D83655, the output `.gcc_except_table` is smaller (non-prevailing copies in COMDAT groups can now be discarded) but `.text` may be larger, i.e. size regression.
This patch teaches the .eh_frame piece scanning code to not mark `.gcc_except_table` in a section group, thus allow unused `.text.*` and `.gcc_except_table.*` in a section group to be discarded.
Note, non-group `.gcc_except_table` can still not be discarded. That is the status quo.
Reviewed By: grimar, echristo
Differential Revision: https://reviews.llvm.org/D91579
|
 | lld/ELF/MarkLive.cpp |
 | lld/test/ELF/gc-sections-lsda.s |
Commit
9793edd5bf9fa1a3f794bcab03287f6bac9668fa
by antiagainst[MLIR][SPIRV] Rename `spv._address_of` to `spv.mlir.addressof`
This commit does the renaming mentioned in the title in order to bring `spv` dialect closer to the MLIR naming conventions.
Reviewed By: antiagainst
Differential Revision: https://reviews.llvm.org/D91609
|
 | mlir/docs/Dialects/SPIR-V.md |
 | mlir/test/Conversion/SPIRVToLLVM/memory-ops-to-llvm.mlir |
 | mlir/test/Dialect/SPIRV/Transforms/inlining.mlir |
 | mlir/test/Dialect/SPIRV/structure-ops.mlir |
 | mlir/lib/Dialect/SPIRV/Serialization/Deserializer.cpp |
 | mlir/lib/Conversion/SPIRVToLLVM/ConvertSPIRVToLLVM.cpp |
 | mlir/test/Conversion/StandardToSPIRV/alloc.mlir |
 | mlir/include/mlir/Dialect/SPIRV/SPIRVStructureOps.td |
 | mlir/test/Dialect/SPIRV/Serialization/global-variable.mlir |
 | mlir/test/Dialect/SPIRV/Transforms/abi-interface.mlir |
 | mlir/test/Dialect/SPIRV/Serialization/function-call.mlir |
 | mlir/docs/SPIRVToLLVMDialectConversion.md |
 | mlir/test/Dialect/SPIRV/Transforms/abi-load-store.mlir |
 | mlir/test/Dialect/SPIRV/Serialization/phi.mlir |
 | mlir/test/Conversion/GPUToSPIRV/builtins.mlir |
 | mlir/test/Conversion/SPIRVToLLVM/lower-host-to-llvm-calls.mlir |
 | mlir/lib/Dialect/SPIRV/SPIRVOps.cpp |
 | mlir/test/Conversion/GPUToVulkan/lower-gpu-launch-vulkan-launch.mlir |
 | mlir/test/Conversion/GPUToSPIRV/load-store.mlir |
 | mlir/test/Dialect/SPIRV/Serialization/loop.mlir |
 | mlir/test/Dialect/SPIRV/Linking/ModuleCombiner/conflict_resolution.mlir |
 | mlir/test/Dialect/SPIRV/Transforms/layout-decoration.mlir |
 | mlir/test/Dialect/SPIRV/ops.mlir |
Commit
1d7d9d668545818b3b8c1019e9c0a8565f68f62c
by spatel[InstCombine] add tests for masked add; NFC
|
 | llvm/test/Transforms/InstCombine/and.ll |
Commit
433696911a0b8e1b94abd8d8f192380ba7867b61
by spatel[InstCombine] relax constraints on mask-of-add
There are 2 changes: 1. Remove the unnecessary one-use check. 2. Remove the unnecessary power-of-2 check.
https://rise4fun.com/Alive/V6fP
Name: add with low mask Pre: (C1 & (-1 u>> countLeadingZeros(C2))) == 0 %a = add i8 %x, C1 %r = and i8 %a, C2 => %r = and i8 %x, C2
|
 | llvm/test/Transforms/InstCombine/and.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp |
Commit
c15e5bdfb7b95aa90ceb059501da679ca2f931db
by spatel[InstCombine] add vector test for mask of add; NFC
|
 | llvm/test/Transforms/InstCombine/and.ll |
Commit
f791ad7e1e9850a6dc28747ad3d8b21b9e382c31
by spatel[InstCombine] remove scalar constraint for mask-of-add fold
https://rise4fun.com/Alive/V6fP
Name: add with low mask Pre: (C1 & (-1 u>> countLeadingZeros(C2))) == 0 %a = add i8 %x, C1 %r = and i8 %a, C2 => %r = and i8 %x, C2
|
 | llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp |
 | llvm/test/Transforms/InstCombine/and.ll |
Commit
8a4fe75d70e1640078c464b9da76ffbe0a49c014
by jurahul[NFC] Add unit tests for printing/parsing of variadic operands and results.
Differential Revision: https://reviews.llvm.org/D91557
|
 | mlir/test/mlir-tblgen/op-format.mlir |
 | mlir/test/lib/Dialect/Test/TestOps.td |
Commit
27012c0f75c2e4891277d0d14f9f97a9f564d596
by Jonas Devlieghere[debugserver] Add option to propagate SIGSEGV to target process
Adds a command line option that makes debugserver propagate the SIGSEGV signal to the target process.
Motivation: I'm one of the maintainers of Delve [1] a debugger for Go. We use debugserver as our backend on macOS and one of the most often reported bugs is that, on macOS, we don't propagate SIGSEGV back to the target process [2]. Sometimes some programs will actually cause a SIGSEGV, by design, and then handle it. Those programs can not be debugged at all.
Since catching signals isn't very important for a Go debugger I'd much rather have a command line option in debugserver that causes it to let SIGSEGV go directly to the target process.
[1] https://github.com/go-delve/delve/ [2] https://github.com/go-delve/delve/issues/852
Differential revision: https://reviews.llvm.org/D89315
|
 | lldb/tools/debugserver/source/MacOSX/MachProcess.mm |
 | lldb/tools/debugserver/source/MacOSX/MachProcess.h |
 | lldb/tools/debugserver/source/MacOSX/MachTask.mm |
 | lldb/tools/debugserver/source/RNBRemote.cpp |
 | lldb/tools/debugserver/source/DNB.cpp |
 | lldb/tools/debugserver/source/DNB.h |
 | lldb/tools/debugserver/source/RNBContext.h |
 | lldb/tools/debugserver/source/MacOSX/MachTask.h |
 | lldb/tools/debugserver/source/debugserver.cpp |
Commit
3279347da05e590c970b37540d7e3ac873ae3e1d
by apollo.mobility[BPI] Look through bitcasts in calcZeroHeuristic
Constant hoisting may hide the constant value behind bitcast for And's operand. Track down the constant to make the BFI result consistent regardless of hoisting.
Differential Revision: https://reviews.llvm.org/D91450
|
 | llvm/lib/Analysis/BranchProbabilityInfo.cpp |
 | llvm/test/Analysis/BranchProbabilityInfo/hoist.ll |
Commit
e741fa5c92bcfcf49b76382c18eec748387ad91b
by llvm-dev[X86] vec_fabs.ll - replace X32 check prefix with X86. NFC.
We typically use X32 for gnux32 triples
|
 | llvm/test/CodeGen/X86/vec_fabs.ll |
Commit
3b4f9c16bf24dce2fe3f859a8a04304e76dace8b
by llvm-dev[X86] rot16.ll - replace X32 check prefix with X86. NFC.
We typically use X32 for gnux32 triples
|
 | llvm/test/CodeGen/X86/rot16.ll |
Commit
abf29d9862d898c02f3df95cbdc4e9bdba396b6f
by llvm-dev[InstCombine] visitAnd - use m_SpecificInt instead of m_APInt + comparison. NFCI.
m_SpecificInt has the same 'no undef element' behaviour as m_APInt so no change there, and anyway we have test coverage for undef elements in the fold.
Noticed while fixing a Wshadow warning about shadow Value *X, *Y variables.
|
 | llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp |
Commit
6ef6beaa570fffb75c75aa4c555b0f9d7e507929
by steveireComment out new test while I figure out what is wrong with it
|
 | clang/unittests/Tooling/TransformerTest.cpp |
Commit
bedaad44953a99138bda0ee08ceeb5dfeec3c35c
by csigg[mlir] Simplify std.alloc lowering to LLVM.
std.alloc only supports memrefs with identity layout, which means we can simplify the lowering to LLVM and compute strides only from (static and dynamic) sizes.
Reviewed By: ftynse
Differential Revision: https://reviews.llvm.org/D91549
|
 | mlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVM.h |
 | mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp |
 | mlir/lib/Conversion/SPIRVToLLVM/ConvertLaunchFuncToLLVMCalls.cpp |
 | mlir/test/Conversion/StandardToLLVM/convert-dynamic-memref-ops.mlir |
 | mlir/test/Conversion/StandardToLLVM/standard-to-llvm.mlir |
 | mlir/test/Conversion/StandardToLLVM/convert-static-memref-ops.mlir |
Commit
baa2aa28f56259de7fa012178ada9e5ba07ec76c
by thakislld: Add --color-diagnostic to MachO port, harmonize others
This adds `--[no-]color-diagnostics[=auto,never,always]` to the MachO port and harmonizes the flag in the other ports: - Consistently use MetaVarName - Consistently document the non-eq version as alias of the eq version - Use B<> in the ports that have it (no-op, shorter) - Fix oversight in COFF port that made the --no flag have the wrong prefix
Differential Revision: https://reviews.llvm.org/D91640
|
 | lld/test/MachO/color-diagnostics.test |
 | lld/COFF/Options.td |
 | lld/MachO/Options.td |
 | lld/wasm/Options.td |
 | lld/MachO/Driver.cpp |
 | lld/ELF/Options.td |
Commit
f7ebdec987f52262fa3e2b0172f0881a9c4f224f
by llvm-dev[InstCombine] visitAnd - remove unnecessary Value *X, *Y shadow variables. NFCI.
Fixes a number of Wshadow warnings.
|
 | llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp |
Commit
c331b7cc38aa84433233ebe064269179eb463015
by llvm-dev[X86] select-of-fp-constants.ll - replace X32 check prefix with X86. NFC.
We typically use X32 for gnux32 triples
|
 | llvm/test/CodeGen/X86/select-of-fp-constants.ll |
Commit
811026b9870ac777136df6bcbb631c985e432aca
by llvm-dev[X86] segmented-stacks tests - replace X32 check prefix with X86 for non-gnux32 tests. NFC.
Only use X32 for the gnux32 triples in the tests
|
 | llvm/test/CodeGen/X86/segmented-stacks-dynamic.ll |
 | llvm/test/CodeGen/X86/segmented-stacks.ll |
 | llvm/test/CodeGen/X86/segmented-stacks-standalone.ll |
Commit
1d7abcf99e3d8f9ac7e24be5758da7cfef656400
by joe.ellis[AArch64][SVE] Add tests for VLST -> VLAT lax conversions
These were previously missing from the SVE lax conversions tests introduced in this commit:
23a96b84a8d985b686a4e06dec1f7aebc0cca6c6 (https://reviews.llvm.org/D91067)
Differential Revision: https://reviews.llvm.org/D91642
|
 | clang/test/Sema/aarch64-sve-lax-vector-conversions.c |
 | clang/test/SemaCXX/aarch64-sve-lax-vector-conversions.cpp |
Commit
121f27f3ac811c2add4d43f78847bfb14ad0175d
by Louis Dionne[libc++] Only include_next <wctype.h> if it exists
This allows building on platforms that don't provide that header.
|
 | libcxx/include/wctype.h |
Commit
ef1a4169e8c7f6cf76e704827f4567b9a1b9b0e1
by steveire[Transformer] Split ForStmt test into two
It is apparently not possible to have two rewrites in one gtest function because atomic changes in the test harness accumulate.
|
 | clang/unittests/Tooling/TransformerTest.cpp |
Commit
48138e7338c19f4f7347e470e9d10b0f24ff893d
by Louis Dionne[libc++] Do not error out when we don't know the file format
Erroring out prevents the library from working with other file formats (e.g. in embedded). Since that error does not guard us from doing something incorrect, it seems fine to just remove it.
|
 | libcxx/include/__config |
Commit
0333567c47c0d496bba146cd4f7b65a8ef8ba113
by a.bataev[OPENMP] Fix PR47999: correctly map implicit firstprivates in outer tasks.
If the variable is implicitly firstprivatized in the inner task-based region, it also must be firstprivatized in outer task-based regions. Previously firstprivates were captured in tasks but later it was optimized to reduce the memory usage. But still need to mark such variables as implicit firstprivate in outer tasks.
Differential Revision: https://reviews.llvm.org/D91627
|
 | clang/lib/Sema/SemaOpenMP.cpp |
 | clang/test/OpenMP/task_in_task_firstprivate_codegen.cpp |
Commit
821439c5063bc38befca9e7ee60f07cff7309003
by llvm-dev[X86] emutls-pic.ll - replace X32 check prefix with X86. NFC.
We typically use X32 for gnux32 triples
|
 | llvm/test/CodeGen/X86/emutls-pic.ll |
Commit
ba82e7ee5c0c7431bfba2da281aeb5fcf2ac5969
by llvm-dev[X86] emutls-pie.ll - replace X32 check prefix with X86. NFC.
We typically use X32 for gnux32 triples
|
 | llvm/test/CodeGen/X86/emutls-pie.ll |
Commit
d035bc3e6b87db281da610f64392517036bf5411
by llvm-dev[X86] emutls.ll - replace X32 check prefix with X86. NFC.
We typically use X32 for gnux32 triples
|
 | llvm/test/CodeGen/X86/emutls.ll |
Commit
49e0de5f6fe6470523576fb01d38021ea2957260
by llvm-dev[X86] byval tests - replace X32 check prefix with X86. NFC.
We typically use X32 for gnux32 triples
|
 | llvm/test/CodeGen/X86/byval.ll |
 | llvm/test/CodeGen/X86/byval3.ll |
 | llvm/test/CodeGen/X86/byval4.ll |
 | llvm/test/CodeGen/X86/byval5.ll |
 | llvm/test/CodeGen/X86/byval2.ll |
Commit
4a66a1d17abfb7cf34081f0620cb2f53b40cca97
by spatel[InstCombine] allow vectors for masked-add -> xor fold
https://rise4fun.com/Alive/I4Ge
Name: add with pow2 mask Pre: isPowerOf2(C2) && (C1 & C2) != 0 && (C1 & (C2-1)) == 0 %a = add i8 %x, C1 %r = and i8 %a, C2 => %n = and i8 %x, C2 %r = xor i8 %n, C2
|
 | llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp |
 | llvm/test/Transforms/InstCombine/and.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineInternal.h |
Commit
a200d6cdf0f7eafafead147f2e18e5456ed7bbe1
by michaelrj[libc] make part of libc's unit test framework independent of llvm
This is mostly changing stringref to std::string, outs() to cout, and small supporting changes. This will make running unit tests possible on systems that are only grabbing the libc part of llvm.
Reviewed By: sivachandra
Differential Revision: https://reviews.llvm.org/D91568
|
 | libc/utils/UnitTest/Test.cpp |
Commit
a461e76b6f973d3f40944b83a46defba0c136777
by jonathan_roelofs[MachineScheduler] Inform pass infra of post-ra scheduler's dependencies
Differential Revision: https://reviews.llvm.org/D91561
|
 | llvm/lib/CodeGen/MachineScheduler.cpp |
Commit
5439db05e74044a239c0fd37f8594b6b67dd3c02
by nawrin.sultana[OpenMP] Add omp_realloc implementation
This patch adds omp_realloc function implementation according to OpenMP 5.1 specification.
Differential Revision: https://reviews.llvm.org/D90971
|
 | openmp/runtime/src/dllexports |
 | openmp/runtime/src/kmp_stub.cpp |
 | openmp/runtime/test/api/omp_calloc_def_fb.c |
 | openmp/runtime/src/include/omp.h.var |
 | openmp/runtime/src/kmp.h |
 | openmp/runtime/test/api/omp_realloc_null_ptr.c |
 | openmp/runtime/tools/generate-def.pl |
 | openmp/runtime/test/api/omp_realloc_def_fb.c |
 | openmp/runtime/test/api/omp_realloc_size_0.c |
 | openmp/runtime/src/kmp_alloc.cpp |
 | openmp/runtime/src/kmp_csupport.cpp |
 | openmp/runtime/test/api/omp_calloc_size_0.c |
Commit
08834979e3aca762b0db05fbc73998aa07753bc2
by spatel[SLP] avoid unreachable code crash/infloop
Example based on the post-commit comments for D88735.
|
 | llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp |
 | llvm/test/Transforms/SLPVectorizer/X86/horizontal.ll |
Commit
55d310adc068a569eaa5370e5b94428ed9ea7ed8
by i[ELF] Fix interaction between --unresolved-symbols= and --[no-]allow-shlib-undefined
As mentioned in https://reviews.llvm.org/D67479#1667256 ,
* `--[no-]allow-shlib-undefined` control the diagnostic for an unresolved symbol in a shared object * `-z defs/-z undefs` control the diagnostic for an unresolved symbol in a regular object file * `--unresolved-symbols=` controls both bits.
In addition, make --warn-unresolved-symbols affect --no-allow-shlib-undefined.
This patch makes the behavior match GNU ld.
Reviewed By: psmith
Differential Revision: https://reviews.llvm.org/D91510
|
 | lld/ELF/Driver.cpp |
 | lld/ELF/Writer.cpp |
 | lld/test/ELF/unresolved-symbols.s |
 | lld/ELF/Config.h |
 | lld/test/ELF/allow-shlib-undefined.s |
Commit
3fd777403349e920979a9ea30eaf05d7317d7b09
by psteinfeld[flang] Fix FIR test failures
When doing out-of-tree builds, FIR tests were failing. I made a change similar to the one by @jurahul to fix this.
Differential Revision: https://reviews.llvm.org/D91654
|
 | flang/test/Fir/fir-ops.fir |
Commit
44a11c342caa70efe9f9d07db3e66dd48f701aca
by hansang.bae[OpenMP] Use explicit type casting in kmp_atomic.cpp
Differential Revision: https://reviews.llvm.org/D91105
|
 | openmp/runtime/src/kmp_stats.h |
 | openmp/runtime/src/kmp_atomic.cpp |
Commit
792f8e1114afa7f40227eee2820c6e425ee07c3b
by ctetreau[SVE] Take constant fold fast path for splatted vscale vectors
This should be a perfectly reasonable operation for scalable vectors. Currently, it only works for zeroinitializer values of ScalableVectorType, but the fundamental operation is sound and it should be possible to make it work for other splats
Reviewed By: david-arm
Differential Revision: https://reviews.llvm.org/D77442
|
 | llvm/lib/IR/ConstantFold.cpp |
 | llvm/test/Transforms/InstSimplify/cmp-vec-fast-path.ll |
 | llvm/test/Transforms/InstSimplify/ConstProp/vscale.ll |
Commit
eced4a8e6fe3041b699bd22b5b89bea47c84c51a
by ajcbik[mlir] [sparse] start of sparse tensor compiler support
As discussed in https://llvm.discourse.group/t/mlir-support-for-sparse-tensors/2020 this CL is the start of sparse tensor compiler support in MLIR. Starting with a "dense" kernel expressed in the Linalg dialect together with per-dimension sparsity annotations on the tensors, the compiler automatically lowers the kernel to sparse code using the methods described in Fredrik Kjolstad's thesis.
Many details are still TBD. For example, the sparse "bufferization" is purely done locally since we don't have a global solution for propagating sparsity yet. Furthermore, code to input and output the sparse tensors is missing. Nevertheless, with some hand modifications, the generated MLIR can be easily converted into runnable code already.
Reviewed By: nicolasvasilache, ftynse
Differential Revision: https://reviews.llvm.org/D90994
|
 | mlir/test/lib/Transforms/TestSparsification.cpp |
 | mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h |
 | mlir/test/Dialect/Linalg/sparse_2d.mlir |
 | mlir/test/Dialect/Linalg/sparse_3d.mlir |
 | mlir/tools/mlir-opt/mlir-opt.cpp |
 | mlir/test/lib/Transforms/CMakeLists.txt |
 | mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt |
 | mlir/lib/Dialect/Linalg/Transforms/Sparsification.cpp |
 | mlir/test/Dialect/Linalg/sparse_1d.mlir |
Commit
bc9803404042aa45417cf4f6925fb06b44f1ad93
by akhuang[llvm-symbolizer] Add inline stack traces for Windows.
This adds inline stack frames for symbolizing on Windows.
Differential Revision: https://reviews.llvm.org/D88988
|
 | llvm/include/llvm/DebugInfo/PDB/Native/NativeEnumSymbols.h |
 | llvm/include/llvm/DebugInfo/PDB/PDBSymbol.h |
 | llvm/lib/DebugInfo/PDB/Native/NativeInlineSiteSymbol.cpp |
 | llvm/utils/gn/secondary/llvm/lib/DebugInfo/PDB/BUILD.gn |
 | llvm/include/llvm/DebugInfo/PDB/Native/NativeSession.h |
 | llvm/include/llvm/DebugInfo/PDB/Native/NativeInlineSiteSymbol.h |
 | llvm/lib/DebugInfo/PDB/Native/NativeFunctionSymbol.cpp |
 | llvm/include/llvm/DebugInfo/PDB/Native/NativeFunctionSymbol.h |
 | llvm/lib/DebugInfo/PDB/Native/SymbolCache.cpp |
 | compiler-rt/test/asan/TestCases/suppressions-function.cpp |
 | llvm/lib/DebugInfo/PDB/Native/NativeEnumSymbols.cpp |
 | llvm/lib/DebugInfo/PDB/PDBContext.cpp |
 | llvm/lib/DebugInfo/PDB/CMakeLists.txt |
 | llvm/include/llvm/DebugInfo/PDB/Native/SymbolCache.h |
 | llvm/lib/DebugInfo/PDB/PDBSymbol.cpp |
 | lld/test/COFF/symbolizer-inline.s |
 | llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp |
Commit
8fb4417d82bc9d7285734cd63cdd06f1d6926be6
by llvm-project[LLVMFronted][tests] Add basic OpenMP parsing tests.
As noticed in D91470, some of the functions of LLVMFrontend, are not tested within the library itself (but indirectly by its users clang and flang). In particular, the file OMP.cpp which is generated by tablegen was not tested at all.
Add tests for the parsing helpers in OMP.cpp. These are not meant to be exhaustive tests, just to ensure that we have some basic tests for all API functions.
Reviewed By: clementval
Differential Revision: https://reviews.llvm.org/D91643
|
 | llvm/unittests/Frontend/CMakeLists.txt |
 | llvm/unittests/Frontend/OpenMPParsingTest.cpp |
Commit
b2613fb2f0f53691dd0211895afbb9413457fca7
by llvmgnsyncbot[gn build] Port 8fb4417d82b
|
 | llvm/utils/gn/secondary/llvm/unittests/Frontend/BUILD.gn |
Commit
a72f11ee20fec2df5611c49ec5ec2ce32ab8eb4c
by erich.keaneFix a pair of tests that would fail on a win32 box
The tests don't specify a triple in some cases, since they shouldn't be necessary, so I've updated the tests to detect via macro when they are running on win32 to give the slightly altered diagnostic.
|
 | clang/test/SemaOpenCLCXX/address-space-lambda.cl |
 | clang/test/CXX/expr/expr.prim/expr.prim.lambda/default-arguments.cpp |
Commit
8e923ec2a803d54154aaa0079c1cfcf146b7a22f
by richardFix assertions and bad warnings on extremely wide bit-fields.
We used to produce a bogus warning if the width couldn't be represented in 32 bits, and assert if it couldn't be represented in 64 bits.
|
 | clang/lib/Sema/SemaDecl.cpp |
 | clang/include/clang/Basic/DiagnosticSemaKinds.td |
 | clang/test/SemaCXX/bitfield-layout.cpp |
Commit
bb8f2585c6eab263916757435d71df16d92de4a8
by sivachandra[libc] Add implementations of ldexp[f|l].
The rounding behavior of NormalFloat to float format has been changed to round to nearest. Also, a bug in NormalFloat to subnormal number conversion has been fixed.
Reviewed By: lntue
Differential Revision: https://reviews.llvm.org/D91591
|
 | libc/config/linux/aarch64/entrypoints.txt |
 | libc/test/src/math/LdExpTest.h |
 | libc/config/linux/x86_64/entrypoints.txt |
 | libc/src/math/ldexpf.cpp |
 | libc/src/math/ldexpf.h |
 | libc/test/src/math/ldexp_test.cpp |
 | libc/spec/stdc.td |
 | libc/utils/FPUtil/ManipulationFunctions.h |
 | libc/src/math/ldexpl.cpp |
 | libc/src/math/ldexpl.h |
 | libc/src/math/CMakeLists.txt |
 | libc/utils/FPUtil/NormalFloat.h |
 | libc/test/src/math/ldexpf_test.cpp |
 | libc/test/src/math/ldexpl_test.cpp |
 | libc/src/math/ldexp.cpp |
 | libc/test/src/math/CMakeLists.txt |
 | libc/src/math/ldexp.h |
Commit
16de50895e96adbe261a5ce2498366bda7b3fccd
by llvm-projecthonor Python2_EXECUTABLE and Python3_EXECUTABLE when they are passed to cmake
CMake's find_package(Python3) and find_package(Python2) packages have a PYTHON_EXECUTABLE, Python2_EXECUTABLE, and Python3_EXECUTABLE cmake variables which control which version of python is built against. As far as I can tell, the rest of LLVM honors these variables. This can cause the build process to fail when if the automatically selected version of Python can't run due to modifications of LD_LIBRARY_PATH when using spack. The corresponding Spack issue is https://github.com/spack/spack/issues/19908. The corresponding LLVM issue is 48180
I believe an appropriate fix is to add the variables to the list of PASSTHROUGH_VARIABLES in cmake/Modules/AddCompilerRT.cmake, and this fixed compilation errors for me.
This bug affects distributions like Gentoo and package managers like Spack which allow for combinatorial versioning.
Reviewed By: Meinersbur
Differential Revision: https://reviews.llvm.org/D91536
|
 | compiler-rt/cmake/Modules/AddCompilerRT.cmake |
Commit
f8f6d6455f963d5924990824866c4b55ae694639
by Artem DergachevRevert "Revert "[analyzer] NFC: Move IssueHash to libAnalysis.""
This reverts commit 662ed9e67adace3d011f42478bc8bcb1773a2821.
|
 | clang/lib/StaticAnalyzer/Core/CMakeLists.txt |
 | clang/include/clang/Analysis/IssueHash.h |
 | clang/lib/Analysis/IssueHash.cpp |
 | clang/include/clang/StaticAnalyzer/Core/IssueHash.h |
 | clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp |
 | clang/lib/Analysis/CMakeLists.txt |
 | clang/lib/StaticAnalyzer/Core/IssueHash.cpp |
 | clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp |
 | clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp |
Commit
e5d2409689196cd1e5a8ba6f860204390f485fbc
by llvmgnsyncbot[gn build] Port f8f6d6455f9
|
 | llvm/utils/gn/secondary/clang/lib/Analysis/BUILD.gn |
 | llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Core/BUILD.gn |
Commit
206884bf90cd9793558a9c80315ca3cfa35c25d6
by sbc[lld][WebAssembly] Implement --unresolved-symbols
This is a more full featured version of ``--allow-undefined``. The semantics of the different methods are as follows:
report-all:
Report all unresolved symbols. This is the default. Normally the linker will generate an error message for each reported unresolved symbol but the option ``--warn-unresolved-symbols`` can change this to a warning.
ignore-all:
Resolve all undefined symbols to zero. For data and function addresses this is trivial. For direct function calls, the linker will generate a trapping stub function in place of the undefined function.
import-functions:
Generate WebAssembly imports for any undefined functions. Undefined data symbols are resolved to zero as in `ignore-all`. This corresponds to the legacy ``--allow-undefined`` flag.
The plan is to followup with a new mode called `import-dynamic` which allows for statically linked binaries to refer to both data and functions symbols from the embedder.
Differential Revision: https://reviews.llvm.org/D79248
|
 | lld/test/wasm/undefined-weak-call.ll |
 | lld/test/wasm/unresolved-symbols.s |
 | lld/wasm/SymbolTable.h |
 | lld/test/wasm/weak-undefined.ll |
 | lld/test/wasm/cxx-mangling.ll |
 | lld/wasm/Relocations.cpp |
 | lld/test/wasm/lto/weak-undefined.ll |
 | lld/wasm/Writer.cpp |
 | lld/wasm/SymbolTable.cpp |
 | lld/wasm/Options.td |
 | lld/wasm/Symbols.h |
 | lld/wasm/Config.h |
 | lld/test/wasm/archive-weak-undefined.ll |
 | lld/wasm/Symbols.cpp |
 | lld/docs/WebAssembly.rst |
 | lld/wasm/Driver.cpp |
Commit
b13415b59b1fbb01da0914678018c7e0eefa3291
by ravishankarm[mlir][Linalg] Add dependence type to LinalgDependenceGraphElem.
Differential Revision: https://reviews.llvm.org/D91502
|
 | mlir/include/mlir/Dialect/Linalg/Analysis/DependenceAnalysis.h |
 | mlir/lib/Dialect/Linalg/Analysis/DependenceAnalysis.cpp |
Commit
67e0f791c93a23d0a523f3f05082c020f7c9109f
by aeubanks[gn build] Use forward slashes for goma directory
gn generates improper compile_commands.json files by not escaping backslashes.
|
 | llvm/utils/gn/build/toolchain/BUILD.gn |
Commit
49439ff6c09ad5afc0bc2b2ecae5bb6e6a70455a
by aeubanks[CMake] Fix ExtensionDependencies.inc with multiple extensions
When polly is enabled and LLVM_BYE_LINK_INTO_TOOLS=ON is on, ExtensionDependencies.inc does not compile.
$ ninja tools/llvm-config/CMakeFiles/llvm-config.dir/llvm-config.cpp.o tools/llvm-config/ExtensionDependencies.inc:8:1: error: excess elements in struct initializer {{"Bye", {"Bye",nullptr}}},
ExtensionDependencies.inc pre-patch: std::array<ExtensionDescriptor, 2> AvailableExtensions{ {{"Polly", {"support", "core", ...,nullptr}}}, {{"Bye", {"Bye",nullptr}}}, };
ExtensionDependencies.inc with this patch: std::array<ExtensionDescriptor, 2> AvailableExtensions{ ExtensionDescriptor{"Polly", {"support", "core", ...,nullptr}}, ExtensionDescriptor{"Bye", {"Bye",nullptr}}, };
Reviewed By: Meinersbur
Differential Revision: https://reviews.llvm.org/D91641
|
 | llvm/cmake/modules/AddLLVM.cmake |
Commit
dd6087cac087046b5cd29a21e7fff2732fb35997
by ndesaulniersRevert "[BitCode] decode nossp fn attr"
This reverts commit 0b11d018cc2f2c6bea5dac8dc72140cdb502ca02.
Going with a simpler approach.
|
 | llvm/lib/Bitcode/Reader/BitcodeReader.cpp |
 | llvm/test/Bitcode/attributes.ll |
Commit
f4c6080ab820219c5bf78b0c2143e7fa194da296
by ndesaulniersRevert "[IR] add fn attr for no_stack_protector; prevent inlining on mismatch"
This reverts commit b7926ce6d7a83cdf70c68d82bc3389c04009b841.
Going with a simpler approach.
|
 | llvm/lib/Transforms/Utils/InlineFunction.cpp |
 | llvm/test/Verifier/function-attribute-nossp-ssp-sspreq-sspstrong.ll |
 | llvm/utils/emacs/llvm-mode.el |
 | llvm/utils/llvm.grm |
 | clang/test/Frontend/optimization-remark-missed-inline-stack-protectors.c |
 | llvm/lib/AsmParser/LLToken.h |
 | llvm/docs/BitCodeFormat.rst |
 | llvm/lib/IR/Attributes.cpp |
 | llvm/lib/CodeGen/StackProtector.cpp |
 | llvm/lib/Transforms/Utils/CodeExtractor.cpp |
 | llvm/bindings/go/llvm/ir_test.go |
 | llvm/include/llvm/IR/Attributes.td |
 | llvm/test/Transforms/Inline/inline_ssp.ll |
 | llvm/utils/kate/llvm.xml |
 | clang/test/CodeGen/stack-protector.c |
 | clang/include/clang/Basic/AttrDocs.td |
 | llvm/lib/AsmParser/LLLexer.cpp |
 | llvm/lib/AsmParser/LLParser.cpp |
 | llvm/utils/vscode/llvm/syntaxes/ll.tmLanguage.yaml |
 | clang/lib/CodeGen/CodeGenModule.cpp |
 | llvm/docs/LangRef.rst |
 | llvm/test/Transforms/CodeExtractor/PartialInlineAttributes.ll |
 | llvm/test/Transforms/Inline/inline_nossp.ll |
 | llvm/lib/IR/Verifier.cpp |
 | llvm/bindings/ocaml/llvm/llvm.ml |
 | llvm/include/llvm/Bitcode/LLVMBitCodes.h |
 | llvm/lib/Bitcode/Writer/BitcodeWriter.cpp |
 | llvm/test/CodeGen/X86/stack-protector-2.ll |
 | llvm/utils/vim/syntax/llvm.vim |
 | llvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp |
Commit
5834996fefc937d6211dc8c8a5b200068753391a
by kyrtzidis[Frontend] Add flag to allow PCM generation despite compiler errors
As with precompiled headers, it's useful for indexers to be able to continue through compiler errors in dependent modules.
Resolves rdar://69816264
Reviewed By: akyrtzi
Differential Revision: https://reviews.llvm.org/D91580
|
 | clang/test/Modules/load-module-with-errors.m |
 | clang/test/Modules/Inputs/error.h |
 | clang/include/clang/Frontend/ASTUnit.h |
 | clang/lib/Frontend/CompilerInstance.cpp |
 | clang/include/clang/Frontend/FrontendOptions.h |
 | clang/tools/libclang/CIndex.cpp |
 | clang/include/clang/Frontend/FrontendActions.h |
 | clang/tools/c-index-test/core_main.cpp |
 | clang/lib/Frontend/ASTUnit.cpp |
 | clang/test/Modules/Inputs/module.map |
 | clang/include/clang/Driver/Options.td |
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | clang/lib/Frontend/FrontendActions.cpp |
Commit
6bfb4120ead7d7503f079960d7f98eacdf0be03a
by dblaikieset the alignment of mlir::AttributeStorage to 64 bit explicitly to fix 32 bit platform
On some platform (like WebAssembly), alignof(mlir::AttributeStorage) is 4 instead of 8. As a result, it makes the program crashes since PointerLikeTypeTraits<mlir::Attribute>::NumLowBitsAvailable is 3.
So I explicitly set the alignment of mlir::AttributeStoarge to 64 bits, and set PointerLikeTypeTraits<mlir::Attribute>::NumLowBitsAvailable according to it.
I also fixed an another related error (alignof(NamedAttribute) -> alignof(DictionaryAttributeStorage)) based on reviewer's comments.
Reviewed By: dblaikie, rriddle
Differential Revision: https://reviews.llvm.org/D91062
|
 | mlir/include/mlir/IR/Attributes.h |
 | mlir/include/mlir/IR/AttributeSupport.h |
 | mlir/lib/IR/AttributeDetail.h |
Commit
63a8ee3ddabe633bd646ea5abb8b9fea38b3d2f2
by qshanz[NFC][Test] Add more tests for IEEE Longdouble for PowerPC
|
 | llvm/test/CodeGen/PowerPC/f128-arith.ll |
 | llvm/test/CodeGen/PowerPC/f128-conv.ll |
Commit
0139c8af8da7a89c02ed802df46492f5caddb41b
by aeubanks[CFGuard] Add address-taken IAT tables and delay-load support
This patch adds support for creating Guard Address-Taken IAT Entry Tables (.giats$y sections) in object files, matching the behavior of MSVC. These contain lists of address-taken imported functions, which are used by the linker to create the final GIATS table. Additionally, if any DLLs are delay-loaded, the linker must look through the .giats tables and add the respective load thunks of address-taken imports to the GFIDS table, as these are also valid call targets.
Reviewed By: rnk
Differential Revision: https://reviews.llvm.org/D87544
|
 | llvm/lib/CodeGen/AsmPrinter/WinCFGuard.cpp |
 | llvm/tools/llvm-readobj/COFFDumper.cpp |
 | lld/COFF/InputFiles.h |
 | llvm/test/CodeGen/WinCFGuard/cfguard-giats.ll |
 | lld/COFF/Writer.cpp |
 | llvm/lib/MC/MCObjectFileInfo.cpp |
 | lld/COFF/Symbols.h |
 | lld/COFF/ICF.cpp |
 | lld/COFF/DLL.cpp |
 | lld/test/COFF/giats.s |
 | lld/COFF/InputFiles.cpp |
 | llvm/lib/CodeGen/AsmPrinter/WinCFGuard.h |
 | llvm/include/llvm/MC/MCObjectFileInfo.h |
Commit
41bcc05e2a4e3062eb12ac6e071bc835decc38f5
by Artem DergachevRevert "Revert "[analyzer] NFC: Move path diagnostic consumer implementations to libAnalysis.""
This reverts commit 77bb3ebebbca13f0648beb433fbd1b06ba95a19c.
|
 | clang/lib/StaticAnalyzer/Core/CMakeLists.txt |
 | clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp |
 | clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h |
 | clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp |
 | clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp |
 | clang/include/clang/StaticAnalyzer/Core/Analyses.def |
 | clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp |
 | clang/lib/Analysis/HTMLPathDiagnosticConsumer.cpp |
 | clang/include/clang/Analysis/PathDiagnosticConsumers.h |
 | clang/include/clang/Analysis/PathDiagnosticConsumers.def |
 | clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp |
 | clang/lib/Analysis/CMakeLists.txt |
 | clang/lib/Analysis/SarifPathDiagnosticConsumer.cpp |
 | clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h |
 | clang/include/clang/module.modulemap |
 | clang/lib/Analysis/PlistPathDiagnosticConsumer.cpp |
 | clang/lib/Analysis/TextPathDiagnosticConsumer.cpp |
 | clang/lib/Analysis/PlistHTMLPathDiagnosticConsumer.cpp |
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h |
Commit
39f1eeb07df619d627d9c4792311108696fb9d00
by llvmgnsyncbot[gn build] Port 41bcc05e2a4
|
 | llvm/utils/gn/secondary/clang/lib/Analysis/BUILD.gn |
 | llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Core/BUILD.gn |
Commit
6a89cb8136f3435bd977b419b683dc0acc98e61e
by Artem DergachevRevert "Revert "Revert "[analyzer] NFC: Move path diagnostic consumer implementations to libAnalysis."""
This reverts commit 41bcc05e2a4e3062eb12ac6e071bc835decc38f5.
|
 | clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h |
 | clang/lib/Analysis/TextPathDiagnosticConsumer.cpp |
 | clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h |
 | clang/include/clang/Analysis/PathDiagnosticConsumers.h |
 | clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp |
 | clang/include/clang/Analysis/PathDiagnosticConsumers.def |
 | clang/lib/StaticAnalyzer/Core/CMakeLists.txt |
 | clang/lib/Analysis/SarifPathDiagnosticConsumer.cpp |
 | clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h |
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | clang/include/clang/module.modulemap |
 | clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp |
 | clang/lib/Analysis/CMakeLists.txt |
 | clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp |
 | clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp |
 | clang/lib/Analysis/HTMLPathDiagnosticConsumer.cpp |
 | clang/include/clang/StaticAnalyzer/Core/Analyses.def |
 | clang/lib/Analysis/PlistHTMLPathDiagnosticConsumer.cpp |
 | clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp |
 | clang/lib/Analysis/PlistPathDiagnosticConsumer.cpp |
Commit
cba3e783389a6319927b4755d3fb22e2464b30a1
by yrouban[NewPM] Disable PreservedCFGChecker and add regression unit tests
The design of the PreservedCFG Checker (landed with the commit 28012e00d80b9) has a fundamental flaw which makes it incorrect. The checker is based on the PreservedAnalyses result returned by functional passes: if CFGAnalyses is in the returned PreservedAnalyses set, then the checker asserts that the CFG snapshot saved before the pass is equal to the CFG snapshot taken after the the pass. The problem is in passes that change CFG and invalidate CFGAnalyses on their own. Such passes do not return CFGanalyses in the returned PreservedAnalyses. So the checker mistakenly expects CFG unchanged. As an example see the class TestSimplifyCFGInvalidatingAnalysisPass in the new tests.
It is interesting that the bug was not found in LLVM. That is because the CFG checker ran only if CFGAnalyses was checked incorrectly: if (!PassPA.allAnalysesInSetPreserved<CFGAnalyses>()) return;
but must be checked as follows: auto PAC = PA.getChecker<PreservedCFGCheckerAnalysis>(); if (!(PAC.preserved() || PAC.preservedSet<AllAnalysesOn<Function>>() || PAC.preservedSet<CFGAnalyses>()) return;
A fully redesigned checker will be sent as a separate follow-up patch.
Reviewed By: Serguei Katkov, Jakub Kuderski
Differential Revision: https://reviews.llvm.org/D91324
|
 | llvm/lib/Passes/StandardInstrumentations.cpp |
 | llvm/unittests/IR/PassManagerTest.cpp |
Commit
2b9a708491b3533c14db8bb9b43fd61c0ba4e1e1
by llvmgnsyncbot[gn build] Port 6a89cb8136f
|
 | llvm/utils/gn/secondary/clang/lib/Analysis/BUILD.gn |
 | llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Core/BUILD.gn |
Commit
9c09757bca58a49d87f70584cff6f5bcb20f29b1
by eric[libc++] Revert switch-based std::variant implementation again.
These changes cause substantial binary size increases for non-opt builds. For example, the visit.pass.cpp test grows from 20k to 420k.
Further work will be done to re-land this patch without the size increases, but that work is proving too tricky to fix forward.
This patch fully reverts:
* 35d226911165a9aae1f01f521a0019f1a9c0a25f
And it partially reverts:
* bb43a0cd4adc4f1fa12e0d2fd1fe9aa6b5c00e34
The latter of which added XFAIL's to new variant tests because the new implementation needlessly makes non-throwing code paths in variant invoke throwing code.
This means the reverted change also breaks source backwards compat with code compiled on OS X targeting older system dylibs. There is no need for this to be the case. We should fix it before recommitting.
Reviewed as: https://reviews.llvm.org/D91662
|
 | libcxx/test/std/utilities/variant/variant.variant/variant.dtor/dtor.pass.cpp |
 | libcxx/test/std/utilities/variant/variant.relops/relops.pass.cpp |
 | libcxx/test/std/utilities/variant/variant.variant/variant.status/index.pass.cpp |
 | libcxx/include/variant |
 | libcxx/test/std/utilities/variant/variant.hash/hash.pass.cpp |
 | libcxx/test/std/utilities/variant/variant.relops/relops_bool_conv.fail.cpp |
 | libcxx/test/std/utilities/variant/variant.variant/variant.status/valueless_by_exception.pass.cpp |
Commit
ee7d315cd939017db6ca6db4827b579e8bd85ec1
by aeubanks[DCE] Always get TargetLibraryInfo
I don't see any reason not to unconditionally retrieve TLI, it's fairly cheap.
Fixes calls-errno.ll under NPM.
Reviewed By: asbirlea
Differential Revision: https://reviews.llvm.org/D91476
|
 | llvm/test/Transforms/DCE/calls-errno.ll |
 | llvm/lib/Transforms/Scalar/DCE.cpp |
Commit
e2537353e63859a2a36da93fa97cb16275681a23
by Duncan P. N. Exon SmithADT: Share an implementation for single-element insert in SmallVector, NFC
Factor out `SmallVectorImple::insert_one_impl`, a common implementation for `insert(iterator, T&&)` and `insert(iterator, T const&)`. This is just a clean up and has no functionality change.
Differential Revision: https://reviews.llvm.org/D91674
|
 | llvm/include/llvm/ADT/SmallVector.h |
Commit
989b19442905b2a8aa83e1db65c1c5ab1211a27b
by stellaraccident[mlir][Python] Make DenseElementsAttr loading be int size agnostic.
* I had missed the note about "Standard size" in the docs. On Windows, the 'l' types are 32bit. * This fixes the only failing MLIR-Python test on Windows.
Differential Revision: https://reviews.llvm.org/D91283
|
 | mlir/lib/Bindings/Python/IRModules.cpp |
Commit
4bc085f5b3eda5273721fd787ffa65e2f155fc45
by usx[clangd] Add OverridenBy Relation to index.
This was previously explored in reviews.llvm.org/D69094.
Differential Revision: https://reviews.llvm.org/D91610
|
 | clang-tools-extra/clangd/test/index-serialization/Inputs/sample.h |
 | clang-tools-extra/clangd/index/Relation.cpp |
 | clang-tools-extra/clangd/unittests/SymbolCollectorTests.cpp |
 | clang-tools-extra/clangd/index/Relation.h |
 | clang-tools-extra/clangd/index/SymbolCollector.cpp |
 | clang-tools-extra/clangd/test/index-serialization/Inputs/sample.cpp |
 | clang-tools-extra/clangd/index/Serialization.cpp |
 | clang-tools-extra/clangd/test/index-serialization/Inputs/sample.idx |
Commit
94e4ec6499a237aeec4f1fe8f2cc1e9bcb33f971
by liufeng.eeAdd CalibratedQuantizedType to quant dialect
This type supports a calibrated type with min, max provided.
This will be used for importing calibration values of intermediate tensors (e.g. LSTM) which can't be imported with QuantStats op.
This type was initially suggested in the following RFC: https://llvm.discourse.group/t/rfc-a-proposal-for-implementing-quantization-transformations-in-mlir/655
Reviewed By: stellaraccident
Differential Revision: https://reviews.llvm.org/D91584
|
 | mlir/test/Dialect/Quant/parse-calibrated.mlir |
 | mlir/lib/Dialect/Quant/IR/QuantTypes.cpp |
 | mlir/lib/Dialect/Quant/IR/TypeDetail.h |
 | mlir/lib/Dialect/Quant/IR/QuantOps.cpp |
 | mlir/include/mlir/Dialect/Quant/QuantTypes.h |
 | mlir/lib/Dialect/Quant/IR/TypeParser.cpp |
 | mlir/test/Dialect/Quant/parse-calibrated-invalid.mlir |
Commit
9e3b4f4941f9dfb9b9ad91c5876f8f1c4d8be773
by aeubanks[JumpThreading] Make -print-lvi-after-jump-threading work with NPM
|
 | llvm/lib/Transforms/Scalar/JumpThreading.cpp |
 | llvm/test/Analysis/LazyValueAnalysis/lvi-after-jumpthreading.ll |
Commit
32876117625ab7ad294651de8898c40fbe827936
by aeubanks[test] Pin size-remarks.ll to legacy PM
This tests legacy PM specific stuff.
|
 | llvm/test/Other/size-remarks.ll |
Commit
f0b0bab34dd82c07d153d31363d89ebd04cc733d
by craig.topper[X86] Use GF2P8AFFINEQB to implement vector bitreverse.
We can use GF2P8AFFINEQB to reverse bits in a byte. Shuffles are needed to reverse the bytes in elements larger than i8. LegalizeVectorOps takes care of inserting the shuffle for the larger element size.
We already have Custom lowering for v16i8 with SSSE3, v32i8 with AVX, and v64i8 with AVX512BW.
I think we might be able to use this for scalars too by moving into a vector and back. But I'll save that for a follow up as its a little more involved.
Reviewed By: RKSimon, pengfei
Differential Revision: https://reviews.llvm.org/D91515
|
 | llvm/test/Analysis/CostModel/X86/bitreverse.ll |
 | llvm/lib/Target/X86/X86TargetTransformInfo.cpp |
 | llvm/test/CodeGen/X86/vector-bitreverse.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
77133b29b93406638915c7d9a6b8b8a81a067df3
by zhanghb97[mlir] Get array from the dense elements attribute with buffer protocol.
- Add `mlirElementsAttrGetType` C API. - Add `def_buffer` binding to PyDenseElementsAttribute. - Implement the protocol to access the buffer.
Differential Revision: https://reviews.llvm.org/D91021
|
 | mlir/test/Bindings/Python/ir_array_attributes.py |
 | mlir/include/mlir-c/StandardAttributes.h |
 | mlir/test/CAPI/ir.c |
 | mlir/lib/CAPI/IR/StandardAttributes.cpp |
 | mlir/lib/Bindings/Python/IRModules.cpp |
 | mlir/docs/Bindings/Python.md |
Commit
877b5b1085b0d6761deeb89a3fdd976388c53329
by aeubanks[test] Make scc-pass-printer.ll work with NPM
Pin some legacy PM specific RUN lines to legacy PM.
|
 | llvm/test/Other/scc-pass-printer.ll |
Commit
1c0ef2984dc373a995e2d2a5e5a205fe29862464
by Vitaly Buka[NFC][tsan] Prepepare for more interceptors which use cond_wait()
|
 | compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp |
Commit
955341a722a0a204c79f6b948e4fe0f23bb56e30
by schuetttest commit
add whitespace
|
 | clang/lib/Tooling/Tooling.cpp |
Commit
65fd17c241e22e1671e81efdb683687369c2feb3
by grimar[lib/Support/YAMLTraits] - Don't print leading zeroes when dumping Hex8/Hex16/Hex32 types.
When we produce an YAML output, we also print leading zeroes currently. An output might look like this:
``` - Name: .dynsym Type: SHT_DYNSYM Address: 0x0000000000001000 EntSize: 0x0000000000000018 ```
There are probably no reason to print leading zeroes. It just makes harder to read values. This patch stops printing them. The output becomes like:
``` - Name: .dynsym Type: SHT_DYNSYM Address: 0x1000 EntSize: 0x18 ```
This affects obj2yaml mostly, but also dsymutil and llvm-xray tools output.
Differential revision: https://reviews.llvm.org/D90930
|
 | llvm/test/ObjectYAML/MachO/relocations_armv7.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_aranges.yaml |
 | llvm/test/ObjectYAML/MachO/lc-ident.yaml |
 | llvm/test/ObjectYAML/MachO/relocations_empty.yaml |
 | llvm/test/ObjectYAML/wasm/function_section.yaml |
 | llvm/test/tools/dsymutil/debug-map-parsing.test |
 | llvm/test/tools/llvm-xray/ARM/extract-instrmap.test |
 | llvm/test/ObjectYAML/MachO/weak_bind_opcode.yaml |
 | llvm/test/ObjectYAML/wasm/event_section.yaml |
 | llvm/test/ObjectYAML/wasm/data_section.yaml |
 | llvm/test/ObjectYAML/wasm/export_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/note-section.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-pubsections.yaml |
 | llvm/test/tools/obj2yaml/ELF/shinfo.yaml |
 | llvm/test/tools/obj2yaml/ELF/call-graph-profile-section.yaml |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap-macho.ll |
 | llvm/test/tools/yaml2obj/ELF/abiversion.yaml |
 | llvm/test/ObjectYAML/MachO/export_trie.yaml |
 | llvm/test/ObjectYAML/wasm/elem_section.yaml |
 | llvm/test/ObjectYAML/MachO/LittleEndian.yaml |
 | llvm/test/ObjectYAML/wasm/header.yaml |
 | llvm/test/ObjectYAML/MachO/relocations_ppc_big_endian.yaml |
 | llvm/test/tools/obj2yaml/MachO/unrecognized-debug-section.yaml |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-ranges.yaml |
 | llvm/test/ObjectYAML/MachO/fat_macho_i386_x86_64.yaml |
 | llvm/test/ObjectYAML/wasm/global_section.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml |
 | llvm/test/ObjectYAML/MachO/relocations_x86_64.yaml |
 | llvm/test/tools/obj2yaml/ELF/null-section.yaml |
 | llvm/test/tools/dsymutil/ARM/extern-alias.test |
 | llvm/test/ObjectYAML/MachO/bogus_load_command.yaml |
 | llvm/test/ObjectYAML/wasm/table_section.yaml |
 | llvm/test/ObjectYAML/MachO/bind_opcode.yaml |
 | llvm/test/tools/obj2yaml/ELF/no-symbol-reloc.yaml |
 | llvm/test/MC/WebAssembly/tables.s |
 | llvm/test/tools/obj2yaml/ELF/bb-addr-map.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_str.yaml |
 | llvm/test/ObjectYAML/wasm/start_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/verdef-section.yaml |
 | llvm/lib/Support/YAMLTraits.cpp |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_ranges.yaml |
 | llvm/test/tools/obj2yaml/Minidump/basic.yaml |
 | llvm/test/MC/WebAssembly/type-index.s |
 | llvm/test/tools/obj2yaml/ELF/mips-abi-flags.yaml |
 | llvm/test/tools/obj2yaml/ELF/program-headers.yaml |
 | llvm/test/tools/obj2yaml/XCOFF/aix.yaml |
 | llvm/test/MC/WebAssembly/weak-alias.s |
 | llvm/test/ObjectYAML/MachO/BigEndian.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-BigEndian.yaml |
 | llvm/test/tools/obj2yaml/ELF/dynamic-section.yaml |
 | llvm/test/MC/WebAssembly/wasm64.s |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap-pie.ll |
 | llvm/test/Object/AArch64/yaml2obj-elf-aarch64-rel.yaml |
 | llvm/test/ObjectYAML/MachO/symtab.yaml |
 | llvm/test/MC/WebAssembly/data-section.s |
 | llvm/test/Object/obj2yaml.test |
 | llvm/test/MC/WebAssembly/event-section.ll |
 | llvm/test/ObjectYAML/MachO/DWARF-LittleEndian.yaml |
 | llvm/test/ObjectYAML/MachO/relocations_arm64.yaml |
 | llvm/test/tools/obj2yaml/ELF/gnu-hash-section.yaml |
 | llvm/test/MC/WebAssembly/external-func-address.ll |
 | llvm/test/ObjectYAML/MachO/DWARF5-abbrevValues.yaml |
 | llvm/test/ObjectYAML/wasm/custom_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/versym-section.yaml |
 | llvm/test/tools/obj2yaml/ELF/sht-symtab-shndx.yaml |
 | llvm/test/tools/obj2yaml/ELF/relocation-type.yaml |
 | llvm/test/ObjectYAML/MachO/rebase_opcode.yaml |
 | llvm/test/ObjectYAML/MachO/virtual_section.yaml |
 | llvm/test/MC/WebAssembly/libcall.ll |
 | llvm/test/tools/obj2yaml/ELF/hash-section.yaml |
 | llvm/test/CodeGen/WebAssembly/function-pointer64.ll |
 | llvm/test/tools/dsymutil/X86/common-sym-multi.test |
 | llvm/test/ObjectYAML/MachO/DWARF2-AddrSize8-FormValues.yaml |
 | llvm/test/tools/obj2yaml/ELF/duplicate-symbol-and-section-names.yaml |
 | llvm/test/Object/Mips/elf-mips64-rel.yaml |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap-symbolize.ll |
 | llvm/test/MC/WebAssembly/reloc-pic.s |
 | llvm/test/tools/obj2yaml/ELF/implicit-sections-order.yaml |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-str.yaml |
 | llvm/test/MC/WebAssembly/global-ctor-dtor.ll |
 | llvm/test/ObjectYAML/wasm/code_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/verneed-section.yaml |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-aranges.yaml |
 | llvm/test/ObjectYAML/wasm/weak_symbols.yaml |
 | llvm/test/tools/dsymutil/yaml-object-address-rewrite.test |
 | llvm/test/MC/WebAssembly/unnamed-data.ll |
 | llvm/test/MC/WebAssembly/comdat.ll |
 | llvm/test/tools/obj2yaml/ELF/section-type.yaml |
 | llvm/test/MC/WebAssembly/tls.s |
 | llvm/test/ObjectYAML/MachO/lazy_bind_opcode.yaml |
 | llvm/test/tools/obj2yaml/MachO/debug-aranges.yaml |
 | llvm/test/ObjectYAML/wasm/import_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/stack-sizes.yaml |
 | llvm/test/ObjectYAML/wasm/memory_section.yaml |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap.ll |
 | llvm/test/tools/obj2yaml/Archives/regular.yaml |
 | llvm/test/tools/obj2yaml/ELF/arm-exidx-section.yaml |
 | llvm/test/ObjectYAML/MachO/out_of_order_linkedit.yaml |
 | llvm/test/ObjectYAML/wasm/type_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/sections-info.yaml |
 | llvm/test/tools/obj2yaml/ELF/entsize.yaml |
 | llvm/test/MC/WebAssembly/assembler-binary.ll |
 | llvm/test/ObjectYAML/wasm/import_memory_shared.yaml |
 | llvm/test/tools/obj2yaml/ELF/special-symbol-indices.yaml |
 | llvm/test/MC/WebAssembly/external-data.ll |
 | llvm/test/ObjectYAML/MachO/mach_header_64.yaml |
 | llvm/test/ObjectYAML/MachO/mach_header.yaml |
 | llvm/test/tools/obj2yaml/ELF/dynamic-section-arch-tags.yaml |
 | llvm/test/tools/obj2yaml/ELF/relr-section.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF5-debug_info.yaml |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-addr.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_abbrev.yaml |
 | llvm/test/tools/obj2yaml/ELF/symbol-type.yaml |
 | llvm/test/ObjectYAML/MachO/sections.yaml |
 | llvm/test/tools/llvm-xray/AArch64/extract-instrmap.test |
 | llvm/test/ObjectYAML/wasm/dylink_section.yaml |
Commit
9d77584fe04010a2aa536308d4032bf5677d7000
by zeratul976[clangd] Call hierarchy (Protocol layer)
The protocol is based on the spec found here: https://microsoft.github.io/language-server-protocol/specifications/specification-3-16/#textDocument_prepareCallHierarchy
Differential Revision: https://reviews.llvm.org/D89296
|
 | clang-tools-extra/clangd/Protocol.h |
 | clang-tools-extra/clangd/Protocol.cpp |
Commit
c173f1b8ebbacf103bafcc82e19c9bc2b613b845
by Piotr SobczakSpeculativeExecution: Allow speculating more instruction types
Support more instructions in SpeculativeExecution pass: - ExtractElement - InsertElement - ShuffleVector
Differential Revision: https://reviews.llvm.org/D91633
|
 | llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp |
 | llvm/test/Transforms/SpeculativeExecution/spec-fp.ll |
Commit
fc40a03323a4b265ccbed34a07e281b13c5e8367
by grimarRevert "[lib/Support/YAMLTraits] - Don't print leading zeroes when dumping Hex8/Hex16/Hex32 types."
This reverts commit 65fd17c241e22e1671e81efdb683687369c2feb3.
It breaks LLD/MachO tests that seems use obj2yaml the check the output.
|
 | llvm/test/Object/AArch64/yaml2obj-elf-aarch64-rel.yaml |
 | llvm/test/ObjectYAML/MachO/virtual_section.yaml |
 | llvm/test/Object/Mips/elf-mips64-rel.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_abbrev.yaml |
 | llvm/test/ObjectYAML/wasm/header.yaml |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-addr.yaml |
 | llvm/test/tools/obj2yaml/ELF/special-symbol-indices.yaml |
 | llvm/test/ObjectYAML/MachO/bind_opcode.yaml |
 | llvm/test/ObjectYAML/MachO/relocations_x86_64.yaml |
 | llvm/test/tools/dsymutil/yaml-object-address-rewrite.test |
 | llvm/test/ObjectYAML/MachO/relocations_arm64.yaml |
 | llvm/test/tools/obj2yaml/ELF/program-headers.yaml |
 | llvm/test/MC/WebAssembly/comdat.ll |
 | llvm/test/ObjectYAML/wasm/memory_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/entsize.yaml |
 | llvm/test/tools/obj2yaml/ELF/relocation-type.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_str.yaml |
 | llvm/test/MC/WebAssembly/tables.s |
 | llvm/test/tools/obj2yaml/ELF/stack-sizes.yaml |
 | llvm/test/tools/obj2yaml/ELF/implicit-sections-order.yaml |
 | llvm/test/ObjectYAML/wasm/export_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/note-section.yaml |
 | llvm/test/tools/obj2yaml/ELF/call-graph-profile-section.yaml |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap-pie.ll |
 | llvm/test/ObjectYAML/MachO/export_trie.yaml |
 | llvm/test/tools/obj2yaml/ELF/dynamic-section-arch-tags.yaml |
 | llvm/test/MC/WebAssembly/data-section.s |
 | llvm/test/ObjectYAML/MachO/weak_bind_opcode.yaml |
 | llvm/test/MC/WebAssembly/unnamed-data.ll |
 | llvm/test/ObjectYAML/MachO/DWARF-LittleEndian.yaml |
 | llvm/test/MC/WebAssembly/assembler-binary.ll |
 | llvm/test/ObjectYAML/MachO/DWARF-pubsections.yaml |
 | llvm/test/ObjectYAML/MachO/sections.yaml |
 | llvm/test/MC/WebAssembly/external-func-address.ll |
 | llvm/test/ObjectYAML/MachO/mach_header.yaml |
 | llvm/test/tools/obj2yaml/ELF/hash-section.yaml |
 | llvm/lib/Support/YAMLTraits.cpp |
 | llvm/test/tools/obj2yaml/ELF/symbol-type.yaml |
 | llvm/test/tools/obj2yaml/ELF/section-type.yaml |
 | llvm/test/MC/WebAssembly/weak-alias.s |
 | llvm/test/ObjectYAML/MachO/BigEndian.yaml |
 | llvm/test/tools/obj2yaml/ELF/versym-section.yaml |
 | llvm/test/CodeGen/WebAssembly/function-pointer64.ll |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap-symbolize.ll |
 | llvm/test/MC/WebAssembly/global-ctor-dtor.ll |
 | llvm/test/ObjectYAML/MachO/fat_macho_i386_x86_64.yaml |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-str.yaml |
 | llvm/test/MC/WebAssembly/event-section.ll |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_ranges.yaml |
 | llvm/test/MC/WebAssembly/libcall.ll |
 | llvm/test/tools/obj2yaml/MachO/unrecognized-debug-section.yaml |
 | llvm/test/ObjectYAML/MachO/out_of_order_linkedit.yaml |
 | llvm/test/tools/obj2yaml/MachO/debug-aranges.yaml |
 | llvm/test/tools/obj2yaml/ELF/shinfo.yaml |
 | llvm/test/tools/dsymutil/X86/common-sym-multi.test |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml |
 | llvm/test/tools/dsymutil/ARM/extern-alias.test |
 | llvm/test/ObjectYAML/MachO/relocations_armv7.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-BigEndian.yaml |
 | llvm/test/ObjectYAML/wasm/start_section.yaml |
 | llvm/test/tools/yaml2obj/ELF/abiversion.yaml |
 | llvm/test/MC/WebAssembly/type-index.s |
 | llvm/test/tools/obj2yaml/ELF/relr-section.yaml |
 | llvm/test/ObjectYAML/wasm/dylink_section.yaml |
 | llvm/test/ObjectYAML/MachO/relocations_ppc_big_endian.yaml |
 | llvm/test/tools/obj2yaml/ELF/dynamic-section.yaml |
 | llvm/test/tools/llvm-xray/AArch64/extract-instrmap.test |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-aranges.yaml |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap.ll |
 | llvm/test/tools/obj2yaml/ELF/sections-info.yaml |
 | llvm/test/MC/WebAssembly/reloc-pic.s |
 | llvm/test/ObjectYAML/MachO/rebase_opcode.yaml |
 | llvm/test/ObjectYAML/wasm/global_section.yaml |
 | llvm/test/ObjectYAML/MachO/mach_header_64.yaml |
 | llvm/test/ObjectYAML/wasm/code_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/duplicate-symbol-and-section-names.yaml |
 | llvm/test/tools/llvm-xray/ARM/extract-instrmap.test |
 | llvm/test/tools/obj2yaml/XCOFF/aix.yaml |
 | llvm/test/ObjectYAML/wasm/elem_section.yaml |
 | llvm/test/MC/WebAssembly/external-data.ll |
 | llvm/test/ObjectYAML/MachO/LittleEndian.yaml |
 | llvm/test/Object/obj2yaml.test |
 | llvm/test/tools/dsymutil/debug-map-parsing.test |
 | llvm/test/ObjectYAML/MachO/DWARF2-AddrSize8-FormValues.yaml |
 | llvm/test/ObjectYAML/wasm/table_section.yaml |
 | llvm/test/tools/obj2yaml/Minidump/basic.yaml |
 | llvm/test/MC/WebAssembly/wasm64.s |
 | llvm/test/MC/WebAssembly/tls.s |
 | llvm/test/ObjectYAML/MachO/DWARF5-abbrevValues.yaml |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap-macho.ll |
 | llvm/test/ObjectYAML/wasm/function_section.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF5-debug_info.yaml |
 | llvm/test/ObjectYAML/wasm/custom_section.yaml |
 | llvm/test/ObjectYAML/wasm/import_memory_shared.yaml |
 | llvm/test/tools/obj2yaml/ELF/null-section.yaml |
 | llvm/test/ObjectYAML/MachO/relocations_empty.yaml |
 | llvm/test/ObjectYAML/MachO/lc-ident.yaml |
 | llvm/test/ObjectYAML/MachO/bogus_load_command.yaml |
 | llvm/test/ObjectYAML/wasm/data_section.yaml |
 | llvm/test/ObjectYAML/wasm/type_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/sht-symtab-shndx.yaml |
 | llvm/test/tools/obj2yaml/ELF/gnu-hash-section.yaml |
 | llvm/test/ObjectYAML/wasm/weak_symbols.yaml |
 | llvm/test/tools/obj2yaml/ELF/arm-exidx-section.yaml |
 | llvm/test/tools/obj2yaml/ELF/mips-abi-flags.yaml |
 | llvm/test/tools/obj2yaml/ELF/verneed-section.yaml |
 | llvm/test/ObjectYAML/wasm/event_section.yaml |
 | llvm/test/tools/obj2yaml/Archives/regular.yaml |
 | llvm/test/ObjectYAML/MachO/lazy_bind_opcode.yaml |
 | llvm/test/tools/obj2yaml/ELF/no-symbol-reloc.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_aranges.yaml |
 | llvm/test/ObjectYAML/MachO/symtab.yaml |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-ranges.yaml |
 | llvm/test/tools/obj2yaml/ELF/verdef-section.yaml |
 | llvm/test/ObjectYAML/wasm/import_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/bb-addr-map.yaml |
Commit
2fa38fa9a651553080620f4c9883d075df2a706e
by Raphael Isemann[lldb] Python3 byte<->string issue in patch-crashlog.py
|
 | lldb/test/Shell/ScriptInterpreter/Python/Crashlog/patch-crashlog.py |
Commit
83a03867da128bf9410ae15eb451500ed8c800f5
by martin[libcxx] Add missing _LIBCPP_FUNC_VIS on a few win32 locale functions
These functions are called directly from the public installed headers, and thus need to be exported in DLL builds, just like some other functions in the same header (e.g. snprintf_l).
This fixes e.g. test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_float.pass.cpp in mingw configurations.
Differential Revision: https://reviews.llvm.org/D91328
|
 | libcxx/include/support/win32/locale_win32.h |
Commit
2be569870486a2068667f4625723c0a7409f4c97
by Jan Svoboda[clang][cli] Add ability to make fixups to CompilerInvocation after option parsing
Depends on D83211
Reviewed By: Bigcheese
Original patch by Daniel Grumberg.
Differential Revision: https://reviews.llvm.org/D83298
|
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | clang/include/clang/Driver/Options.td |
Commit
052d24af2913e8e2a0183bcab8af9c8c9cad94f1
by zinenko[mlir] Introduce support for parametric side-effects
The side effect infrastructure is based on the Effect and Resource class templates, instances of instantiations of which are constructed as thread-local singletons. With this scheme, it is impossible to further parameterize either of those, or the EffectInstance class that contains pointers to an Effect and Resource instances. Such a parameterization is necessary to express more detailed side effects, e.g. those of a loop or a function call with affine operations inside where it is possible to precisely specify the slices of accessed buffers.
Include an additional Attribute to EffectInstance class for further parameterization. This allows to leverage the dialect-specific registration and uniquing capabilities of the attribute infrastructure without requiring Effect or Resource instantiations to be attached to a dialect themselves.
Split out the generic part of the side effect Tablegen classes into a separate file to avoid generating built-in MemoryEffect interfaces when processing any .td file that includes SideEffectInterfaceBase.td.
Reviewed By: rriddle
Differential Revision: https://reviews.llvm.org/D91493
|
 | mlir/test/lib/Dialect/Test/CMakeLists.txt |
 | mlir/test/lib/Dialect/Test/TestInterfaces.td |
 | mlir/test/lib/IR/TestSideEffects.cpp |
 | mlir/include/mlir/Interfaces/SideEffectInterfaces.h |
 | mlir/test/lib/Dialect/Test/TestDialect.cpp |
 | mlir/test/lib/Dialect/Test/TestDialect.h |
 | mlir/test/lib/Dialect/Test/TestOps.td |
 | mlir/test/lib/Dialect/Test/TestInterfaces.cpp |
 | mlir/include/mlir/Interfaces/SideEffectInterfaces.td |
 | mlir/test/IR/test-side-effects.mlir |
 | mlir/test/lib/Dialect/Test/TestInterfaces.h |
 | mlir/include/mlir/Interfaces/SideEffectInterfaceBase.td |
Commit
05eeda9752b393c074dd22716670bc3b9671270d
by Jan Svoboda[clang][cli] Turn arcmt-* options into a single option
- The new option, -arcmt-action, is a simple enum based option. - The driver is modified to translate the existing -ccc-acmt-* options accordingly Depends on D83298
Reviewed By: Bigcheese
Original patch by Daniel Grumberg.
Differential Revision: https://reviews.llvm.org/D83315
|
 | clang/test/ARCMT/cxx-checking.mm |
 | clang/test/ARCMT/with-arc-mode-modify.m.result |
 | clang/test/ARCMT/migrate-plist-output.m |
 | clang/lib/Driver/ToolChains/Clang.cpp |
 | llvm/include/llvm/Option/OptParser.td |
 | clang/test/ARCMT/atautorelease-check.m |
 | clang/test/ARCMT/driver-migrate.m |
 | clang/test/ARCMT/migrate-with-pch.m |
 | clang/test/ARCMT/check-with-pch.m |
 | clang/test/ARCMT/releases-driver.m |
 | clang/include/clang/Driver/Options.td |
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | clang/test/ARCMT/nonobjc-to-objc-cast-2.m |
 | clang/test/ARCMT/verify.m |
 | clang/test/ARCMT/releases-driver.m.result |
 | clang/test/ARCMT/GC-check-warn-nsalloc.m |
 | clang/test/ARCMT/checking-in-arc.m |
 | clang/test/ARCMT/with-arc-mode-modify.m |
 | clang/test/ARCMT/migrate.m |
 | clang/test/ARCMT/check-with-serialized-diag.m |
 | clang/test/ARCMT/check-api.m |
 | clang/test/ARCMT/migrate-space-in-path.m |
 | clang/test/ARCMT/no-canceling-bridge-to-bridge-cast.m |
 | clang/test/ARCMT/checking.m |
 | clang/test/ARCMT/migrate-emit-errors.m |
 | clang/test/ARCMT/GC-check.m |
 | llvm/utils/TableGen/OptParserEmitter.cpp |
Commit
eef203dbdf841945ac360ab001003df958d8fa9a
by llvm-dev[Analysis] CGSCCPassManager.cpp - fix Wshadow warnings. NFCI.
|
 | llvm/lib/Analysis/CGSCCPassManager.cpp |
Commit
9aa789820027e9d1dcec489b269cf94db31624b8
by grimarReland "[lib/Support/YAMLTraits] - Don't print leading zeroes when dumping Hex8/Hex16/Hex32 types." (https://reviews.llvm.org/D90930).
This reverts reverting commit fc40a03323a4b265ccbed34a07e281b13c5e8367 and fixes LLD (MachO/wasm) tests that failed previously.
|
 | lld/test/wasm/weak-symbols.ll |
 | llvm/test/ObjectYAML/MachO/BigEndian.yaml |
 | llvm/test/MC/WebAssembly/tls.s |
 | llvm/test/ObjectYAML/MachO/lc-ident.yaml |
 | llvm/test/tools/obj2yaml/ELF/sht-symtab-shndx.yaml |
 | lld/test/wasm/stack-pointer.ll |
 | llvm/test/ObjectYAML/MachO/weak_bind_opcode.yaml |
 | lld/test/wasm/relocatable.ll |
 | llvm/test/tools/obj2yaml/ELF/call-graph-profile-section.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-BigEndian.yaml |
 | llvm/test/tools/obj2yaml/ELF/hash-section.yaml |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap-pie.ll |
 | llvm/test/ObjectYAML/MachO/DWARF2-AddrSize8-FormValues.yaml |
 | llvm/test/MC/WebAssembly/external-func-address.ll |
 | llvm/test/ObjectYAML/MachO/DWARF5-abbrevValues.yaml |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-aranges.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_aranges.yaml |
 | llvm/test/tools/obj2yaml/ELF/program-headers.yaml |
 | lld/test/wasm/reloc-addend.ll |
 | llvm/test/tools/yaml2obj/ELF/abiversion.yaml |
 | lld/test/wasm/data-layout.ll |
 | llvm/test/MC/WebAssembly/type-index.s |
 | lld/test/wasm/large-memory.test |
 | llvm/test/ObjectYAML/wasm/import_section.yaml |
 | llvm/test/ObjectYAML/MachO/sections.yaml |
 | llvm/test/ObjectYAML/wasm/weak_symbols.yaml |
 | llvm/test/tools/dsymutil/debug-map-parsing.test |
 | lld/test/wasm/weak-undefined.ll |
 | llvm/test/ObjectYAML/MachO/relocations_x86_64.yaml |
 | llvm/test/ObjectYAML/MachO/fat_macho_i386_x86_64.yaml |
 | llvm/test/ObjectYAML/wasm/data_section.yaml |
 | lld/test/wasm/shared-memory.yaml |
 | llvm/test/tools/obj2yaml/ELF/verdef-section.yaml |
 | lld/test/mach-o/bind-opcodes.yaml |
 | lld/test/wasm/alias.s |
 | llvm/test/tools/obj2yaml/ELF/mips-abi-flags.yaml |
 | llvm/test/ObjectYAML/wasm/function_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/no-symbol-reloc.yaml |
 | llvm/test/tools/obj2yaml/ELF/special-symbol-indices.yaml |
 | llvm/test/tools/obj2yaml/ELF/null-section.yaml |
 | lld/test/wasm/undefined-weak-call.ll |
 | llvm/test/tools/obj2yaml/ELF/note-section.yaml |
 | lld/test/wasm/export-table.test |
 | llvm/test/ObjectYAML/wasm/import_memory_shared.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-pubsections.yaml |
 | llvm/test/ObjectYAML/wasm/global_section.yaml |
 | llvm/test/tools/obj2yaml/XCOFF/aix.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_str.yaml |
 | llvm/test/tools/obj2yaml/ELF/implicit-sections-order.yaml |
 | llvm/test/ObjectYAML/wasm/export_section.yaml |
 | llvm/test/MC/WebAssembly/data-section.s |
 | llvm/test/ObjectYAML/MachO/mach_header_64.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_info.yaml |
 | llvm/test/ObjectYAML/MachO/bind_opcode.yaml |
 | llvm/test/Object/AArch64/yaml2obj-elf-aarch64-rel.yaml |
 | llvm/test/ObjectYAML/MachO/rebase_opcode.yaml |
 | llvm/test/tools/obj2yaml/ELF/duplicate-symbol-and-section-names.yaml |
 | llvm/test/tools/obj2yaml/ELF/stack-sizes.yaml |
 | llvm/test/tools/obj2yaml/ELF/dynamic-section.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_abbrev.yaml |
 | llvm/test/tools/obj2yaml/ELF/bb-addr-map.yaml |
 | llvm/test/tools/obj2yaml/MachO/debug-aranges.yaml |
 | llvm/test/ObjectYAML/MachO/relocations_armv7.yaml |
 | llvm/test/MC/WebAssembly/reloc-pic.s |
 | llvm/test/ObjectYAML/wasm/start_section.yaml |
 | llvm/test/ObjectYAML/wasm/type_section.yaml |
 | llvm/test/ObjectYAML/MachO/relocations_empty.yaml |
 | llvm/test/ObjectYAML/wasm/event_section.yaml |
 | llvm/test/tools/dsymutil/yaml-object-address-rewrite.test |
 | llvm/test/tools/obj2yaml/ELF/section-type.yaml |
 | llvm/test/ObjectYAML/MachO/mach_header.yaml |
 | llvm/test/ObjectYAML/MachO/relocations_arm64.yaml |
 | lld/test/wasm/weak-alias-overide.ll |
 | llvm/test/ObjectYAML/MachO/out_of_order_linkedit.yaml |
 | llvm/test/tools/llvm-xray/ARM/extract-instrmap.test |
 | llvm/test/ObjectYAML/wasm/memory_section.yaml |
 | llvm/test/MC/WebAssembly/event-section.ll |
 | lld/test/wasm/pie.ll |
 | lld/test/wasm/local-symbols.ll |
 | llvm/test/MC/WebAssembly/wasm64.s |
 | lld/test/wasm/shared-memory-no-atomics.yaml |
 | lld/test/wasm/emit-relocs.ll |
 | llvm/test/ObjectYAML/MachO/DWARF-LittleEndian.yaml |
 | lld/test/wasm/import-table.test |
 | llvm/test/ObjectYAML/MachO/DWARF-debug_ranges.yaml |
 | lld/test/wasm/shared.ll |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-ranges.yaml |
 | llvm/test/ObjectYAML/wasm/custom_section.yaml |
 | llvm/test/tools/dsymutil/X86/common-sym-multi.test |
 | llvm/test/ObjectYAML/MachO/virtual_section.yaml |
 | llvm/test/MC/WebAssembly/tables.s |
 | llvm/test/MC/WebAssembly/comdat.ll |
 | llvm/test/Object/obj2yaml.test |
 | llvm/test/MC/WebAssembly/libcall.ll |
 | llvm/test/tools/obj2yaml/ELF/versym-section.yaml |
 | lld/test/wasm/weak-alias.ll |
 | llvm/lib/Support/YAMLTraits.cpp |
 | llvm/test/tools/obj2yaml/ELF/dynamic-section-arch-tags.yaml |
 | llvm/test/tools/obj2yaml/ELF/relr-section.yaml |
 | llvm/test/MC/WebAssembly/assembler-binary.ll |
 | llvm/test/ObjectYAML/MachO/LittleEndian.yaml |
 | llvm/test/ObjectYAML/MachO/bogus_load_command.yaml |
 | llvm/test/ObjectYAML/wasm/dylink_section.yaml |
 | lld/test/wasm/call-indirect.ll |
 | llvm/test/MC/WebAssembly/external-data.ll |
 | llvm/test/ObjectYAML/wasm/table_section.yaml |
 | llvm/test/MC/WebAssembly/unnamed-data.ll |
 | lld/test/wasm/growable-table.test |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-str.yaml |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap.ll |
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-addr.yaml |
 | lld/test/wasm/import-memory.test |
 | llvm/test/tools/obj2yaml/ELF/shinfo.yaml |
 | lld/test/wasm/wrap.ll |
 | lld/test/wasm/locals-duplicate.test |
 | llvm/test/tools/llvm-xray/AArch64/extract-instrmap.test |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap-symbolize.ll |
 | llvm/test/CodeGen/WebAssembly/function-pointer64.ll |
 | llvm/test/ObjectYAML/MachO/relocations_ppc_big_endian.yaml |
 | llvm/test/tools/dsymutil/ARM/extern-alias.test |
 | lld/test/wasm/many-functions.ll |
 | llvm/test/tools/obj2yaml/ELF/relocation-type.yaml |
 | llvm/test/tools/obj2yaml/Archives/regular.yaml |
 | llvm/test/tools/obj2yaml/ELF/entsize.yaml |
 | llvm/test/MC/WebAssembly/weak-alias.s |
 | llvm/test/ObjectYAML/wasm/code_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/arm-exidx-section.yaml |
 | llvm/test/tools/obj2yaml/MachO/unrecognized-debug-section.yaml |
 | llvm/test/ObjectYAML/wasm/elem_section.yaml |
 | llvm/test/tools/obj2yaml/ELF/sections-info.yaml |
 | lld/test/wasm/section-symbol-relocs.yaml |
 | llvm/test/ObjectYAML/MachO/lazy_bind_opcode.yaml |
 | llvm/test/tools/obj2yaml/ELF/verneed-section.yaml |
 | llvm/test/ObjectYAML/wasm/header.yaml |
 | llvm/test/ObjectYAML/MachO/DWARF5-debug_info.yaml |
 | llvm/test/tools/obj2yaml/ELF/symbol-type.yaml |
 | llvm/test/Object/Mips/elf-mips64-rel.yaml |
 | llvm/test/tools/llvm-xray/X86/extract-instrmap-macho.ll |
 | llvm/test/tools/obj2yaml/ELF/gnu-hash-section.yaml |
 | llvm/test/tools/obj2yaml/Minidump/basic.yaml |
 | llvm/test/ObjectYAML/MachO/symtab.yaml |
 | llvm/test/ObjectYAML/MachO/export_trie.yaml |
 | llvm/test/MC/WebAssembly/global-ctor-dtor.ll |
Commit
ccf500ce00c5768ae98248a8de90408488235aa7
by andrzej.warzynski[NFC] Add missing dependency in the IR unittests
This missing dependency has caused build failures when `BUILD_SHARED_LIBS` is set to `ON`. The breaking change was introduced here: * https://reviews.llvm.org/D91324
Failing buildbot: * http://lab.llvm.org:8011/#/builders/66/builds/555
|
 | llvm/unittests/IR/CMakeLists.txt |
Commit
163929d7a620b774ae6335be77fc539765e5d22e
by esme.yi[NFC][POwerPC] Added testcases of constant-i64.
|
 | llvm/test/CodeGen/PowerPC/constants-i64.ll |
Commit
5e696d895bde1eb584a9de5c9feba1a98c6bb487
by Jan Svoboda[clang][cli] Remove NormalizerRetTy and use the decltype of the KeyPath instead
Depends on D83315
Reviewed By: Bigcheese
Original patch by Daniel Grumberg.
Differential Revision: https://reviews.llvm.org/D83406
|
 | clang/include/clang/Driver/Options.td |
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | llvm/include/llvm/Option/OptParser.td |
 | llvm/unittests/Option/OptionMarshallingTest.cpp |
 | llvm/utils/TableGen/OptParserEmitter.cpp |
Commit
8b97e17d161a177ae54c989e6e550930f6a75876
by csigg[mlir] Simplify code generated by ConvertToLLVMPattern::getStridedElementPtr().
Make the interface match the one of ConvertToLLVMPattern::getDataPtr() (to be removed in a separate change).
Reviewed By: ftynse
Differential Revision: https://reviews.llvm.org/D91599
|
 | mlir/test/Conversion/StandardToLLVM/convert-dynamic-memref-ops.mlir |
 | mlir/include/mlir/Conversion/StandardToLLVM/ConvertStandardToLLVM.h |
 | mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp |
 | mlir/lib/Conversion/VectorToROCDL/VectorToROCDL.cpp |
 | mlir/test/Conversion/StandardToLLVM/convert-static-memref-ops.mlir |
 | mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp |
Commit
16eb853ffdd1a1ad7c95455b7795c5f004402e46
by Vitaly Buka[tsan] Add pthread_cond_clockwait interceptor
Fixes https://github.com/google/sanitizers/issues/1259
Reviewed By: dvyukov
Differential Revision: https://reviews.llvm.org/D91684
|
 | compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp |
 | compiler-rt/test/tsan/Linux/clockwait_double_lock.c |
Commit
3e1f1b406e92115f2a36294c2084a8b3a5d6a651
by mgorny[lldb] [test] Pass -mmmx to x86-gp-write test explicitly
Pass -mmmx explicitly to fix build failure with FreeBSD's clang on i386.
Differential Revision: https://reviews.llvm.org/D91578
|
 | lldb/test/Shell/Register/x86-gp-write.test |
Commit
5a75512eba7ef351dab6f699b45c8bef37cb60b7
by mgorny[lldb] [test] Mark command-process-connect.test XFAIL
We are still investigating why 'process connect' does not work while 'gdb-remote' does.
Signed-off-by: Michał Górny <mgorny@moritz.systems>
|
 | lldb/test/Shell/Commands/command-process-connect.test |
Commit
b48ace051c4bd0a51152ace717bb3f7104f70433
by mgorny[lldb] [test] Un-XFAIL TestMultipleDebuggers.py
This test is flaky, and for the time being we do not mark them as XFAIL.
|
 | lldb/test/API/api/multiple-debuggers/TestMultipleDebuggers.py |
Commit
97a2eac3a924f3081bf80ee69ce59bc89257b857
by mgorny[lldb] [test] Un-XFAIL tests on freebsd/i386
Restrict i386-specific XFAIL on a few tests to non-FreeBSD systems, as they pass on FreeBSD.
Differential Revision: https://reviews.llvm.org/D91645
|
 | lldb/test/API/functionalities/exec/TestExec.py |
 | lldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py |
Commit
1e6fc2fa532c280abec04f83410dfdb3760dfc0f
by Jan Svoboda[clang][cli] Port Migrator option flags to new option parsing system
Depends on D83406
Reviewed By: Bigcheese
Original patch by Daniel Grumberg.
Differential Revision: https://reviews.llvm.org/D83690
|
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | clang/include/clang/Driver/Options.td |
Commit
f33118c61ce051f13515f5c9b862302fc4fdb89e
by mkazantsev[IndVars] Support different types of ExitCount when optimizing exit conds
In some cases we can handle IV and iter count of different types. It's a typical situation after IV have been widened. This patch adds support for such cases, when legal.
Differential Revision: https://reviews.llvm.org/D88528 Reviewed By: skatkov
|
 | llvm/lib/Transforms/Scalar/IndVarSimplify.cpp |
 | llvm/test/Transforms/IndVarSimplify/predicated_ranges.ll |
Commit
50f12ade2de1b30e989c13f410461cb27c126f13
by david.spickett[lldb] Fix a couple of remote llgs tests
init_llgs_test no longer takes an argument but these two were not updated.
Also fix some mistakes in TestAutoInstallMainExecutable to get it passing again.
Reviewed By: JDevlieghere, labath
Differential Revision: https://reviews.llvm.org/D91612
|
 | lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py |
 | lldb/test/API/tools/lldb-server/platform-process-connect/TestPlatformProcessConnect.py |
Commit
096bd9b293b42a5d30bca483b3f50667583385aa
by Vitaly Buka[sanitizer] Fix typo in log messages
Fix typo in log messages
Reviewed By: vitalybuka
Differential Revision: https://reviews.llvm.org/D91492
|
 | compiler-rt/lib/asan/asan_interceptors.h |
 | compiler-rt/lib/msan/msan_interceptors.cpp |
Commit
680931af2757fb495c5727d335ffa580fb3dbe98
by flo[Matrix] Adjust matrix pointer type for inline asm arguments.
Matrix types in memory are represented as arrays, but accessed through vector pointers, with the alignment specified on the access operation.
For inline assembly, update pointer arguments to use vector pointers. Otherwise there will be a mis-match if the matrix is also an input-argument which is represented as vector.
Reviewed By: nickdesaulniers
Differential Revision: https://reviews.llvm.org/D91631
|
 | clang/lib/CodeGen/CGStmt.cpp |
 | clang/test/CodeGen/matrix-type.c |
Commit
4dbe12e86649ba6b5f03a9ba97e84d718727f7a7
by benny.kra[SLP] Use the minimum alignment of the load bundle when forming a masked.gather
Instead of the first load. That works when vectorizing contiguous loads, but not for gathers.
Fixes a miscompile introduced in fcad8d3635cff61a2749dcef94c0d51fa1e3e413.
|
 | llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp |
 | llvm/test/Transforms/SLPVectorizer/X86/pr47623.ll |
Commit
8cdc538873879bd57c3ba71956d68b49a2973a45
by abidhAdd sysroot/lib to library search path of baremetal toolchain.
Baremetal toolchain is not adding sysroot/lib to the library search path. This is forcing the user to do it manually. This commit fixes this shortcoming by adding the sysroot/lib to library search path if sysroot is not empty.
Reviewed By: jroelofs
Differential Revision: https://reviews.llvm.org/D91559
|
 | clang/test/Driver/baremetal.cpp |
 | clang/lib/Driver/ToolChains/BareMetal.cpp |
Commit
bcaa19894994f1363a10c082541efb67435399d1
by steveireRemove unportable test
The default content of translation unit varies too much between platforms.
|
 | clang/unittests/AST/ASTTraverserTest.cpp |
Commit
871fe71f2951cb19421a2b47ddb54ed6b3c8cba2
by aaronFix typo for hasAnyOverloadedOperatorName; NFC
|
 | clang/docs/LibASTMatchersReference.html |
 | clang/include/clang/ASTMatchers/ASTMatchers.h |
Commit
da2e4728c71f9f8569246fb881c21811f8182c75
by samuel.tebbs[ARM][LowOverheadLoops] Merge VCMP and VPST across VPT blocks
This patch adds support for combining a VPST with a dangling VCMP from a previous VPT block.
Differential Revision: https://reviews.llvm.org/D90935
|
 | llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vcmp-vpst-combination-across-blocks.mir |
Commit
ccd9091d4a2fd55cb455e61fa77530e1a5de6e69
by Raphael Isemann[lldb][NFC] Don't let Process inherit from UserID
I noticed that Process is inheriting from UserID to store its PID value. This patch replaces this with a dedicated field in the Process class. This is NFC, but has some small effects on the code using Process: * `GetID()` now returns a `lldb::pid_t` like all other process code instead of `lldb::user_id_t`. Both are typedefs for `uint64_t`, so no change in behaviour. * The equality operators defined for UserID no longer accept Process instances. * Removes the inherited method `Process::Clear()` which didn't actually clear anything beside the PID value.
We maybe should also remove the getters/setters to `S/GetPID` or something like that. I can update all the code for that in a follow-up NFC commit.
Reviewed By: labath
Differential Revision: https://reviews.llvm.org/D91699
|
 | lldb/source/Target/Process.cpp |
 | lldb/include/lldb/Target/Process.h |
Commit
45b8e37afcf41ec99e932beac107b0fb43861933
by paulsson[SystemZ] Use ISD::ABS opcode during isel.
The SystemZISD::IABS node is no longer needed since ISD::ABS can be used instead.
Review: Ulrich Weigand Differential Revision: https://reviews.llvm.org/D91697
|
 | llvm/lib/Target/SystemZ/SystemZISelLowering.cpp |
 | llvm/lib/Target/SystemZ/SystemZInstrVector.td |
 | llvm/lib/Target/SystemZ/SystemZISelLowering.h |
 | llvm/lib/Target/SystemZ/SystemZInstrInfo.td |
 | llvm/lib/Target/SystemZ/SystemZOperators.td |
Commit
aad3ea8983a84827f8d4bc81d76b2a5fe218430e
by hokein.wu[clangd] Remove the trailing "." in add-using message.
to be consistent witih other code actions.
Reviewed By: adamcz
Differential Revision: https://reviews.llvm.org/D91694
|
 | clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp |
 | clang-tools-extra/clangd/refactor/tweaks/AddUsing.cpp |
 | clang-tools-extra/clangd/refactor/tweaks/RemoveUsingNamespace.cpp |
Commit
a8a79c90699a7ae9dee07daf7281cbbd592bf6ea
by flo[ConstraintElimination] Refactor constraint extraction (NFC).
This patch generalizes the extraction of a constraint for a given condition. It allows decompose to return a vector of c * X pairs, which allows de-composing multiple instructions in the future.
It also adds more clarifying comments.
|
 | llvm/lib/Transforms/Scalar/ConstraintElimination.cpp |
Commit
9f69c1bc54f415e4746732bdee75f4cc155c4762
by jay.foad[AMDGPU] Rename pseudo S_WAITCNT_IDLE to S_WAIT_IDLE. NFC.
|
 | llvm/lib/Target/AMDGPU/SOPInstructions.td |
 | llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp |
Commit
f45c052c9e62a0482d80059ad1eddd8f36ed40ca
by goncharov.mikhailFix unused variables in release build
Differential Revision: https://reviews.llvm.org/D91705
|
 | llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp |
Commit
8270f8c252d7013761c54e5bf528ac3e4e3b517c
by llvm-dev[X86] Add broadcast merge test case for PR48215
|
 | llvm/test/CodeGen/X86/pr48215.ll |
Commit
bd4662cd3f3743e08699e6bab976d9e7b163ece0
by hokein.wu[AST] Enhance the const expression evaluator to support error-dependent exprs.
Fix a crash when evaluating a constexpr function which contains recovery-exprs. https://bugs.llvm.org/show_bug.cgi?id=46837
Would be nice to have constant expression evaluator support general template value-dependent expressions, but it requires more work.
This patch is a good start I think, to handle the error-only value-dependent expressions.
Differential Revision: https://reviews.llvm.org/D84637
|
 | clang/test/SemaCXX/recovery-expr-type.cpp |
 | clang/test/SemaCXX/enable_if.cpp |
 | clang/test/SemaCXX/constexpr-function-recovery-crash.cpp |
 | clang/lib/AST/ExprConstant.cpp |
 | clang/test/SemaCXX/invalid-constructor-init.cpp |
Commit
1a3428163d97d7322e330d518d017fee80240e69
by lebedev.ri[NFC][Reassociate] Add patterns where `or` is part of load reduction idiom
As Wei Mi is reporting in post-commit review: https://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20201116/853479.html teaching -reassociate about add-like-or's (70472f3) results in breaking apart load widening patterns, and reassociating them.
While that's great, it prevents the actual load widening in backend, and that is not good. We should have load widening in middle-end, but for now we should at least not regress the naive patterns..
|
 | llvm/test/Transforms/Reassociate/load-combine-like-or.ll |
Commit
34ff90ad5d7d17a464bff9abbad70229c693a551
by lebedev.ri[Reassociate] Don't convert add-like-or's into add's if they appear to be part of load-combining idiom
As Wei Mi is reporting in post-commit review https://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20201116/853479.html teaching -reassociate about add-like-or's (70472f3) results in breaking apart load widening patterns, and reassociating them.
For now, simply exclude any such `or` that appears to be a root of load widening idiom from the or->add transformation.
Note that the heuristic is greedy, it doesn't ensure that loads can *actually* be widened into a single load.
|
 | llvm/test/Transforms/Reassociate/load-combine-like-or.ll |
 | llvm/lib/Transforms/Scalar/Reassociate.cpp |
Commit
7ecf19697ee21a23fc8782daefcb268085874d7f
by jay.foad[AMDGPU] Fix and extend vccz workarounds
We have workarounds for two different cases where vccz can get out of sync with the value in vcc. This fixes them in two ways:
1. Fix the case where the def of vcc was in a previous basic block, by pessimistically assuming that vccz might be incorrect at a basic block boundary.
2. Fix the handling of pre-existing waitcnt instructions by calling generateWaitcntInstBefore before examining ScoreBrackets to determine whether there's an outstanding smem read operation.
Differential Revision: https://reviews.llvm.org/D91636
|
 | llvm/test/CodeGen/AMDGPU/infinite-loop.ll |
 | llvm/test/CodeGen/AMDGPU/si-annotate-cf.ll |
 | llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp |
 | llvm/test/CodeGen/AMDGPU/si-annotate-cfg-loop-assert.ll |
 | llvm/test/CodeGen/AMDGPU/vccz-corrupt-bug-workaround.mir |
 | llvm/test/CodeGen/AMDGPU/nested-loop-conditions.ll |
Commit
ad0e764ead36d5ed87015ea7aa8ba033117b7477
by sivachandra[libc][obvious] Fix fdim[f|l] signatures in stdc spec.
|
 | libc/spec/stdc.td |
Commit
5ba324ccadce35a146b0c04e90d6414c3dc42546
by a.bataev[OPENMP]Fix PR48174: compile-time crash with target enter data on a global struct.
The compiler should treat array subscript with base pointer as a first pointer in complex data, it is used only for member expression with base pointer.
Differential Revision: https://reviews.llvm.org/D91660
|
 | clang/test/OpenMP/target_data_map_pointer_array_subscript_codegen.cpp |
 | clang/lib/CodeGen/CGOpenMPRuntime.cpp |
Commit
7a8b2f692ec48f515e99572f911e15a86823ed1b
by llvm-dev[DAGCombiner] Precommit Sext Tests for D91589
Patch by: @laytonio (Layton Kifer)
Differential Revision: https://reviews.llvm.org/D91671
|
 | llvm/test/CodeGen/RISCV/sext-zext-trunc.ll |
 | llvm/test/CodeGen/SystemZ/sext-zext.ll |
Commit
b3b9be4ae77ed1d6e59253d84184654577aa76e7
by Piotr SobczakSpeculativeExecution: Allow speculating more instruction types
Support more instructions in SpeculativeExecution pass: - ExtractValue - InsertValue - Trunc - Freeze
Differential Revision: https://reviews.llvm.org/D91688
|
 | llvm/lib/Transforms/Scalar/SpeculativeExecution.cpp |
 | llvm/test/Transforms/SpeculativeExecution/spec-fp.ll |
 | llvm/test/Transforms/SpeculativeExecution/spec-other.ll |
 | llvm/test/Transforms/SpeculativeExecution/spec-casts.ll |
Commit
43243208fa6fafe8b91e42c82bc56db9d99f76d3
by usx[clangd] Implement textDocument/implementation (Xref layer)
Xref layer changes for textdocument/implementation (https://microsoft.github.io/language-server-protocol/specification#textDocument_implementation)
This currently shows all functions (implementations) that overrides a virtual function.
Differential Revision: https://reviews.llvm.org/D91702
|
 | clang-tools-extra/clangd/XRefs.cpp |
 | clang-tools-extra/clangd/unittests/XRefsTests.cpp |
 | clang-tools-extra/clangd/XRefs.h |
Commit
06fcc4f06f1401d6fa47759f282efdc7f494999f
by gjn[NFC] Use [MC]Register for Hexagon target
Differential Revision: https://reviews.llvm.org/D91160
|
 | llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp |
 | llvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp |
 | llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp |
 | llvm/lib/Target/Hexagon/HexagonGenPredicate.cpp |
 | llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp |
 | llvm/lib/Target/Hexagon/HexagonBlockRanges.cpp |
 | llvm/lib/Target/Hexagon/HexagonSplitDouble.cpp |
 | llvm/lib/Target/Hexagon/BitTracker.h |
 | llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp |
 | llvm/lib/Target/Hexagon/HexagonGenInsert.cpp |
 | llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp |
 | llvm/lib/Target/Hexagon/HexagonSubtarget.cpp |
 | llvm/lib/Target/Hexagon/HexagonBitTracker.cpp |
 | llvm/lib/Target/Hexagon/HexagonBlockRanges.h |
 | llvm/lib/Target/Hexagon/BitTracker.cpp |
 | llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp |
 | llvm/lib/Target/Hexagon/HexagonBitTracker.h |
 | llvm/lib/Target/Hexagon/HexagonPeephole.cpp |
Commit
8c1e3cbebfe9ff14829a279b9d229d4fc3f190b1
by goncharov.mikhail[llvm] fix global_downgraded_to_static test
after 9aa789820027 https://reviews.llvm.org/D90930
|
 | llvm/test/tools/dsymutil/X86/global_downgraded_to_static.c |
Commit
27e73816d6f9a7e627db73c445c4329db2ecfeaf
by thakislld: Make tests depend on llvm-symbolizer after bc98034040
Fixes test failures when building just `check-lld` in a clean build dir.
|
 | llvm/utils/gn/secondary/lld/test/BUILD.gn |
 | lld/test/CMakeLists.txt |
Commit
7046be17307d7439053d6693bf81540e3dc479d2
by cchen[OpenMP] [DOCS] Update OMP5.1 feature status table [NFC]
Adding features in OpenMP 5.1 specification, as documented in feature change history, to the 5.1 table. I alphabetized the rows of the table according to the category. For deprecating master construct, I just used 'other' as the category.
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D90802
|
 | clang/docs/OpenMPSupport.rst |
Commit
057e6bb5540b5ec57e73c56dca80c17fabc949e5
by Abhina.Sreeskantharajan[SystemZ][NFC] Group SystemZ tests in SystemZ folder
This patch creates a SystemZ folder in clang/test/CodeGen to contain systemz-related lit tests.
Reviewed By: muiez
Differential Revision: https://reviews.llvm.org/D91628
|
 | clang/test/CodeGen/SystemZ/builtins-systemz-error.c |
 | clang/test/CodeGen/systemz-inline-asm.c |
 | clang/test/CodeGen/builtins-systemz-vector3-error.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-zvector3-error.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-vector2-constrained.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-vector-constrained.c |
 | clang/test/CodeGen/SystemZ/zvector.c |
 | clang/test/CodeGen/align-systemz.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-zvector.c |
 | clang/test/CodeGen/SystemZ/mbackchain-3.c |
 | clang/test/CodeGen/systemz-inline-asm-02.c |
 | clang/test/CodeGen/zos-alignment.c |
 | clang/test/CodeGen/SystemZ/mbackchain-2.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-zvector3.c |
 | clang/test/CodeGen/builtins-systemz-zvector3-error.c |
 | clang/test/CodeGen/SystemZ/mbackchain.c |
 | clang/test/CodeGen/zvector.c |
 | clang/test/CodeGen/builtins-systemz-error2.c |
 | clang/test/CodeGen/mbackchain-2.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-vector2.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-error2.c |
 | clang/test/CodeGen/builtins-systemz-zvector2-error.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-vector2-error.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-vector3-error.c |
 | clang/test/CodeGen/SystemZ/zos-alignment.c |
 | clang/test/CodeGen/builtins-systemz-vector-error.c |
 | clang/test/CodeGen/builtins-systemz.c |
 | clang/test/CodeGen/s390x-packed-struct-func-arg.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-zvector2.c |
 | clang/test/CodeGen/builtins-systemz-vector.c |
 | clang/test/CodeGen/zvector2.c |
 | clang/test/CodeGen/systemz-abi-vector.c |
 | clang/test/CodeGen/SystemZ/zvector2.c |
 | clang/test/CodeGen/systemz-abi.c |
 | clang/test/CodeGen/builtins-systemz-zvector3.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-zvector3-constrained.c |
 | clang/test/CodeGen/builtins-systemz-zvector-error.c |
 | clang/test/CodeGen/builtins-systemz-vector2.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-vector.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-vector3.c |
 | clang/test/CodeGen/SystemZ/systemz-abi.cpp |
 | clang/test/CodeGen/SystemZ/align-systemz.c |
 | clang/test/CodeGen/builtins-systemz-zvector.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz.c |
 | clang/test/CodeGen/builtins-systemz-zvector2-constrained.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-zvector2-error.c |
 | clang/test/CodeGen/SystemZ/s390x-packed-struct-func-arg.c |
 | clang/test/CodeGen/SystemZ/systemz-abi.c |
 | clang/test/CodeGen/builtins-systemz-zvector-constrained.c |
 | clang/test/CodeGen/builtins-systemz-error.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-zvector-constrained.c |
 | clang/test/CodeGen/builtins-systemz-vector-constrained.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-vector-error.c |
 | clang/test/CodeGen/SystemZ/systemz-abi-vector.c |
 | clang/test/CodeGen/SystemZ/systemz-inline-asm-02.c |
 | clang/test/CodeGen/SystemZ/systemz-inline-asm.c |
 | clang/test/CodeGen/builtins-systemz-vector2-error.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-zvector2-constrained.c |
 | clang/test/CodeGen/builtins-systemz-zvector2.c |
 | clang/test/CodeGen/mbackchain.c |
 | clang/test/CodeGen/builtins-systemz-vector3.c |
 | clang/test/CodeGen/mbackchain-3.c |
 | clang/test/CodeGen/SystemZ/builtins-systemz-zvector-error.c |
 | clang/test/CodeGen/systemz-abi.cpp |
 | clang/test/CodeGen/builtins-systemz-zvector3-constrained.c |
 | clang/test/CodeGen/builtins-systemz-vector2-constrained.c |
Commit
0415cf470bfbf16a06938424c3cad30c12cc2284
by llvm-devFix unused variable warning. NFCI.
We're just performing a null pointer check, we don't need the actual variable.
|
 | clang/lib/AST/APValue.cpp |
Commit
480ad4afc215de922ef6aa2ea3befa8d563d00bd
by llvm-devHazardRecognizer - Fix definition/declaration argument name mismatches. NFCI.
Consistently use SUnit *SU (or drop the argname entirely if not used like the other HazardRecognizer methods).
Silences cppcheck warnings.
|
 | llvm/include/llvm/CodeGen/MultiHazardRecognizer.h |
 | llvm/lib/Target/SystemZ/SystemZHazardRecognizer.cpp |
 | llvm/lib/Target/SystemZ/SystemZHazardRecognizer.h |
 | llvm/include/llvm/CodeGen/ScheduleHazardRecognizer.h |
Commit
0016ab6f3632968e52eb83de021908f0c94bbb10
by usxRevert "[clangd] Implement textDocument/implementation (Xref layer)"
This reverts commit 43243208fa6fafe8b91e42c82bc56db9d99f76d3.
|
 | clang-tools-extra/clangd/XRefs.cpp |
 | clang-tools-extra/clangd/XRefs.h |
 | clang-tools-extra/clangd/unittests/XRefsTests.cpp |
Commit
3abaf6cde7a92f38db2f5b3cb87e653f89f3bd26
by koraq[libc++] Implements multiline regex support.
This resolves LWG2503.
|
 | libcxx/test/std/re/re.const/re.synopt/syntax_option_type.pass.cpp |
 | libcxx/www/cxx1z_status.html |
 | libcxx/include/regex |
 | libcxx/test/std/re/re.const/re.matchflag/match_multiline.pass.cpp |
Commit
72ccec1bbc98407d66275c5911ee557adb461f5a
by sebastian.neubauer[AMDGPU] Fix v3f16 interaction with image store workaround
In some cases, the wrong amount of registers was reserved.
Also enable more v3f16 tests.
Differential Revision: https://reviews.llvm.org/D90847
|
 | llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.d16.dim.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.d16.ll |
 | llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.store.2d.d16.ll |
 | llvm/lib/Target/AMDGPU/SIISelLowering.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.1d.d16.ll |
Commit
c519bc7e16f5aad3ddb6f9df8be5f7b9249c4101
by thakislld/MachO: Move MachOOptTable to DriverUtils.cpp, remove DriverUtils.h
This makes lld/MachO look more like lld/COFF and lld/ELF, as discussed in D91640.
|
 | lld/MachO/Driver.h |
 | lld/MachO/DriverUtils.cpp |
 | lld/MachO/DriverUtils.h |
 | lld/MachO/InputFiles.cpp |
 | lld/MachO/Driver.cpp |
Commit
9b99927618d338a2be3f13053ccf869a39eb1637
by simon.moll[VP] Non-signalling llvm.vp.* intrinsics are speculatable
This is specifically required by the upcoming ExpandVectorPredication pass (D78203) to recognize llvm.vp.* intrinsics that may ignore their predicates.
|
 | llvm/include/llvm/IR/Intrinsics.td |
Commit
130da802ff6e59d59ac5afce9e6a4235f3fe4959
by usxRevert "Revert "[clangd] Implement textDocument/implementation (Xref layer)""
This reverts commit 0016ab6f3632968e52eb83de021908f0c94bbb10.
Fix: Consume error from Expected<T>.
|
 | clang-tools-extra/clangd/unittests/XRefsTests.cpp |
 | clang-tools-extra/clangd/XRefs.cpp |
 | clang-tools-extra/clangd/XRefs.h |
Commit
8b9e6dc50146b3ba97be6a1620e5f93de6c13fd5
by lebedev.ri[NFC][LoopIdiom] Left-shift-until-bittest: revisit test coverage
|
 | llvm/test/Transforms/LoopIdiom/X86/left-shift-until-bittest.ll |
Commit
733f7b50840a202a7ca950db03a2e7d09a147453
by sgueltonRevert "[build] normalize components dependencies"
This reverts commit c6ef6e1690d517b3401ea06b1fe46871eb67434d.
Basically, publicly linked libraries have a different semantic than components, which link libraries privately.
Differential Revision: https://reviews.llvm.org/D91461
|
 | llvm/lib/FileCheck/CMakeLists.txt |
 | llvm/lib/Frontend/OpenACC/CMakeLists.txt |
 | llvm/lib/ExecutionEngine/Orc/CMakeLists.txt |
 | llvm/lib/ExecutionEngine/CMakeLists.txt |
 | llvm/lib/ExecutionEngine/JITLink/CMakeLists.txt |
Commit
068da2c749a58b46bd59381890a6a137d6e3128e
by yitzhakm[clang-tidy] Allow `TransformerClangTidyCheck` clients to set the rule directly.
Adds support for setting the `Rule` field. In the process, refactors the code that accesses that field and adds a constructor that doesn't require a rule argument.
This feature is needed by checks that must set the rule *after* the check class is constructed. For example, any check that maintains state to be accessed from the rule needs this support. Since the object's fields are not initialized when the superclass constructor is called, they can't be (safely) captured by a rule passed to the existing constructor. This patch allows constructing the check superclass fully before setting the rule.
As a driveby fix, removed the "optional" from the rule, since rules are just a set of cases, so empty rules are evident.
Differential Revision: https://reviews.llvm.org/D91544
|
 | clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.h |
 | clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp |
Commit
adf9f64a02838a16d0c6cadfbd089254b126bd22
by antiagainst[MLIR][SPIRV] Rename `spv._reference_of` to `spv.mlir.referenceof`
This commit does the renaming mentioned in the title in order to bring 'spv' dialect closer to the MLIR naming conventions.
Reviewed By: antiagainst
Differential Revision: https://reviews.llvm.org/D91715
|
 | mlir/docs/SPIRVToLLVMDialectConversion.md |
 | mlir/test/Dialect/SPIRV/Serialization/logical-ops.mlir |
 | mlir/test/Dialect/SPIRV/Serialization/spec-constant.mlir |
 | mlir/test/Dialect/SPIRV/Linking/ModuleCombiner/basic.mlir |
 | mlir/lib/Dialect/SPIRV/SPIRVOps.cpp |
 | mlir/test/Dialect/SPIRV/ops.mlir |
 | mlir/test/Dialect/SPIRV/Linking/ModuleCombiner/conflict_resolution.mlir |
 | mlir/lib/Dialect/SPIRV/Serialization/Deserializer.cpp |
 | mlir/include/mlir/Dialect/SPIRV/SPIRVStructureOps.td |
 | mlir/test/Dialect/SPIRV/structure-ops.mlir |
 | mlir/docs/Dialects/SPIR-V.md |
Commit
7810d837864933b49f5e20a970a8e51ea091fa8e
by mcgrathr[GWP-ASan] Respect GWP_ASAN_DEFAULT_ENABLED compile-time macro
If the containing allocator build uses -DGWP_ASAN_DEFAULT_ENABLED=false then the option will default to false. For e.g. Scudo, this is simpler and more efficient than using -DSCUDO_DEFAULT_OPTIONS=... to set gwp-asan options that have to be parsed from the string at startup.
Reviewed By: hctim
Differential Revision: https://reviews.llvm.org/D91463
|
 | compiler-rt/lib/gwp_asan/options.inc |
Commit
85ccdcaa502ee2c478f2d0ba2b1e217117b69032
by nikita.ppv[BasicAA] Remove assert in AA evaluator
As reported in https://reviews.llvm.org/D91383#2401825, this assert breaks external -aa-eval tests. We'll have to fix this case before re-enabling it.
|
 | llvm/test/Analysis/BasicAA/recphi.ll |
 | llvm/lib/Analysis/AliasAnalysisEvaluator.cpp |
Commit
d4ba28bddc89a14885218b9eaa4fbf6654c2a5bd
by schmeiseExpand existing loopsink testing to also test loopsinking using new pass manager and fix LICM bug. Summary: Expand existing loopsink testing to also test loopsinking using new pass manager. Enable memoryssa for loopsink with new pass manager. This combination exposed a bug that was previously fixed for loopsink without memoryssa. When sinking an instruction into a loop, the source block may not be part of the loop but still needs to be checked for pointer invalidation. This is the fix for bugzilla #39695 (PR 54659) expanded to also work with memoryssa.
Respond to review comments. Enable Memory SSA in legacy Loop Sink pass under EnableMSSALoopDependency option control. Update tests accordingly.
Respond to review comments. Add options controlling whether memoryssa is used for loop sink, defaulting to off. Expand testing based on these options.
Respond to review comments. Properly indicated preserved analyses.
Author: Jamie Schmeiser <schmeise@ca.ibm.com> Reviewed By: asbirlea (Alina Sbirlea) Differential Revision: https://reviews.llvm.org/D90249
|
 | llvm/test/Transforms/LICM/loopsink-pr38462.ll |
 | llvm/lib/Transforms/Scalar/LoopSink.cpp |
 | llvm/test/Transforms/LICM/loopsink-pr39570.ll |
 | llvm/test/Transforms/LICM/loopsink.ll |
 | llvm/test/Transforms/LICM/loopsink-pr39695.ll |
 | llvm/lib/Transforms/Scalar/LICM.cpp |
Commit
d1b921e3bf2937f34d93485b4c2c6d86fcc3a830
by sivachandra[libc][NFC][Obvious] Remove few unnecessary pieces from ilogb tests.
|
 | libc/test/src/math/ilogbl_test.cpp |
 | libc/test/src/math/ilogb_test.cpp |
 | libc/test/src/math/ilogbf_test.cpp |
Commit
b51c290663cf50372cd681917cc63379abcf104a
by nikita.ppv[Inline] Add test for PR48209 (NFC)
The test shows noalias metadata being incorrectly applied to the instruction producing the argument for the call.
|
 | llvm/test/Transforms/Inline/pr48209.ll |
Commit
23aeadb89df38406dc4d929d08286f7ce31040eb
by nikita.ppv[Inline] Fix incorrect noalias metadata application (PR48209)
The VMap also contains a mapping from Argument => Instruction, where the instruction is part of the original function, not the inlined one. The code was assuming that all the instructions in the VMap were inlined.
This was a pre-existing problem for the loop access metadata, but was extended to the more common noalias metadata by 27f647d117087ca11959e232e6443f4aee31e966, thus causing miscompiles.
There is a similar assumption inside CloneAliasScopeMetadata(), so that one likely needs to be fixed as well.
|
 | llvm/lib/Transforms/Utils/InlineFunction.cpp |
 | llvm/test/Transforms/Inline/pr48209.ll |
Commit
c6c8d4a13ebd5ce1c3c7e8632312ab8c2dc6afa0
by xun[modules] Fix crash in call to `FunctionDecl::setPure()`
In some cases, when deserializing a `CXXMethodDecl` of a `CXXSpecializationTemplateDecl`, the call to `FunctionDecl::setPure()` happens before the `DefinitionData` member has been populated (which appears to happen lower down in a `mergeRedeclarable` call), causing a crash (https://reviews.llvm.org/P8228).
This diff fixes this by deferring the `FunctionDecl::setPure()` till after the `DefinitionData` has been filled in.
Reviewed By: lxfind
Differential Revision: https://reviews.llvm.org/D86853
|
 | clang/test/Modules/Inputs/set-pure-crash/a.h |
 | clang/test/Modules/Inputs/set-pure-crash/module.modulemap |
 | clang/test/Modules/Inputs/set-pure-crash/c.h |
 | clang/lib/Serialization/ASTReaderDecl.cpp |
 | clang/test/Modules/set-pure-crash.cpp |
 | clang/test/Modules/Inputs/set-pure-crash/b.h |
Commit
87369c626114ae17f4c637635c119e6de0856a9a
by wolfgang_piebRevert "[tsan] Add pthread_cond_clockwait interceptor"
This reverts commit 16eb853ffdd1a1ad7c95455b7795c5f004402e46.
The test is failing on some Linux build bots. See the review for an example.
|
 | compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp |
 | compiler-rt/test/tsan/Linux/clockwait_double_lock.c |
Commit
562addba652e8bdabe49f9123fd92c21b7a0d640
by schmeiseRevert "Expand existing loopsink testing to also test loopsinking using new pass manager and fix LICM bug."
This reverts commit d4ba28bddc89a14885218b9eaa4fbf6654c2a5bd.
|
 | llvm/lib/Transforms/Scalar/LoopSink.cpp |
 | llvm/test/Transforms/LICM/loopsink-pr39570.ll |
 | llvm/lib/Transforms/Scalar/LICM.cpp |
 | llvm/test/Transforms/LICM/loopsink-pr38462.ll |
 | llvm/test/Transforms/LICM/loopsink-pr39695.ll |
 | llvm/test/Transforms/LICM/loopsink.ll |
Commit
0dca0b7034281015cfffb3c91fc89c53b220dc49
by nikita.ppv[Inline] Expand test to show dropped metadata (NFC)
The metadata from the %c load gets dropped.
|
 | llvm/test/Transforms/Inline/noalias-cs.ll |
Commit
f4a3969bffceac2df4bee10992ea48136122cae0
by nikita.ppv[Inline] Fix incorrectly dropped noalias metadata
This is the same fix as 23aeadb89df38406dc4d929d08286f7ce31040eb, just for CloneScopedAliasMetadata rather than PropagateCallSiteMetadata.
In this case the previous outcome was incorrectly dropped metadata, as it was not part of the computed metadata map.
The real change in the test is that the first load now retains metadata, the rest of the changes are due to changes in metadata numbering.
|
 | llvm/test/Transforms/Inline/noalias-cs.ll |
 | llvm/lib/Transforms/Utils/InlineFunction.cpp |
Commit
97e55cfef5b86b1b190b6f3f57ca2a89ec61c14f
by huberjn[OpenMP] Add Passing in Original Declaration Names To Mapper API
Summary: This patch adds support for passing in the original delcaration name in the source file to the libomptarget runtime. This will allow the runtime to provide more intelligent debugging messages. This patch takes the original expression parsed from the OpenMP map / update clause and provides a textual representation if it was explicitly mapped, otherwise it takes the name of the variable declaration as a fallback. The information in passed to the runtime in a global array of strings that matches the existing ident_t source location strings using ";name;filename;column;row;;"
Reviewers: jdoerfert
Differential Revision: https://reviews.llvm.org/D89802
|
 | openmp/libomptarget/include/omptarget.h |
 | clang/test/OpenMP/target_parallel_num_threads_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_10.cpp |
 | clang/test/OpenMP/target_teams_depend_codegen.cpp |
 | llvm/test/Transforms/OpenMP/values_in_offload_arrays.ll |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_parallel_for_simd_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_private_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp |
 | clang/test/OpenMP/target_teams_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_11.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_simd_codegen.cpp |
 | llvm/lib/Transforms/IPO/OpenMPOpt.cpp |
 | clang/test/OpenMP/target_map_codegen_13.cpp |
 | clang/test/OpenMP/target_parallel_for_depend_codegen.cpp |
 | clang/test/OpenMP/target_data_use_device_addr_codegen.cpp |
 | clang/test/OpenMP/target_parallel_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_08.cpp |
 | llvm/test/Transforms/OpenMP/hide_mem_transfer_latency.ll |
 | clang/test/OpenMP/nvptx_target_requires_unified_shared_memory.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_33.cpp |
 | clang/test/OpenMP/target_map_codegen_28.cpp |
 | clang/test/OpenMP/target_codegen.cpp |
 | clang/test/OpenMP/target_simd_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_teams_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_reduction_codegen.cpp |
 | clang/test/OpenMP/target_depend_codegen.cpp |
 | clang/test/OpenMP/target_data_map_pointer_array_subscript_codegen.cpp |
 | clang/test/OpenMP/target_map_names.cpp |
 | clang/test/OpenMP/target_exit_data_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_22.cpp |
 | clang/test/OpenMP/target_update_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_private_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_enter_data_codegen.cpp |
 | clang/test/OpenMP/target_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_12.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_17.cpp |
 | clang/test/OpenMP/target_map_codegen_18.inc |
 | clang/test/OpenMP/target_map_codegen_03.cpp |
 | clang/test/OpenMP/target_map_codegen_06.cpp |
 | clang/test/OpenMP/target_map_codegen_29.cpp |
 | clang/test/OpenMP/nvptx_lambda_pointer_capturing.cpp |
 | clang/test/OpenMP/target_map_member_expr_array_section_codegen.cpp |
 | clang/test/OpenMP/target_teams_num_teams_codegen.cpp |
 | clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp |
 | clang/test/OpenMP/declare_mapper_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_21.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_07.cpp |
 | clang/test/OpenMP/target_map_codegen_00.cpp |
 | clang/test/OpenMP/target_map_codegen_26.cpp |
 | clang/test/OpenMP/target_map_codegen_20.cpp |
 | clang/test/OpenMP/distribute_simd_reduction_codegen.cpp |
 | clang/test/OpenMP/target_teams_thread_limit_codegen.cpp |
 | clang/test/OpenMP/target_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp |
 | clang/test/OpenMP/declare_target_link_codegen.cpp |
 | clang/test/OpenMP/target_parallel_if_codegen.cpp |
 | clang/test/OpenMP/teams_codegen.cpp |
 | llvm/include/llvm/Frontend/OpenMP/OMPKinds.def |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_30.cpp |
 | clang/test/OpenMP/target_map_codegen_02.cpp |
 | clang/test/OpenMP/target_map_codegen_19.cpp |
 | clang/test/OpenMP/target_parallel_for_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_simd_reduction_codegen.cpp |
 | clang/test/OpenMP/target_data_codegen.cpp |
 | clang/test/OpenMP/target_data_member_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_16.cpp |
 | clang/test/OpenMP/target_is_device_ptr_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_14.cpp |
 | clang/test/OpenMP/target_device_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_reduction_codegen.cpp |
 | clang/test/OpenMP/target_defaultmap_codegen.cpp |
 | clang/lib/CodeGen/CGOpenMPRuntime.h |
 | clang/test/OpenMP/target_map_codegen_05.cpp |
 | clang/test/OpenMP/target_simd_depend_codegen.cpp |
 | clang/test/OpenMP/target_parallel_for_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_parallel_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_27.cpp |
 | openmp/libomptarget/src/interface.cpp |
 | clang/test/OpenMP/target_parallel_depend_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp |
 | clang/test/OpenMP/capturing_in_templates.cpp |
 | clang/test/OpenMP/target_parallel_for_simd_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_reduction_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_15.cpp |
 | clang/lib/CodeGen/CGOpenMPRuntime.cpp |
 | clang/test/OpenMP/target_map_codegen_25.cpp |
 | clang/test/OpenMP/target_teams_distribute_reduction_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_codegen.cpp |
 | llvm/test/Transforms/OpenMP/add_attributes.ll |
 | clang/test/OpenMP/target_simd_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_09.cpp |
 | clang/test/OpenMP/target_map_codegen_01.cpp |
 | clang/test/OpenMP/target_map_codegen_04.cpp |
Commit
2fead1ac61f87b0bcee898007b4831f3e0533c84
by flo[ConstraintElimination] Decompose add nuw/sub nuw.
Make use of the more flexible constraint handling added in a8a79c90699a7ae9dee07daf7281cbbd592bf6ea to decompose add nuw/sub nuw.
|
 | llvm/lib/Transforms/Scalar/ConstraintElimination.cpp |
 | llvm/test/Transforms/ConstraintElimination/sub-nuw.ll |
 | llvm/test/Transforms/ConstraintElimination/add-nuw.ll |
Commit
e29292969b92aa15afba734d4f6863fc405f087c
by schmeiseRevert "Revert "Expand existing loopsink testing to also test loopsinking using new pass manager and fix LICM bug.""
This reverts commit 562addba652e8bdabe49f9123fd92c21b7a0d640.
Reverted change too quickly, the failing test cases passed on the next build. So reverting revert (to include the changes).
|
 | llvm/test/Transforms/LICM/loopsink-pr39570.ll |
 | llvm/test/Transforms/LICM/loopsink-pr39695.ll |
 | llvm/lib/Transforms/Scalar/LoopSink.cpp |
 | llvm/lib/Transforms/Scalar/LICM.cpp |
 | llvm/test/Transforms/LICM/loopsink-pr38462.ll |
 | llvm/test/Transforms/LICM/loopsink.ll |
Commit
b056030d6e3c4115294608bb0a90f02e2767d76e
by aeubanks[test] Fix remaining GVN tests under NPM
Some used analyses are optional but were relied upon in tests, the legacy PM runs them in a different order than the NPM.
|
 | llvm/test/Transforms/GVN/PRE/2011-06-01-NonLocalMemdepMiscompile.ll |
 | llvm/test/Transforms/GVN/PRE/pre-after-rle.ll |
 | llvm/test/Transforms/GVN/PRE/pre-load-in-loop.ll |
Commit
ca76e9f34da844d5f78029f0d437efef08b4dd3f
by aeubanks[test] Fix eliminate-callsite-inline.ll under NPM
The NPM inliner does not remove arbitrary unused internal functions, and that is not the point of this test.
|
 | llvm/test/Transforms/NewGVN/eliminate-callsite-inline.ll |
Commit
cd3c22c47e4bef347599e137ee6b1c3c510d7902
by nikita.ppv[BasicAA] Generalize base offset modulus handling
The GEP aliasing implementation currently has two pieces of code that solve two different subsets of the same basic problem: If you have GEPs with offsets 4*x + 0 and 4*y + 1 (assuming access size 1), then they do not alias regardless of whether x and y are the same.
One implementation is in aliasSameBasePointerGEPs(), which looks at this in a limited structural way. It requires both GEP base pointers to be exactly the same, then (optionally) a number of equal indexes, then an unknown index, then a non-equal index into a struct. This set of limitations works, but it's overly restrictive and hides the core property we're trying to exploit.
The second implementation is part of aliasGEP() itself and tries to find a common modulus in the scales, so it can then check that the constant offset doesn't overlap under modular arithmetic. The second implementation has the right idea of what the general problem is, but effectively only considers power of two factors in the scales (while aliasSameBasePointerGEPs also works with non-pow2 struct sizes.)
What this patch does is to adjust the aliasGEP() implementation to instead find the largest common factor in all the scales (i.e. the GCD) and use that as the modulus.
Differential Revision: https://reviews.llvm.org/D91027
|
 | llvm/lib/Analysis/BasicAliasAnalysis.cpp |
 | llvm/test/Analysis/BasicAA/struct-geps.ll |
Commit
0fe4b8e4b5b35ddfb37c2d9e24713fb2eb18227c
by scott.linder[NFC][AMDGPU] Remove some generic pointers in memory-legalizer tests
These tests implicitly depend on the target supporting generic pointers, so to prepare for testing them on GFX6 (which lacks FLAT) remove the dependency where possible.
Reviewed By: rampitec
Differential Revision: https://reviews.llvm.org/D91666
|
 | llvm/test/CodeGen/AMDGPU/memory-legalizer-store.ll |
 | llvm/test/CodeGen/AMDGPU/memory-legalizer-load.ll |
Commit
7bf89c2174f0b2a91a4f680b3246d432c135381b
by lebedev.ri[NFC][Reassociate] Delay checking isLoadCombineCandidate() until after ShouldConvertOrWithNoCommonBitsToAdd() but before haveNoCommonBitsSet()
This appears to improve -O3 compile-time performance somewhat: https://llvm-compile-time-tracker.com/compare.php?from=87369c626114ae17f4c637635c119e6de0856a9a&to=c04b8271e1609b0dfb20609b40844b0c4324517e&stat=instructions It doesn't look like delaying it until after haveNoCommonBitsSet() is better: https://llvm-compile-time-tracker.com/compare.php?from=c04b8271e1609b0dfb20609b40844b0c4324517e&to=b2943d450eaf41b5f76d2dc7350f0a279f64cd99&stat=instructions
|
 | llvm/lib/Transforms/Scalar/Reassociate.cpp |
Commit
18db29ea6fb6231221da412dbf07c186401bc496
by baptiste.saleil[PowerPC] Add peephole to remove redundant accumulator prime/unprime instructions
In some situations, the compiler may insert an accumulator prime instruction and an accumulator unprime instruction with no use of that accumulator between the two. That's for example the case when we store an accumulator after assembling it or restoring it. This patch adds a peephole to remove these prime and unprime instructions.
Differential Revision: https://reviews.llvm.org/D91386
|
 | llvm/test/CodeGen/PowerPC/mma-acc-memops.ll |
 | llvm/lib/Target/PowerPC/PPCPreEmitPeephole.cpp |
 | llvm/test/CodeGen/PowerPC/mma-intrinsics.ll |
Commit
5378c6a4bf9422db0e2d6232dc2dc43222d0ab6b
by huberjn[OpenMP] Add Support for Mapping Names in Libomptarget RTL
Summary: This patch adds basic support for priting the source location and names for the mapped variables. This patch does not support names for custom mappers. This is based on D89802.
Reviewers: jdoerfert
Differential Revision: https://reviews.llvm.org/D90172
|
 | openmp/libomptarget/src/rtl.cpp |
 | openmp/libomptarget/src/device.h |
 | openmp/libomptarget/src/interface.cpp |
 | openmp/libomptarget/src/device.cpp |
 | openmp/libomptarget/src/omptarget.cpp |
 | openmp/libomptarget/src/private.h |
 | openmp/libomptarget/include/SourceInfo.h |
 | openmp/libomptarget/include/omptarget.h |
Commit
cff479b145280922f381924396054ccb06124c4d
by schmeiseRevert "Revert "Revert "Expand existing loopsink testing to also test loopsinking using new pass manager and fix LICM bug."""
This reverts commit e29292969b92aa15afba734d4f6863fc405f087c.
This apparently causes a regression in compile time (ie, it slows down).
|
 | llvm/lib/Transforms/Scalar/LoopSink.cpp |
 | llvm/test/Transforms/LICM/loopsink-pr39570.ll |
 | llvm/test/Transforms/LICM/loopsink-pr39695.ll |
 | llvm/test/Transforms/LICM/loopsink.ll |
 | llvm/test/Transforms/LICM/loopsink-pr38462.ll |
 | llvm/lib/Transforms/Scalar/LICM.cpp |
Commit
f0785c1f7acd34ec6681f188afedc9be89ba0cc4
by Louis Dionne[libcxx] Port to NuttX (https://nuttx.apache.org) RTOS
Since NuttX conform to POSIX standard, the code need to add is very simple.
Differential Revision: https://reviews.llvm.org/D88718
|
 | libcxx/src/include/config_elast.h |
 | libcxx/include/CMakeLists.txt |
 | libcxx/include/__config |
 | libcxx/include/__locale |
 | libcxx/src/locale.cpp |
 | libcxx/include/support/nuttx/xlocale.h |
Commit
5556616b5b5223f95607ad94053a55f0deaf2762
by kostyak[GWP-ASan] Port tests to Fuchsia
This modifies the tests so that they can be run on Fuchsia: - add the necessary includes for `set`/`vector` etc - do the few modifications required to use zxtest instead og gtest
`backtrace.cpp` requires stacktrace support that Fuchsia doesn't have yet, and `enable_disable.cpp` currently uses `fork()` which Fuchsia doesn't support yet. I'll revisit this later.
I chose to use `harness.h` to hold my "platform-specific" include and namespace, and using this header in tests rather than `gtest.h`, which I am open to change if someone would rather go another direction.
Differential Revision: https://reviews.llvm.org/D91575
|
 | compiler-rt/lib/gwp_asan/tests/crash_handler_api.cpp |
 | compiler-rt/lib/gwp_asan/tests/harness.cpp |
 | compiler-rt/lib/gwp_asan/tests/alignment.cpp |
 | compiler-rt/lib/gwp_asan/tests/iterate.cpp |
 | compiler-rt/lib/gwp_asan/tests/harness.h |
 | compiler-rt/lib/gwp_asan/tests/driver.cpp |
 | compiler-rt/lib/gwp_asan/tests/mutex_test.cpp |
 | compiler-rt/lib/gwp_asan/tests/slot_reuse.cpp |
 | compiler-rt/lib/gwp_asan/tests/compression.cpp |
 | compiler-rt/lib/gwp_asan/tests/late_init.cpp |
Commit
e597116f055d2e82d9179f6edcb49dd015c514c2
by aeubanks[NPM] Add implicit basic-aa before other AA
This matches the legacy AA infra and fixes llvm/test/ANalysis/TypeBasedAliasAnalysis/precedence.ll under NPM.
|
 | llvm/tools/opt/NewPMDriver.cpp |
Commit
96d40df71ecee07c69aea512f6c04fc4fbe6acfb
by iMCExpr::evaluateAsRelocatableImpl : allow evaluation of non-VK_None MCSymbolRefExpr when MCAsmLayout is available
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4acf8c78e659833be8be047ba2f8561386a11d4b (1994) introduced this behavior: if a fixup symbol is equated to an expression with an undefined symbol, convert the fixup to be against the target symbol. glibc relies on this behavior to perform assembly level indirection
``` asm("memcpy = __GI_memcpy"); // from sysdeps/generic/symbol-hacks.h
... // call memcpy@PLT // The relocation references __GI_memcpy in GNU as, but memcpy in MC (without the patch) memcpy (...); ```
(1) It complements `extern __typeof(memcpy) memcpy asm("__GI_memcpy");` The frontend asm label does not redirect synthesized memcpy in the middle-end. (See D88712 for details) (2) `asm("memcpy = __GI_memcpy");` is in every translation unit, but the memcpy declaration may not be visible in the translation unit where memcpy is synthesized.
MC already redirects `memcpy = __GI_memcpy; call memcpy` but not `memcpy = __GI_memcpy; call memcpy@plt`. This patch fixes the latter by allowing MCExpr::evaluateAsRelocatableImpl to evaluate a non-VK_None MCSymbolRefExpr, which is only done after the layout is available.
GNU as allows `memcpy = __GI_memcpy+1; call memcpy@PLT` which seems nonsensical, so we don't allow it.
`MC/PowerPC/pr38945.s` `NUMBER = 0x6ffffff9; cmpwi 8,NUMBER@l` requires the `symbol@l` form in AsmMatcher, so evaluation needs to be deferred. This is the place whether future simplification may be possible.
Note, if we suppress the VM_None evaluation when MCAsmLayout is nullptr, we may lose the `invalid reassignment of non-absolute variable` diagnostic (`ARM/thumb_set-diagnostics.s` and `MC/AsmParser/variables-invalid.s`). We know that this diagnostic is troublesome in some cases (https://github.com/ClangBuiltLinux/linux/issues/1008), so we can consider making simplification in the future.
Reviewed By: jyknight
Differential Revision: https://reviews.llvm.org/D88625
|
 | llvm/test/MC/ELF/relocation.s |
 | llvm/test/MC/ELF/relocation-alias.s |
 | llvm/lib/MC/MCExpr.cpp |
 | llvm/test/MC/ARM/ehabi-personality-abs.s |
Commit
ea4973f2068abfbfd637ed446c18fe2191301cad
by psteinfeld[flang] Improve error message on bad LOGICAL compare operations
When comparing LOGICAL operands using ".eq." or ".ne." we were not guiding users to the ".eqv." and ".neqv." operations.
Differential Revision: https://reviews.llvm.org/D91736
|
 | flang/lib/Semantics/expression.cpp |
 | flang/test/Semantics/resolve98.f90 |
Commit
5349f99114cfcf597220cbc9b9253f178a43fabd
by pklausler[flang] Correct handling of null pointer initializers
Fortran defines "null-init" null pointer initializers as being function references, syntactically, that have to resolve to calls to the intrinsic function NULL() with no actual arguments.
Differential revision: https://reviews.llvm.org/D91657
|
 | flang/include/flang/Semantics/expression.h |
 | flang/lib/Evaluate/check-expression.cpp |
 | flang/test/Semantics/symbol15.f90 |
 | flang/lib/Semantics/expression.cpp |
 | flang/docs/f2018-grammar.md |
 | flang/lib/Semantics/resolve-names.cpp |
 | flang/test/Semantics/modfile20.f90 |
 | flang/lib/Parser/Fortran-parsers.cpp |
 | flang/include/flang/Parser/parse-tree.h |
 | flang/lib/Semantics/data-to-inits.cpp |
 | flang/test/Semantics/null-init.f90 |
Commit
be00e8893fdb814e67d8f06401afe869f878c4cf
by Louis Dionne[libc++] Clarify how we pick the typeinfo comparison
This commit makes it clear that the typeinfo comparison implementation is automatically selected by default, and that the CMake option only overrides the value. This has been a source of confusion and bugs ever since we've introduced complexity in that area, so I'm trying to simplify it while still allowing for some control on the implementation.
Differential Revision: https://reviews.llvm.org/D91574
|
 | libcxx/docs/BuildingLibcxx.rst |
 | libcxx/include/typeinfo |
 | libcxx/CMakeLists.txt |
 | libcxx/cmake/caches/Apple.cmake |
 | libcxx/include/__config_site.in |
 | libcxx/include/__config |
Commit
44cd03ad041e136b5fb1f512f470b1bfe1c49aad
by kai.wang[RISCV] Use register class VR for V instruction operands directly.
@tangxingxin1008 found a bug that regard vadd.vv v1, v3, a0 as a valid V instruction. We should remove the VRegAsmOperand operand class and use VR register class directly.
Patched by: tangxingxin1008, Hsiangkai Differential Revision: https://reviews.llvm.org/D91712
|
 | llvm/test/MC/RISCV/rvv/invalid.s |
 | llvm/lib/Target/RISCV/RISCVInstrInfoV.td |
Commit
5f2c5541f78750c21004e0172f13db4632966fd3
by richardFix assert on valid due to incorrect assumption that a field name must be unique in its scope.
|
 | clang/lib/Sema/SemaDeclCXX.cpp |
 | clang/test/SemaTemplate/default-member-init.cpp |
Commit
c1ba9c43adb7ee101048e88ab33c94a1ceda398e
by diego.caballero[mlir][Affine] Refactor affine fusion code in pass to utilities
Refactoring/clean-up step needed to add support for producer-consumer fusion with multi-store producer loops and, in general, to implement more general loop fusion strategies in Affine. It introduces the following changes: - AffineLoopFusion pass now uses loop fusion utilities more broadly to compute fusion legality (canFuseLoops utility) and perform the fusion transformation (fuseLoops utility). - Loop fusion utilities have been extended to deal with AffineLoopFusion requirements and assumptions while preserving both loop fusion utilities and AffineLoopFusion current functionality within a unified implementation. 'FusionStrategy' has been introduced for this purpose and, in the future, it will allow us to have a single loop fusion core implementation that will produce different fusion outputs depending on the strategy used. - Improve separation of concerns for legality and profitability analysis: 'isFusionProfitable' no longer filters out illegal scenarios that 'canFuse' didn't detect, or the other way around. 'canFuse' now takes loop dependences into account to determine the fusion loop depth (producer-consumer fusion only). - As a result, maximal fusion now doesn't require any profitability analysis. - Slices are now computed only once and reused across the legality, profitability and fusion transformation steps (producer-consumer). - Refactor some utilities and remove redundant copies of them.
This patch is NFCI and should preserve the existing functionality of both the AffineLoopFusion pass and the affine fusion utilities.
Reviewed By: andydavis1, bondhugula
Differential Revision: https://reviews.llvm.org/D90798
|
 | mlir/test/lib/Transforms/TestLoopFusion.cpp |
 | mlir/include/mlir/Analysis/Utils.h |
 | mlir/include/mlir/Transforms/LoopFusionUtils.h |
 | mlir/lib/Analysis/Utils.cpp |
 | mlir/lib/Transforms/LoopFusion.cpp |
 | mlir/lib/Transforms/Utils/LoopFusionUtils.cpp |
Commit
5824a572adb57b0437b540b61116ca5e8c9fcace
by thakis[gn build] (manually) merge f0785c1f7ac
|
 | llvm/utils/gn/secondary/libcxx/include/BUILD.gn |
Commit
0e2585c8042bd6ce4eca1333c64234adac7487f2
by Vitaly Buka[tsan] Add pthread_cond_clockwait interceptor
Disable the test on old systems. pthread_cond_clockwait is supported by glibc-2.30. It also supported by Android api 30 even though we do not run tsan on Android.
Fixes https://github.com/google/sanitizers/issues/1259
Reviewed By: dvyukov
|
 | compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp |
 | compiler-rt/test/lit.common.cfg.py |
 | compiler-rt/test/tsan/Linux/clockwait_double_lock.c |
Commit
f3aa9e36d91b7b0f4f24f7a3b13cf80c11356e5e
by Jonas Devlieghere[MachO] Update embedded part of ObjectFileMachO for Mangled API change
Mangled::GetName and Mangled::GetDemangledName no longer take any arguments.
|
 | lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp |
Commit
132d6d73ea024beab3df99df2ecf4d345995fdfd
by marukawa[VE] Add vmv intrinsic instructions
Add vmv intrinsic instructions and regression tests.
Reviewed By: simoll
Differential Revision: https://reviews.llvm.org/D91700
|
 | llvm/lib/Target/VE/VEInstrIntrinsicVL.gen.td |
 | llvm/test/CodeGen/VE/VELIntrinsics/vmv.ll |
 | llvm/include/llvm/IR/IntrinsicsVEVL.gen.td |
Commit
544cb649d7789a4199e8acea6e8a9da1409702b1
by scott.linder[YAMLIO] Add a generic YAML fuzzer harness
This is essentially a clone of the existing fuzzer added in D50839, but for the whole parser Streamer, and currently only testing for sanitizer violations.
Differential Revision: https://reviews.llvm.org/D91573
|
 | llvm/tools/llvm-yaml-parser-fuzzer/CMakeLists.txt |
 | llvm/tools/llvm-yaml-parser-fuzzer/yaml-parser-fuzzer.cpp |
 | llvm/tools/llvm-yaml-parser-fuzzer/DummyYAMLParserFuzzer.cpp |
Commit
2980933d850b7506a1a96f8d11588b71956f4089
by scott.linder[YAMLIO] Support non-null-terminated inputs
In some places the parser guards against dereferencing `End`, while in others it relies on the presence of a trailing `'\0'` to elide checks.
Add the remaining guards needed to ensure the parser never attempts to dereference `End`, making it safe to not require a null-terminated input buffer.
Update the parser fuzzer harness so that it tests with buffers that are guaranteed to be non-null-terminated, null-terminated, and 1-terminated, additionally ensuring the result of the parse is the same in each case.
Some of the regression tests were written by inspection, and some are cases caught by the fuzzer which required additional fixes in the parser.
Differential Revision: https://reviews.llvm.org/D84050
|
 | llvm/unittests/Support/YAMLIOTest.cpp |
 | llvm/lib/Support/YAMLParser.cpp |
 | llvm/tools/llvm-yaml-parser-fuzzer/yaml-parser-fuzzer.cpp |
Commit
67f16e9e91f2f07cdb9813b60c195f5a1cd1f57d
by aeubanks[NPM] Remove -enable-npm-optnone flag
It has been on by default for a couple months without complaint.
Reviewed By: asbirlea
Differential Revision: https://reviews.llvm.org/D91743
|
 | clang/test/CodeGen/aggregate-assign-call.c |
 | llvm/lib/Passes/StandardInstrumentations.cpp |
 | llvm/test/Feature/optnone-opt.ll |
 | clang/test/CodeGen/no-skipped-passes-O0-opt-bisect.c |
Commit
523cc097fdafa1bb60373dcc70df7dfd31551f56
by eugenis[hwasan] Fix Thread reuse (try 2).
HwasanThreadList::DontNeedThread clobbers Thread::next_, Breaking the freelist. As a result, only the top of the freelist ever gets reused, and the rest of it is lost.
Since the Thread object with its associated ring buffer is only 8Kb, this is typically only noticable in long running processes, such as fuzzers.
Fix the problem by switching from an intrusive linked list to a vector.
Differential Revision: https://reviews.llvm.org/D91392
|
 | compiler-rt/test/hwasan/TestCases/Linux/reuse-threads.cpp |
 | compiler-rt/test/hwasan/TestCases/thread-uaf.c |
 | compiler-rt/lib/hwasan/hwasan_thread_list.h |
 | compiler-rt/lib/hwasan/hwasan_thread.h |
Commit
5747380772e0bbf5762e5ed9c39e6c9265bafc87
by dblaikieAdded GDB pretty printer for StringMap
Reviewed By: csigg, dblaikie
Differential Revision: https://reviews.llvm.org/D91183
|
 | debuginfo-tests/llvm-prettyprinters/gdb/llvm-support.cpp |
 | llvm/utils/gdb-scripts/prettyprinters.py |
 | debuginfo-tests/llvm-prettyprinters/gdb/llvm-support.gdb |
 | llvm/include/llvm/ADT/StringMap.h |
Commit
803af31e5b29d53cbf09def55cf221401c108744
by aheejin[WebAssembly] Support fp reg class in r constraint
Patch by snek
Reviewed By: aheejin
Differential Revision: https://reviews.llvm.org/D90978
|
 | llvm/test/CodeGen/WebAssembly/inline-asm.ll |
 | llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp |
Commit
9ad62f62b9ad9852fea17a4c81b35e281e45fbaf
by ajcbik[mlir][sparse] remove a few rewriting failures
Rationale: Make sure preconditions are tested already during verfication. Currently, the only way a sparse rewriting rule can fail is if (1) the linalg op does not have sparse annotations, or (2) a yet to be handled operation is encounted inside the op
Reviewed By: penpornk
Differential Revision: https://reviews.llvm.org/D91748
|
 | mlir/lib/Dialect/Linalg/Transforms/Sparsification.cpp |
 | mlir/test/Dialect/Linalg/sparse_invalid.mlir |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
Commit
5abf76fbe37380874a88cc9aa02164800e4e10f3
by Duncan P. N. Exon SmithADT: Add assertions to SmallVector::insert, etc., for reference invalidation
2c196bbc6bd897b3dcc1d87a3baac28e1e88df41 asserted that `SmallVector::push_back` doesn't invalidate the parameter when it needs to grow. Do the same for `resize`, `append`, `assign`, `insert`, and `emplace_back`.
Differential Revision: https://reviews.llvm.org/D91744
|
 | llvm/unittests/ADT/SmallVectorTest.cpp |
 | llvm/lib/MC/MCParser/MasmParser.cpp |
 | llvm/utils/TableGen/CodeGenSchedule.cpp |
 | llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp |
 | llvm/include/llvm/ADT/SmallVector.h |
 | llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp |
Commit
90966daac3dd633b9621426e6621a706807d7c0d
by Duncan P. N. Exon SmithSupport: Avoid SmallVector::assign with a range from to-be-replaced vector in Windows GetExecutableName
This code wasn't valid, and 5abf76fbe37380874a88cc9aa02164800e4e10f3 started asserting. This is a speculative fix since I don't have a Windows machine handy.
|
 | llvm/lib/Support/Windows/Process.inc |
Commit
25f5406f087579d43ca9a82dee7f3e76f0691bad
by ckennelly[clang-tidy] Extend bugprone-string-constructor-check to std::string_view.
This allows for matching the constructors std::string has in common with std::string_view.
Reviewed By: aaron.ballman
Differential Revision: https://reviews.llvm.org/D91015
|
 | clang-tools-extra/test/clang-tidy/checkers/bugprone-string-constructor.cpp |
 | clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.h |
 | clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp |
 | clang-tools-extra/docs/clang-tidy/checks/bugprone-string-constructor.rst |
Commit
fb19f11ef47bc479d42c11450817c5e855a9830b
by a20012251[trace][intel-pt] Scaffold the 'thread trace start | stop' commands
Depends on D90490.
The stop command is simple and invokes the new method Trace::StopTracingThread(thread).
On the other hand, the start command works by delegating its implementation to a CommandObject provided by the Trace plugin. This is necessary because each trace plugin needs different options for this command. There's even the chance that a Trace plugin can't support live tracing, but instead supports offline decoding and analysis, which means that "thread trace dump instructions" works but "thread trace start" doest. Because of this and a few other reasons, it's better to have each plugin provide this implementation.
Besides, I'm using the GetSupportedTraceType method introduced in D90490 to quickly infer what's the trace plug-in that works for the current process.
As an implementation note, I moved CommandObjectIterateOverThreads to its header so that I can use it from the IntelPT plugin. Besides, the actual start and stop logic for intel-pt is not part of this diff.
Reviewed By: clayborg
Differential Revision: https://reviews.llvm.org/D90729
|
 | lldb/source/Plugins/Process/mach-core/ProcessMachCore.h |
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.cpp |
 | lldb/test/API/commands/trace/TestTraceDumpInstructions.py |
 | lldb/source/Commands/CMakeLists.txt |
 | lldb/source/Plugins/Process/minidump/ProcessMinidump.h |
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPTOptions.td |
 | lldb/source/Core/PluginManager.cpp |
 | lldb/source/Plugins/Trace/intel-pt/CommandObjectTraceStartIntelPT.h |
 | lldb/source/Commands/CommandObjectThread.cpp |
 | lldb/include/lldb/Target/Trace.h |
 | lldb/include/lldb/Core/PluginManager.h |
 | lldb/include/lldb/Target/PostMortemProcess.h |
 | lldb/source/Commands/CommandObjectMultiword.cpp |
 | lldb/source/Commands/CommandObjectThreadUtil.cpp |
 | lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp |
 | lldb/test/API/commands/trace/TestTraceStartStop.py |
 | lldb/source/Plugins/Process/elf-core/ProcessElfCore.h |
 | lldb/include/lldb/Target/ProcessTrace.h |
 | lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp |
 | lldb/include/lldb/lldb-enumerations.h |
 | lldb/source/Commands/CommandObjectThreadUtil.h |
 | lldb/source/Plugins/Trace/intel-pt/CMakeLists.txt |
 | lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp |
 | lldb/source/Target/Process.cpp |
 | lldb/include/lldb/Interpreter/CommandObjectMultiword.h |
 | lldb/source/Target/ProcessTrace.cpp |
 | lldb/source/Interpreter/CommandObject.cpp |
 | lldb/include/lldb/Target/Process.h |
 | lldb/source/Plugins/Trace/intel-pt/CommandObjectTraceStartIntelPT.cpp |
 | lldb/include/lldb/lldb-private-interfaces.h |
Commit
5f0ae23e71df19e0741d049e6077542b32b6b66a
by lkail[X86][AArch64][RISCV] Pre-commit negated abs test case. NFC.
|
 | llvm/test/CodeGen/X86/neg-abs.ll |
 | llvm/test/CodeGen/AArch64/neg-abs.ll |
 | llvm/test/CodeGen/RISCV/neg-abs.ll |
Commit
c0958b7b4c6a31b0b89462c3ee770e486d4eb535
by riddleriver[mlir] Add support for referencing a SymbolRefAttr in a SideEffectInstance
This allows for operations that exclusively affect symbol operations to better describe their side effects.
Differential Revision: https://reviews.llvm.org/D91581
|
 | mlir/include/mlir/Interfaces/SideEffectInterfaces.h |
 | mlir/test/lib/IR/TestSideEffects.cpp |
 | mlir/test/IR/test-side-effects.mlir |
 | mlir/lib/TableGen/Attribute.cpp |
 | mlir/include/mlir/TableGen/Attribute.h |
 | mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp |
 | mlir/test/mlir-tblgen/op-side-effects.td |
 | mlir/include/mlir/Interfaces/SideEffectInterfaceBase.td |
 | mlir/test/lib/Dialect/Test/TestDialect.cpp |
Commit
bd106d74692fdc4d1eb79fb3a78da144f38791da
by riddleriver[mlir][Pass] Only enable/disable CrashRecovery once
This prevents potential problems that occur when multiple pass managers register crash recovery contexts.
|
 | mlir/lib/Pass/Pass.cpp |
Commit
6b0fc1f3c161295e6577d4c2237cefcb8e4dd9ba
by craig.topper[RISCV] Add MemOperand to the instruction created by storeRegToStackSlot/loadRegFromStackSlot
Differential Revision: https://reviews.llvm.org/D91730
|
 | llvm/lib/Target/RISCV/RISCVInstrInfo.cpp |
 | llvm/test/CodeGen/RISCV/select-optimize-multiple.ll |
Commit
b51e844f7a4ca4a0cb976bd59bf8b5588d6f3be5
by mtrofin[NFC][TFUtils] Extract out the output spec loader
It's generic for the 'development mode', not specific to the inliner case.
Differential Revision: https://reviews.llvm.org/D91751
|
 | llvm/include/llvm/Analysis/Utils/TFUtils.h |
 | llvm/lib/Analysis/DevelopmentModeInlineAdvisor.cpp |
 | llvm/unittests/Analysis/TFUtilsTest.cpp |
 | llvm/lib/Analysis/TFUtils.cpp |
Commit
43c0e4f6657666df335a4bb4dad74f32fcfef607
by kazu[Transforms] Use llvm::is_contained (NFC)
|
 | llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp |
 | llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp |
 | llvm/lib/Transforms/Scalar/GVN.cpp |
 | llvm/lib/Transforms/Scalar/GVNHoist.cpp |
 | llvm/lib/Transforms/Utils/BasicBlockUtils.cpp |
 | llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp |
 | llvm/lib/Transforms/Scalar/LoopInterchange.cpp |
 | llvm/lib/Transforms/Utils/Local.cpp |
Commit
8ab2353a4c3dc430b28190b98b16418ef8ffce30
by mtrofin[NFC][TFUtils] also include output specs lookup logic in loadOutputSpecs
The lookup logic is also reusable.
Also refactored the API to return the loaded vector - this makes it more clear what state it is in in the case of error (as it won't be returned).
Differential Revision: https://reviews.llvm.org/D91759
|
 | llvm/lib/Analysis/TFUtils.cpp |
 | llvm/include/llvm/Analysis/Utils/TFUtils.h |
 | llvm/lib/Analysis/DevelopmentModeInlineAdvisor.cpp |
Commit
4d8dede5e53a802bb35dd54cd693390793cb753f
by sivachandra[libc] Fix the overflow check condition of ldexp.
Targeted tests have been added.
Reviewed By: lntue
Differential Revision: https://reviews.llvm.org/D91752
|
 | libc/test/src/math/LdExpTest.h |
 | libc/utils/FPUtil/ManipulationFunctions.h |
Commit
6b1341eb5bb71a1ce4547165a247b23bb30ef44e
by qiucofan[PowerPC] [Clang] Fix alignment of 128-bit float types
According to ELF v2 ABI, both IEEE 128-bit and IBM extended floating point variables should be quad-word (16 bytes) aligned. Previously, only vector types are considered aligned as quad-word on PowerPC.
This patch will fix incorrectness of IEEE 128-bit float argument in va_arg cases.
Reviewed By: rjmccall
Differential Revision: https://reviews.llvm.org/D91596
|
 | clang/test/CodeGen/ppc64le-varargs-f128.c |
 | clang/lib/CodeGen/TargetInfo.cpp |
Commit
7c2990b8af6f906a431b14951e831647d9bbb090
by kadircet[clangd] Fix data race in GoToInclude.All test
|
 | clang-tools-extra/clangd/unittests/XRefsTests.cpp |
Commit
ea7ab5a42cd4ab236977c4fe64768641fd506fd7
by weiwei64[IndVarSimplify] Notify top most loop to drop cached exit counts
Some nested loops may share the same ExitingBB, so after we finishing FoldExit, we need to notify OuterLoop and SCEV to drop any stored trip count.
Patched by: guopeilin Reviewed By: mkazantsev
Differential Revision: https://reviews.llvm.org/D91325
|
 | llvm/test/Transforms/IndVarSimplify/shared-exit-between-nested-loop.ll |
 | llvm/lib/Transforms/Scalar/IndVarSimplify.cpp |
Commit
1827005cfcfff2100535d35c22e0cf7caa469c46
by sbc[WebAssembly] Add support for named globals in the object format.
Differential Revision: https://reviews.llvm.org/D91769
|
 | llvm/include/llvm/BinaryFormat/Wasm.h |
 | lld/test/wasm/init-fini.ll |
 | lld/test/wasm/function-imports-first.ll |
 | lld/test/wasm/target-feature-used.yaml |
 | lld/test/wasm/weak-alias.ll |
 | lld/test/wasm/local-symbols.ll |
 | llvm/include/llvm/ObjectYAML/WasmYAML.h |
 | lld/test/wasm/load-undefined.test |
 | lld/test/wasm/signature-mismatch-export.ll |
 | lld/test/wasm/undefined-weak-call.ll |
 | lld/test/wasm/map-file.s |
 | lld/test/wasm/target-feature-disallowed.yaml |
 | lld/test/wasm/weak-alias-overide.ll |
 | lld/test/wasm/data-segment-merging.ll |
 | llvm/lib/ObjectYAML/WasmEmitter.cpp |
 | lld/test/wasm/target-feature-none.yaml |
 | lld/test/wasm/stack-pointer.ll |
 | llvm/lib/ObjectYAML/WasmYAML.cpp |
 | llvm/tools/obj2yaml/wasm2yaml.cpp |
 | lld/test/wasm/ctor_return_value.s |
 | lld/test/wasm/call-indirect.ll |
 | lld/test/wasm/gc-imports.s |
 | lld/test/wasm/alias.s |
 | lld/test/wasm/locals-duplicate.test |
 | lld/test/wasm/target-feature-required.yaml |
 | lld/test/wasm/signature-mismatch.ll |
 | lld/wasm/SyntheticSections.h |
 | llvm/lib/Object/WasmObjectFile.cpp |
 | lld/wasm/SyntheticSections.cpp |
 | lld/test/wasm/gc-sections.ll |
 | llvm/include/llvm/Object/Wasm.h |
 | lld/test/wasm/function-imports.ll |
 | lld/test/wasm/cxx-mangling.ll |
 | lld/test/wasm/weak-symbols.ll |
Commit
ffe6c97f6b6e996f22ec3ca4a886dbb0d4f6f6fa
by simon.moll[VE] VEC_BROADCAST, lowering and isel
This defines the vec_broadcast SDNode along with lowering and isel code. We also remove unused type mappings for the vector register classes (all vector MVTs that are not used in the ISA go).
We will implement support for short vectors later by intercepting nodes with illegal vector EVTs before LLVM has had a chance to widen them.
Reviewed By: kaz7
Differential Revision: https://reviews.llvm.org/D91646
|
 | llvm/lib/Target/VE/VEInstrInfo.td |
 | llvm/lib/Target/VE/VECallingConv.td |
 | llvm/lib/Target/VE/VEISelLowering.h |
 | llvm/lib/Target/VE/VEISelLowering.cpp |
 | llvm/lib/Target/VE/VEInstrPatternsVec.td |
 | llvm/test/CodeGen/VE/Vector/vec_broadcast.ll |
 | llvm/lib/Target/VE/VERegisterInfo.td |
Commit
58ce4a8b1190f2ccc584140ca7fd1a6391846f3d
by zinenko[mlir][TableGen] Support intrinsics with multiple returns and overloaded operands.
For intrinsics with multiple returns where one or more operands are overloaded, the overloaded type is inferred from the corresponding field of the resulting struct, instead of accessing the result directly.
As such, the hasResult parameter of LLVM_IntrOpBase (and derived classes) is replaced with numResults. TableGen for intrinsics also updated to populate this field with the total number of results.
Reviewed By: ftynse
Differential Revision: https://reviews.llvm.org/D91680
|
 | mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td |
 | mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td |
 | mlir/test/Target/llvmir-intrinsics.mlir |
 | mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td |
 | mlir/tools/mlir-tblgen/LLVMIRIntrinsicGen.cpp |
Commit
47518d6a0aed7ec3607aeacfa511dedda2cd67cb
by 1.int32[clang-tidy] Improving bugprone-sizeof-expr check.
Do not warn for "pointer to aggregate" in a `sizeof(A) / sizeof(A[0])` expression if `A` is an array of pointers. This is the usual way of calculating the array length even if the array is of pointers.
Reviewed By: aaron.ballman
Differential Revision: https://reviews.llvm.org/D91543
|
 | clang-tools-extra/test/clang-tidy/checkers/bugprone-sizeof-expression.cpp |
 | clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp |
Commit
7c601d09a76b55d191448d70b47a0a575db914b6
by mkazantsev[NFC] Move code earlier as preparation for further changes
|
 | llvm/lib/Transforms/Utils/SimplifyIndVar.cpp |
Commit
515105f46b7e0037fe49a6fa8e469823c3f8433e
by mkazantsev[NFC] Remove comment (commited ahead of time by mistake)
|
 | llvm/lib/Transforms/Utils/SimplifyIndVar.cpp |
Commit
1983acce7c4da01d8fb33b3b3465619f973edd49
by flo[SelDAGBuilder] Do not require simple VTs for constraints.
In some cases, the values passed to `asm sideeffect` calls cannot be mapped directly to simple MVTs. Currently, we crash in the backend if that happens. An example can be found in the @test_vector_too_large_r_m test case, where we pass <9 x float> vectors. In practice, this can happen in cases like the simple C example below.
using vec = float __attribute__((ext_vector_type(9))); void f1 (vec m) { asm volatile("" : "+r,m"(m) : : "memory"); }
One case that use "+r,m" constraints for arbitrary data types in practice is google-benchmark's DoNotOptimize.
This patch updates visitInlineAsm so that it use MVT::Other for constraints with complex VTs. It looks like the rest of the backend correctly deals with that and properly legalizes the type.
And we still report an error if there are no registers to satisfy the constraint.
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D91710
|
 | llvm/test/CodeGen/AArch64/arm64-inline-asm.ll |
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp |
 | llvm/test/CodeGen/AArch64/inlineasm-illegal-type.ll |
Commit
2d1f471e45af817e39f50ec88079cbbbf2580842
by david.stenberg[Mach0] Fix unused-variable warnings
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D91519
|
 | lld/MachO/SymbolTable.cpp |
Commit
a1de391dae8b6851c49a54da984c19d556c2b561
by simon.moll[LV][NFC-ish] Allow vector widths over 256 elements
The assertion that vector widths are <= 256 elements was hard wired in the LV code. Eg, VE allows for vectors up to 512 elements. Test again the TTI vector register bit width instead - this is an NFC for non-asserting builds.
Reviewed By: fhahn
Differential Revision: https://reviews.llvm.org/D91518
|
 | llvm/lib/Transforms/Vectorize/LoopVectorize.cpp |
Commit
1e2da3839cc3543629ecb847fd3aa34edb64b42a
by joe.ellis[AArch64][SVE] Allow C-style casts between fixed-size and scalable vectors
This patch allows C-style casting between fixed-size and scalable vectors. This kind of cast was previously blocked by the compiler, but it should be allowed.
Differential Revision: https://reviews.llvm.org/D91262
|
 | clang/include/clang/Sema/Sema.h |
 | clang/lib/Sema/SemaCast.cpp |
 | clang/test/Sema/aarch64-sve-explicit-casts-fixed-size.c |
 | clang/test/SemaCXX/aarch64-sve-explicit-casts-fixed-size.cpp |
 | clang/lib/Sema/SemaExpr.cpp |
Commit
14ae02fb3397961bb5f99a0df60622375fc1976d
by llvm-dev[X86][AVX] Only share broadcasts of different widths from the same SDValue of the same SDNode (PR48215)
D57663 allowed us to reuse broadcasts of the same scalar value by extracting low subvectors from the widest type.
Unfortunately we weren't ensuring the broadcasts were from the same SDValue, just the same SDNode - which failed on multiple-value nodes like ISD::SDIVREM
FYI: I intend to request this be merged into the 11.x release branch.
Differential Revision: https://reviews.llvm.org/D91709
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/pr48215.ll |
Commit
d8ff269f677621a773d75c79d50bb3f59a6b052e
by mgorny[lldb] Add explicit 64-bit fip/fdp registers on x86_64
The FXSAVE/XSAVE data can have two different layouts on x86_64. When called as FXSAVE/XSAVE..., the Instruction Pointer and Address Pointer registers are reported using a 16-bit segment identifier and a 32-bit offset. When called as FXSAVE64/XSAVE64..., they are reported using a complete 64-bit offsets instead.
LLDB has historically followed GDB and unconditionally used to assume the 32-bit layout, with the slight modification of possibly using a 32-bit segment register (i.e. extending the register into the reserved 16 upper bits). When the underlying operating system used FXSAVE64/XSAVE64..., the pointer was split into two halves, with the upper half repored as the segment registers. While reconstructing the full address was possible on the user end (and e.g. the FPU register tests did that), it certainly was not the most convenient option.
Introduce a two additional 'fip' and 'fdp' registers that overlap with 'fiseg'/'fioff' and 'foseg'/'foff' respectively, and report the complete 64-bit address.
Differential Revision: https://reviews.llvm.org/D91497
|
 | lldb/test/Shell/Register/x86-64-fp-read.test |
 | lldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_x86_64.cpp |
 | lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp |
 | lldb/test/Shell/Register/x86-fp-read.test |
 | lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.h |
 | lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.cpp |
 | lldb/test/Shell/Register/x86-fp-write.test |
 | lldb/source/Plugins/Process/Utility/RegisterInfos_x86_64.h |
 | lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp |
 | lldb/test/Shell/Register/x86-64-fp-write.test |
 | lldb/source/Plugins/Process/Utility/lldb-x86-register-enums.h |
 | lldb/unittests/Process/Utility/RegisterContextFreeBSDTest.cpp |
Commit
c43abf043692babf9ad4f8bded2fdf6ab9c354b0
by mgorny[lldb] Use translated full ftag values
Translate between abridged and full ftag values in order to expose the latter in the gdb-remote protocol while the former are used by FXSAVE/XSAVE... This matches the gdb behavior.
Differential Revision: https://reviews.llvm.org/D91504
|
 | lldb/test/Shell/Register/x86-64-fp-write.test |
 | lldb/test/Shell/Register/x86-64-fp-read.test |
 | lldb/test/Shell/Register/x86-fp-read.test |
 | lldb/source/Plugins/Process/Utility/RegisterContext_x86.cpp |
 | lldb/unittests/Process/Utility/CMakeLists.txt |
 | lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.cpp |
 | lldb/unittests/Process/Utility/RegisterContextTest.cpp |
 | lldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_x86_64.cpp |
 | lldb/test/Shell/Register/x86-fp-write.test |
 | lldb/source/Plugins/Process/Utility/CMakeLists.txt |
 | lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp |
 | lldb/source/Plugins/Process/Utility/RegisterContext_x86.h |
Commit
140783347afb6e1848c81617d7fa3e556087cadd
by kbobyrev[clangd] Disable SerializationTest.NoCrashOnBadArraySize with ASAN
Address Sanitizer crashes on large allocations:
```c++ // Try to crash rather than hang on large allocation. ScopedMemoryLimit MemLimit(1000 * 1024 * 1024); // 1GB ```
|
 | clang-tools-extra/clangd/unittests/SerializationTests.cpp |
Commit
006b3bdeddb0234f53a1ab72e427ef74184461f5
by david.green[ARM] Deliberately prevent inline asm in low overhead loops. NFC
This was already something that was handled by one of the "else" branches in maybeLoweredToCall, so this patch is an NFC but makes it explicit and adds a test. We may in the future want to support this under certain situations but for the moment just don't try and create low overhead loops with inline asm in them.
Differential Revision: https://reviews.llvm.org/D91257
|
 | llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp |
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/inlineasm.ll |
Commit
fceaff41d6b7048768294dbe436fb3016fd29fc1
by llvm-dev[ValueTracking] computeKnownBitsFromShiftOperator - move shift amount analysis to top of the function. NFCI.
These are all lightweight to compute and helps avoid issues with Known being used to hold both the shift amount and then the shifted result.
Minor cleanup for D90479.
|
 | llvm/lib/Analysis/ValueTracking.cpp |
Commit
9374e7b1781f0032873cc9de8f67a49acfbfbc00
by llvm-dev[RISCV] Extend 32-bit test coverage of neg-abs tests for D91120
|
 | llvm/test/CodeGen/RISCV/neg-abs.ll |
Commit
7f4d88a1fa6b533267eba2424dbef5efe47372b6
by flo[ConstraintElimination] Add GEP test case with variable offset.
|
 | llvm/test/Transforms/ConstraintElimination/geps.ll |
Commit
57e0007546abd6c73c54249705f4fe42592fd179
by sven.vanhaastregtFix Wundef warnings for Support/Compiler.h
Support/Compiler.h is included by c files (e.g. regcomp.c) where __cplusplus is not defined at all. Avoid evaluating the undefined macro for such files.
|
 | llvm/include/llvm/Support/Compiler.h |
Commit
40267cc989e6d055d5e470681dc7bcfffc72c32f
by arthur.j.odwyer[libc++] ADL-proof <vector> by adding _VSTD:: qualification on calls.
(1) Add _VSTD:: qualification to __swap_allocator.
(2) Add _VSTD:: qualification consistently to __to_address.
(3) Add some more missing _VSTD:: to <vector>, with a regression test. This part is cleanup after d9a4f936d05.
Note that a vector whose allocator actually runs afoul of any of these ADL calls will likely also run afoul of simple things like `v1 == v2` (which is also an ADL call). But, still, libc++ should be consistent in qualifying function calls wherever possible.
Relevant blog post: https://quuxplusone.github.io/blog/2019/09/26/uglification-doesnt-stop-adl/
Differential Revision: https://reviews.llvm.org/D91708
|
 | libcxx/include/__split_buffer |
 | libcxx/include/__hash_table |
 | libcxx/include/forward_list |
 | libcxx/include/__tree |
 | libcxx/include/list |
 | libcxx/include/memory |
 | libcxx/test/libcxx/containers/sequences/vector/robust_against_adl.pass.cpp |
 | libcxx/include/string |
 | libcxx/include/vector |
 | libcxx/include/deque |
Commit
9e39a5d9a68af70c58ac415e51e6b12cd85f9af2
by antiagainst[mlir][linalg] Start a named ops to generic ops pass
This commit starts a new pass and patterns for converting Linalg named ops to generic ops. This enables us to leverage the flexbility from generic ops during transformations. Right now only linalg.conv is supported; others will be added when useful.
Reviewed By: nicolasvasilache
Differential Revision: https://reviews.llvm.org/D91357
|
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOpsInterface.td |
 | mlir/include/mlir/Dialect/Linalg/Passes.td |
 | mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h |
 | mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td |
 | mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-gen.cpp |
 | mlir/include/mlir/Dialect/Linalg/Passes.h |
 | mlir/test/Dialect/Linalg/generalize-named-ops.mlir |
 | mlir/lib/Dialect/Linalg/Transforms/Generalization.cpp |
Commit
17497ec514f7a87e0ac39a803534b3a324a19324
by Xiangling.Liao[AIX][FE] Support constructor/destructor attribute
Support attribute((constructor)) and attribute((destructor)) on AIX
Differential Revision: https://reviews.llvm.org/D90892
|
 | clang/test/CodeGenCXX/aix-constructor-attribute.cpp |
 | clang/lib/CodeGen/CGDeclCXX.cpp |
 | clang/lib/CodeGen/CodeGenFunction.h |
 | clang/test/CodeGen/aix-destructor-attribute.c |
 | clang/test/CodeGen/aix-constructor-attribute.cpp |
 | clang/test/CodeGen/aix-destructor-attribute.cpp |
 | clang/test/CodeGenCXX/aix-destructor-attribute.cpp |
 | clang/test/CodeGen/aix-constructor-attribute.c |
 | clang/lib/CodeGen/CodeGenModule.h |
 | clang/lib/Sema/SemaDeclAttr.cpp |
 | clang/lib/CodeGen/ItaniumCXXABI.cpp |
 | clang/lib/CodeGen/CodeGenModule.cpp |
 | clang/test/CodeGenCXX/aix-sinit-register-global-dtors-with-atexit.cpp |
Commit
193a9b374e24d31b30095f2789f1994bc0c7b663
by goncharov.mikhailRevert "[lldb] Use translated full ftag values"
This reverts commit c43abf043692babf9ad4f8bded2fdf6ab9c354b0.
Test commands/register/register/register_command/TestRegisters.py fails. Buildbot http://lab.llvm.org:8011/#/changes/4149
|
 | lldb/test/Shell/Register/x86-64-fp-read.test |
 | lldb/test/Shell/Register/x86-fp-read.test |
 | lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp |
 | lldb/unittests/Process/Utility/RegisterContextTest.cpp |
 | lldb/source/Plugins/Process/Utility/CMakeLists.txt |
 | lldb/source/Plugins/Process/Utility/RegisterContext_x86.cpp |
 | lldb/test/Shell/Register/x86-fp-write.test |
 | lldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_x86_64.cpp |
 | lldb/source/Plugins/Process/Utility/RegisterContext_x86.h |
 | lldb/unittests/Process/Utility/CMakeLists.txt |
 | lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.cpp |
 | lldb/test/Shell/Register/x86-64-fp-write.test |
Commit
a1702a297b8bb1e4ed15673c6e122ac9dab4c802
by Jan Svoboda[clang][cli] Port Comment option flags to new parsing system
Depends on D83690
Reviewed By: dexonsmith
Original patch by Daniel Grumberg.
Differential Revision: https://reviews.llvm.org/D83691
|
 | clang/include/clang/Driver/Options.td |
Commit
620adacf87a376ec536ccc66af59df5bb4dc3b38
by goncharov.mikhailRevert "[libc++] ADL-proof <vector> by adding _VSTD:: qualification on calls."
This reverts commit 40267cc989e6d055d5e470681dc7bcfffc72c32f.
Build fails, e.g. http://lab.llvm.org:8011/#/builders/23/builds/108
|
 | libcxx/include/__hash_table |
 | libcxx/include/__split_buffer |
 | libcxx/include/forward_list |
 | libcxx/test/libcxx/containers/sequences/vector/robust_against_adl.pass.cpp |
 | libcxx/include/deque |
 | libcxx/include/__tree |
 | libcxx/include/list |
 | libcxx/include/memory |
 | libcxx/include/vector |
 | libcxx/include/string |
Commit
7a0ea120e2a1fffab71f9c8e3d5337899f7a42af
by Jan Svoboda[clang][cli] Port analyzer flags to new option parsing system
Depends on D83691
Reviewed By: dexonsmith
Original patch by Daniel Grumberg.
Differential Revision: https://reviews.llvm.org/D83693
|
 | clang/lib/Frontend/CompilerInvocation.cpp |
 | clang/include/clang/Driver/Options.td |
Commit
734d2f98f64940b1f545d677729d213a954c7a3f
by hokein.wu[clangd] No crash on "-verify" mode.
If there is a "-verify" flag in the compile command, clangd will crash (hit the assertion) inside the `~VerifyDiagnosticConsumer` (Looks like our compiler invocation doesn't setup correctly?).
This patch disables the verify mode as it is rarely useful in clangd.
Differential Revision: https://reviews.llvm.org/D91777
|
 | clang-tools-extra/clangd/Compiler.cpp |
 | clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp |
Commit
0e4cdfc56aed9da66149aeb734228b15ceba18f7
by david.green[ARM] Add a WLS tail predication test. NFC
|
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/while-loops.ll |
Commit
9bd50abc4ca150d5dfb89bf40de26549e4ec31e5
by antiagainst[MLIR][SPIRV] Rename `spv._merge` to `spv.mlir.merge`
This commit does the renaming mentioned in the title in order to bring 'spv' dialect closer to the MLIR naming conventions.
Reviewed By: antiagainst
Differential Revision: https://reviews.llvm.org/D91797
|
 | mlir/lib/Dialect/SPIRV/SPIRVOps.cpp |
 | mlir/test/Conversion/GPUToSPIRV/if.mlir |
 | mlir/test/Dialect/SPIRV/Serialization/phi.mlir |
 | mlir/test/Conversion/GPUToSPIRV/loop.mlir |
 | mlir/test/Dialect/SPIRV/canonicalize.mlir |
 | mlir/docs/SPIRVToLLVMDialectConversion.md |
 | mlir/test/Dialect/SPIRV/Serialization/debug.mlir |
 | mlir/test/Dialect/SPIRV/Serialization/function-call.mlir |
 | mlir/test/Conversion/SPIRVToLLVM/control-flow-ops-to-llvm.mlir |
 | mlir/test/Dialect/SPIRV/Serialization/loop.mlir |
 | mlir/lib/Dialect/SPIRV/Serialization/Serializer.cpp |
 | mlir/test/Dialect/SPIRV/Transforms/inlining.mlir |
 | mlir/include/mlir/Dialect/SPIRV/SPIRVControlFlowOps.td |
 | mlir/test/Dialect/SPIRV/Serialization/selection.mlir |
 | mlir/test/Dialect/SPIRV/control-flow-ops.mlir |
 | mlir/docs/Dialects/SPIR-V.md |
 | mlir/test/Conversion/LinalgToSPIRV/linalg-to-spirv.mlir |
Commit
341f3c1120dfa8879e5f714a07fc8b16c8887a7f
by antiagainst[MLIR][SPIRV] ModuleCombiner: deduplicate global vars, spec consts, and funcs.
This commit extends the functionality of the SPIR-V module combiner library by adding new deduplication capabilities. In particular, implementation of deduplication of global variables and specialization constants, and functions is introduced.
For global variables, 2 variables are considered duplicate if they either have the same descriptor set + binding or the same built_in attribute.
For specialization constants, 2 spec constants are considered duplicate if they have the same spec_id attribute.
2 functions are deduplicated if they are identical. 2 functions are identical if they have the same prototype, attributes, and body.
Reviewed By: antiagainst
Differential Revision: https://reviews.llvm.org/D90951
|
 | mlir/test/Dialect/SPIRV/Linking/ModuleCombiner/conflict_resolution.mlir |
 | mlir/include/mlir/Dialect/SPIRV/ModuleCombiner.h |
 | mlir/test/Dialect/SPIRV/Linking/ModuleCombiner/deduplication_basic.mlir |
 | mlir/lib/Dialect/SPIRV/Linking/ModuleCombiner/ModuleCombiner.cpp |
Commit
ab77fa515583ca906f2cb09a5f5e1ea3c48ec725
by diggerlin[AIX][XCOFF][Patch2] decode vector information and extent long table of the traceback table of the xcoff.
SUMMARY:
1. decode the Vector extension if has_vec is set 2. decode long table fields, if longtbtable is set.
There is conflict on the bit order of HasVectorInfoMask and HasExtensionTableMask between AIX os header and IBM aix compiler XLC. In the /usr/include/sys/debug.h defines static constexpr uint32_t HasVectorInfoMask = 0x0040'0000; static constexpr uint32_t HasExtensionTableMask = 0x0080'0000; but the XLC defines as
static constexpr uint32_t HasVectorInfoMask = 0x0080'0000; static constexpr uint32_t HasExtensionTableMask = 0x0040'0000; we follows the definition of the IBM AIX compiler XLC here.
Reviewer: Jason Liu
Differential Revision: https://reviews.llvm.org/D86461
|
 | llvm/include/llvm/Object/XCOFFObjectFile.h |
 | llvm/include/llvm/BinaryFormat/XCOFF.h |
 | llvm/unittests/Object/XCOFFObjectFileTest.cpp |
 | llvm/lib/Object/XCOFFObjectFile.cpp |
Commit
f62fe0ee3bff8a9048d6182697ffca71321759bf
by mtrofin[FileCheck] Disallow unused prefixes in llvm/test/Analysis
This is achieved through a substitution of FileCheck in lit.cfg.py, where we explicitly set -allow-unused-prefixes to false.
We also introduce a %FileCheckWithUnusedPrefixes% substitution that can be used in those cases where we want to allow unused prefixes, even if the folder policy is to disallow them.
Differential Revision: https://reviews.llvm.org/D91275
|
 | llvm/test/Analysis/lit.local.cfg |
Commit
a703998e66f7500442e8f55bfcddf4a5820ca023
by Raphael Isemann[lldb] Remove legacy casts from TestStackFromStdModule
We can handle all the types in the expression evaluator now without casting. On Linux, we have a system header declaration that is still causing issues, so I'm skipping the test there until I get around to fix this.
|
 | lldb/test/API/commands/expression/import-std-module/stack/TestStackFromStdModule.py |
Commit
b7a09de10ffc59dec78a7d4b39bc78d07d3110eb
by Raphael Isemann[lldb][NFC] Add a FIXME for ClangASTSource::FindExternalLexicalDecls's unused 'decls' parameter
|
 | lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp |
Commit
892ed1f15076251dd94d1e4783033d34ed69a3ed
by sivachandra[libc] Add differential fuzzers for ldexp and remquo.
Reviewed By: lntue
Differential Revision: https://reviews.llvm.org/D91763
|
 | libc/fuzzing/math/CMakeLists.txt |
 | libc/fuzzing/math/LdExpDiff.h |
 | libc/fuzzing/math/ldexp_differential_fuzz.cpp |
 | libc/fuzzing/math/remquof_differential_fuzz.cpp |
 | libc/fuzzing/math/ldexpl_differential_fuzz.cpp |
 | libc/fuzzing/math/ldexpf_differential_fuzz.cpp |
 | libc/fuzzing/math/RemQuoDiff.h |
 | libc/fuzzing/CMakeLists.txt |
 | libc/fuzzing/math/remquol_differential_fuzz.cpp |
 | libc/fuzzing/math/remquo_differential_fuzz.cpp |
Commit
908e26d511ce7ff9f3869d3bdd197320d6d81afe
by lebedev.ri[NFC][PhaseOrdering] Add a test showing the need to run IndVars after LoopIdiom
|
 | llvm/test/Transforms/PhaseOrdering/X86/loop-idiom-vs-indvars.ll |
Commit
74170a3aeff116d81c5a5f9476c83429da8fdc82
by tpoppUse rewriter in SCFToSPIRV conversion.
Additionally, clear a data structure to ensure a proper state if multiple conversion attempts are needed.
Differential Revision: https://reviews.llvm.org/D91791
|
 | mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp |
Commit
da8bec47ab8c755c8272ecf79d80c887bca8b781
by huberjn[OpenMP] Add Location Fields to Libomptarget Runtime for Debugging
Summary: Add support for passing source locations to libomptarget runtime functions using the ident_t struct present in the rest of the libomp API. This will allow the runtime system to give much more insightful error messages and debugging values.
Reviewers: jdoerfert grokos
Differential Revision: https://reviews.llvm.org/D87946
|
 | clang/test/OpenMP/target_simd_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_proc_bind_codegen.cpp |
 | clang/test/OpenMP/declare_mapper_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp |
 | openmp/libomptarget/include/omptarget.h |
 | openmp/libomptarget/include/SourceInfo.h |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_private_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp |
 | clang/test/OpenMP/target_update_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_07.cpp |
 | clang/test/OpenMP/target_map_codegen_17.cpp |
 | clang/test/OpenMP/distribute_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_10.cpp |
 | clang/test/OpenMP/target_parallel_depend_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_codegen.cpp |
 | clang/test/OpenMP/target_map_names.cpp |
 | clang/test/OpenMP/target_map_codegen_09.cpp |
 | clang/test/OpenMP/target_map_codegen_27.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_lastprivate_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_29.cpp |
 | clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_dist_schedule_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_proc_bind_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp |
 | llvm/test/Transforms/OpenMP/hide_mem_transfer_latency.ll |
 | clang/test/OpenMP/target_teams_depend_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_dist_schedule_codegen.cpp |
 | clang/test/OpenMP/target_parallel_for_depend_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_28.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp |
 | clang/test/OpenMP/target_depend_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_simd_firstprivate_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_num_threads_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_collapse_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_02.cpp |
 | clang/test/OpenMP/teams_distribute_codegen.cpp |
 | clang/test/OpenMP/target_parallel_for_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_collapse_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_30.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_collapse_codegen.cpp |
 | clang/test/OpenMP/target_exit_data_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_13.cpp |
 | clang/test/OpenMP/target_map_codegen_19.cpp |
 | clang/test/OpenMP/target_map_codegen_16.cpp |
 | clang/test/OpenMP/distribute_parallel_for_lastprivate_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_25.cpp |
 | clang/test/OpenMP/target_update_depend_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_lastprivate_codegen.cpp |
 | llvm/lib/Transforms/IPO/OpenMPOpt.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp |
 | llvm/test/Transforms/OpenMP/add_attributes.ll |
 | clang/test/OpenMP/capturing_in_templates.cpp |
 | clang/test/OpenMP/target_map_codegen_05.cpp |
 | clang/test/OpenMP/target_map_codegen_14.cpp |
 | clang/test/OpenMP/teams_distribute_simd_reduction_codegen.cpp |
 | clang/test/OpenMP/distribute_lastprivate_codegen.cpp |
 | clang/test/OpenMP/target_data_member_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_reduction_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_dist_schedule_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_simd_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_reduction_codegen.cpp |
 | openmp/libomptarget/src/private.h |
 | clang/test/OpenMP/target_simd_depend_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_04.cpp |
 | clang/test/OpenMP/teams_distribute_reduction_codegen.cpp |
 | clang/test/OpenMP/distribute_simd_lastprivate_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_18.inc |
 | clang/test/OpenMP/distribute_simd_private_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_uses_allocators_codegen.cpp |
 | clang/lib/CodeGen/CGOpenMPRuntime.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp |
 | clang/test/OpenMP/teams_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_24.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_codegen.cpp |
 | clang/test/OpenMP/distribute_simd_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_03.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_teams_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_collapse_codegen.cpp |
 | clang/test/OpenMP/distribute_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_12.cpp |
 | clang/test/OpenMP/nvptx_lambda_capturing.cpp |
 | clang/test/OpenMP/teams_distribute_simd_collapse_codegen.cpp |
 | clang/test/OpenMP/target_simd_codegen.cpp |
 | clang/test/OpenMP/declare_target_link_codegen.cpp |
 | llvm/include/llvm/Frontend/OpenMP/OMPKinds.def |
 | clang/test/OpenMP/teams_distribute_parallel_for_copyin_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp |
 | clang/test/OpenMP/distribute_private_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_15.cpp |
 | clang/test/OpenMP/distribute_parallel_for_if_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_codegen.cpp |
 | clang/test/OpenMP/target_teams_num_teams_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_31.cpp |
 | clang/test/OpenMP/target_map_codegen_00.cpp |
 | clang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_simd_private_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_11.cpp |
 | clang/test/OpenMP/teams_distribute_private_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_simd_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_collapse_codegen.cpp |
 | clang/test/OpenMP/target_data_use_device_addr_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_codegen.cpp |
 | clang/test/OpenMP/target_device_codegen.cpp |
 | clang/test/OpenMP/target_map_member_expr_array_section_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_proc_bind_codegen.cpp |
 | clang/test/OpenMP/target_parallel_for_simd_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp |
 | clang/test/OpenMP/target_exit_data_depend_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_codegen.cpp |
 | clang/test/OpenMP/target_parallel_codegen.cpp |
 | openmp/libomptarget/src/interface.cpp |
 | clang/test/OpenMP/distribute_simd_reduction_codegen.cpp |
 | clang/test/OpenMP/target_enter_data_depend_codegen.cpp |
 | clang/test/OpenMP/target_parallel_num_threads_codegen.cpp |
 | clang/test/OpenMP/nvptx_lambda_pointer_capturing.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_data_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_06.cpp |
 | clang/test/OpenMP/target_map_codegen_33.cpp |
 | clang/test/OpenMP/teams_distribute_lastprivate_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_collapse_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_collapse_codegen.cpp |
 | clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp |
 | clang/test/OpenMP/target_firstprivate_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_simd_lastprivate_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_is_device_ptr_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_private_codegen.cpp |
 | clang/test/OpenMP/target_codegen.cpp |
 | clang/test/OpenMP/target_parallel_for_simd_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_01.cpp |
 | clang/test/OpenMP/target_parallel_for_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_teams_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_dist_schedule_codegen.cpp |
 | clang/test/OpenMP/target_parallel_if_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_26.cpp |
 | clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_codegen.cpp |
 | clang/test/OpenMP/target_data_map_pointer_array_subscript_codegen.cpp |
 | clang/test/OpenMP/target_enter_data_codegen.cpp |
 | clang/test/OpenMP/target_defaultmap_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_simd_dist_schedule_codegen.cpp |
 | clang/test/OpenMP/distribute_parallel_for_simd_proc_bind_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_proc_bind_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/nvptx_target_requires_unified_shared_memory.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_32.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_codegen.cpp |
 | clang/test/OpenMP/target_parallel_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_schedule_codegen.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_reduction_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_uses_allocators_codegen.cpp |
 | clang/test/OpenMP/target_teams_thread_limit_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_reduction_codegen.cpp |
 | clang/test/OpenMP/target_teams_distribute_simd_dist_schedule_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_21.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_schedule_codegen.cpp |
 | clang/test/OpenMP/distribute_simd_firstprivate_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_22.cpp |
 | clang/test/OpenMP/target_map_codegen_20.cpp |
 | clang/test/OpenMP/teams_distribute_parallel_for_simd_proc_bind_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_08.cpp |
 | clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp |
 | clang/test/OpenMP/target_map_codegen_23.cpp |
 | llvm/test/Transforms/OpenMP/values_in_offload_arrays.ll |
Commit
8ecb015ed5ad635f5faccd5303e53dd759a56447
by samuel.tebbs[ARM][LowOverheadLoops] Convert intermediate vpr use assertion to condition
This converts the intermediate VPR use assertion to a condition in the if-statement to protect against assertion failures in case behaviuour is changed.
This is a follow-up to https://reviews.llvm.org/D90935 and implements the post-approval comments.
Reviewed By: dmgreen
Differential Revision: https://reviews.llvm.org/D91790
|
 | llvm/test/CodeGen/Thumb2/LowOverheadLoops/vcmp-vpst-combination-across-blocks.mir |
 | llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp |
Commit
8f778b283de5757fa8bf4da255a3a34b3a5cdbd3
by tejohnson[sanitizer_common] Add facility to get the full report path
Add a new interface __sanitizer_get_report_path which will return the full path to the report file if __sanitizer_set_report_path was previously called (otherwise it returns null). This is useful in particular for memory profiling handlers to access the path which was specified at compile time (and passed down via __memprof_profile_filename), including the pid added to the path when the file is opened.
There wasn't a test for __sanitizer_set_report_path, so I added one which additionally tests the new interface.
Differential Revision: https://reviews.llvm.org/D91765
|
 | compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc |
 | compiler-rt/lib/sanitizer_common/sanitizer_file.cpp |
 | compiler-rt/lib/sanitizer_common/sanitizer_file.h |
 | compiler-rt/include/sanitizer/common_interface_defs.h |
 | compiler-rt/lib/sanitizer_common/sanitizer_fuchsia.cpp |
 | compiler-rt/test/sanitizer_common/TestCases/Posix/sanitizer_set_report_path_test.cpp |
 | compiler-rt/lib/sanitizer_common/sanitizer_interface_internal.h |
Commit
7036fe8a0cffcefaa542f6dde756b7aa2f9c91b5
by cchen[libomptarget] Add support for target update non-contiguous
This patch is the runtime support for https://reviews.llvm.org/D84192.
In order not to modify the tgt_target_data_update information but still be able to pass the extra information for non-contiguous map item (offset, count, and stride for each dimension), this patch overload arg when the maptype is set as OMP_TGT_MAPTYPE_DESCRIPTOR. The origin arg is for passing the pointer information, however, the overloaded arg is an array of descriptor_dim:
``` struct descriptor_dim { int64_t offset; int64_t count; int64_t stride }; ```
and the array size is the dimension size. In addition, since we have count and stride information in descriptor_dim, we can replace/overload the arg_size parameter by using dimension size.
Reviewed By: grokos, tianshilei1992
Differential Revision: https://reviews.llvm.org/D82245
|
 | openmp/libomptarget/src/private.h |
 | openmp/libomptarget/include/omptarget.h |
 | openmp/libomptarget/src/omptarget.cpp |
 | openmp/libomptarget/src/interface.cpp |
 | openmp/libomptarget/test/offloading/non_contiguous_update.cpp |
 | openmp/libomptarget/src/device.cpp |
Commit
41c9f4c1cea7314c0a6a32f2e59dab60cd575c1f
by sander.desmalen[LoopVectorize] NFC: Fix unused variable warning for MaxSafeDepDist
rGf571fe6df585127d8b045f8e8f5b4e59da9bbb73 led to a warning of an unused variable for MaxSafeDepDist (written but not used). It seems this variable and assignment can be safely removed.
|
 | llvm/lib/Transforms/Vectorize/LoopVectorize.cpp |
Commit
47b7138b484b8fc94633ac4750a11acad797473e
by Raphael Isemann[lldb] Fix incorrect error handling in GDBRemoteCommunicationClient::SendGetSupportedTraceType
GDBRemoteCommunicationClient::SendGetSupportedTraceType is checking whether the response is `!response.IsNormalResponse()` and infers from that that it is an error response. However, it could be either "unsupported" or "error". If we get an unsupported response, the code then tries to generate an llvm::Expected from the non-error response which then asserts.
Debugserver doesn't implement `jLLDBTraceSupportedType`, so we get an unsupported response whenever this function is called on macOS.
This fixes the TestAproposWithProcess on macOS (where the `apropos` command will query the CommandObjectTraceStart which then sends the trace type query package).
Reviewed By: wallace, shafik
Differential Revision: https://reviews.llvm.org/D91801
|
 | lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp |
Commit
807320119fbb22b372996f89b3223c752f74081a
by adhemerval.zanella[AArch64] Lower fptrunc/fpext from/to FP128t to/from FP16
The compiler-rt part which adds the emitted symbols is handled in a subsequent patch.
Differential Revision: https://reviews.llvm.org/D91731
|
 | llvm/lib/Target/AArch64/AArch64ISelLowering.cpp |
 | llvm/lib/CodeGen/TargetLoweringBase.cpp |
 | llvm/test/CodeGen/AArch64/arm64-fp128.ll |
 | llvm/include/llvm/IR/RuntimeLibcalls.def |
Commit
1fb91fcf9cfe849c7e9996597c491306e34e7abc
by adhemerval.zanella[compiler-rt] [builtins] Support conversion between fp16 and fp128
This patch adds both extendhftf2 and trunctfhf2 to support conversion between half-precision and quad-precision floating-point values. They are enabled iff the compiler supports _Float16.
Some notes on ARM plaforms: while __fp16 is supported on all architectures, _Float16 is supported only for 32-bit ARM, 64-bit ARM, and SPIR (as indicated by clang/docs/LanguageExtensions.rst). Also, __fp16 is a storage format and promoted to 'float' for argument passing and 64-bit ARM supports floating-point convert precision to half as base armv8-a instruction.
It means that although extendhfsf2, truncdfhf2 __truncsfhf2 will be built for 64-bit ARM, they will be never used in practice (compiler won't emit libcall to them). This patch does not change the ABI for 32-bit ARM, it will continue to pass _Float16 as uint16.
Differential Revision: https://reviews.llvm.org/D91732
|
 | compiler-rt/lib/builtins/CMakeLists.txt |
 | compiler-rt/lib/builtins/trunctfhf2.c |
 | compiler-rt/test/builtins/CMakeLists.txt |
 | compiler-rt/test/builtins/Unit/trunctfhf2_test.c |
 | compiler-rt/test/builtins/Unit/extendhftf2_test.c |
 | compiler-rt/test/builtins/Unit/fp_test.h |
 | compiler-rt/cmake/builtin-config-ix.cmake |
 | compiler-rt/lib/builtins/extendhftf2.c |
Commit
7a948298813c913841a36ed0b460db0856fe7082
by adhemerval.zanella[compiler-rt] [builtins] Use _Float16 on extendhfsf2, truncdfhf2 __truncsfhf2 if available
On AArch64 it allows use the native FP16 ABI (although libcalls are not emitted for fptrunc/fpext lowering), while on other architectures the expected current semantic is preserved (arm for instance).
Differential Revision: https://reviews.llvm.org/D91733
|
 | compiler-rt/test/builtins/Unit/truncdfhf2_test.c |
 | compiler-rt/test/builtins/Unit/truncsfhf2_test.c |
 | compiler-rt/lib/builtins/truncsfhf2.c |
 | compiler-rt/lib/builtins/truncdfhf2.c |
 | compiler-rt/lib/builtins/fp_extend.h |
 | compiler-rt/test/builtins/CMakeLists.txt |
 | compiler-rt/lib/builtins/fp_trunc.h |
 | compiler-rt/test/builtins/Unit/extendhfsf2_test.c |
 | compiler-rt/lib/builtins/extendhfsf2.c |
Commit
5b7bd89b3597c0175f99db1bbf9062ccbea85883
by antiagainstRevert "Reorder linalg.conv indexing_maps loop order"
This reverts commit 9b47525824df9be5ae23c39e7ce0d220d12f85e5 and falls back to the original parallel-iterators-as-leading- dimensions convention. We can control the loop order by first converting the named op into linalg.generic and then performing interchange.
Reviewed By: nicolasvasilache, asaadaldien
Differential Revision: https://reviews.llvm.org/D91796
|
 | mlir/test/Dialect/Linalg/tile-conv.mlir |
 | mlir/test/Dialect/Linalg/generalize-named-ops.mlir |
 | mlir/test/Dialect/Linalg/loops.mlir |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td |
 | mlir/test/Dialect/Linalg/affine.mlir |
Commit
1ac9b548310c22ee558f04dd49d08ace0ccfb568
by fraser[RISCV] Lower GREVI and GORCI as custom nodes
This moves the recognition of GREVI and GORCI from TableGen patterns into a DAGCombine. This is done primarily to match "deeper" patterns in the future, like (grevi (grevi x, 1) 2) -> (grevi x, 3).
TableGen is not best suited to matching patterns such as these as the compile time of the DAG matchers quickly gets out of hand due to the expansion of commutative permutations.
Reviewed By: craig.topper
Differential Revision: https://reviews.llvm.org/D91259
|
 | llvm/lib/Target/RISCV/RISCVISelLowering.cpp |
 | llvm/test/CodeGen/RISCV/rv64Zbp.ll |
 | llvm/lib/Target/RISCV/RISCVInstrInfoB.td |
 | llvm/lib/Target/RISCV/RISCVISelLowering.h |
Commit
617e8e5ee3bb3316baae7a69d74b5ff95031d571
by n.james93[clang-tidy] ElseAfterReturn check wont suggest fixes if preprocessor branches are involved
Consider this code: ``` if (Cond) { #ifdef X_SUPPORTED X(); #else return; #endif } else { Y(); } Z();```
In this example, if `X_SUPPORTED` is not defined, currently we'll get a warning from the else-after-return check. However If we apply that fix, and then the code is recompiled with `X_SUPPORTED` defined, we have inadvertently changed the behaviour of the if statement due to the else being removed. Code flow when `Cond` is `true` will be: ``` X(); Y(); Z();``` where as before the fix it was: ``` X(); Z();```
This patch adds checks that guard against `#endif` directives appearing between the control flow interrupter and the else and not applying the fix if they are detected.
Reviewed By: aaron.ballman
Differential Revision: https://reviews.llvm.org/D91485
|
 | clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp |
 | clang-tools-extra/test/clang-tidy/checkers/readability-else-after-return-pp-no-crash.cpp |
 | clang-tools-extra/test/clang-tidy/checkers/readability-else-after-return.cpp |
 | clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.h |
Commit
a75b2e87e6cbfabdfdd0d72c6962acf9d7756dd7
by tejohnson[MemProf] Add interface to dump profile
Add an interface so that the profile can be dumped on demand.
Differential Revision: https://reviews.llvm.org/D91768
|
 | compiler-rt/test/memprof/TestCases/memprof_profile_dump.cpp |
 | compiler-rt/test/memprof/TestCases/log_path_test.cpp |
 | compiler-rt/lib/memprof/memprof_allocator.cpp |
 | compiler-rt/include/sanitizer/memprof_interface.h |
 | compiler-rt/lib/memprof/memprof_interface_internal.h |
Commit
c77aefb0ff36277c97f52e22cec3ffcc5db43064
by Raphael Isemann[lldb] Fix another Python2/3 string<->bytes type error in patch-crashlog.py
|
 | lldb/test/Shell/ScriptInterpreter/Python/Crashlog/patch-crashlog.py |
Commit
2f3adc54b57356cd207ded2ec2d7f4e1273da0ff
by antiagainst[MLIR][SPIRV] Rename `spv._module_end` to `spv.mlir.endmodule`
This commit does the renaming mentioned in the title in order to bring 'spv' dialect closer to the MLIR naming conventions.
Reviewed By: antiagainst
Differential Revision: https://reviews.llvm.org/D91792
|
 | mlir/docs/Dialects/SPIR-V.md |
 | mlir/include/mlir/Dialect/SPIRV/SPIRVStructureOps.td |
 | mlir/test/Conversion/SPIRVToLLVM/module-ops-to-llvm.mlir |
 | mlir/test/Dialect/SPIRV/structure-ops.mlir |
 | mlir/docs/SPIRVToLLVMDialectConversion.md |
Commit
a97f62837f59620a60b3ed9f29568440c7d0553a
by leonardchan[llvm][IR] Add dso_local_equivalent Constant
The `dso_local_equivalent` constant is a wrapper for functions that represents a value which is functionally equivalent to the global passed to this. That is, if this accepts a function, calling this constant should have the same effects as calling the function directly. This could be a direct reference to the function, the `@plt` modifier on X86/AArch64, a thunk, or anything that's equivalent to the resolved function as a call target.
When lowered, the returned address must have a constant offset at link time from some other symbol defined within the same binary. The address of this value is also insignificant. The name is leveraged from `dso_local` where use of a function or variable is resolved to a symbol in the same linkage unit.
In this patch: - Addition of `dso_local_equivalent` and handling it - Update Constant::needsRelocation() to strip constant inbound GEPs and take advantage of `dso_local_equivalent` for relative references
This is useful for the [Relative VTables C++ ABI](https://reviews.llvm.org/D72959) which makes vtables readonly. This works by replacing the dynamic relocations for function pointers in them with static relocations that represent the offset between the vtable and virtual functions. If a function is externally defined, `dso_local_equivalent` can be used as a generic wrapper for the function to still allow for this static offset calculation to be done.
See [RFC](http://lists.llvm.org/pipermail/llvm-dev/2020-August/144469.html) for more details.
Differential Revision: https://reviews.llvm.org/D77248
|
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp |
 | llvm/lib/AsmParser/LLToken.h |
 | llvm/lib/IR/AsmWriter.cpp |
 | llvm/include/llvm/Target/TargetLoweringObjectFile.h |
 | llvm/test/CodeGen/X86/dso_local_equivalent.ll |
 | llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp |
 | llvm/lib/Analysis/ConstantFolding.cpp |
 | llvm/lib/AsmParser/LLLexer.cpp |
 | llvm/lib/IR/Core.cpp |
 | llvm/docs/LangRef.rst |
 | llvm/include/llvm/IR/Value.def |
 | llvm/include/llvm/IR/Constants.h |
 | llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h |
 | llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp |
 | llvm/test/CodeGen/X86/relptr-rodata.ll |
 | llvm/lib/IR/Constants.cpp |
 | llvm/lib/IR/LLVMContextImpl.h |
 | llvm/include/llvm/Analysis/ConstantFolding.h |
 | llvm/lib/AsmParser/LLParser.cpp |
Commit
332710e70428d7a587d32de9fda833748d408944
by stilis[mlir] Add a missing dependency to LinalgToLLVM
Generate passes.h before trying to use it
Reviewed By: mehdi_amini
Differential Revision: https://reviews.llvm.org/D91750
|
 | mlir/lib/Conversion/LinalgToLLVM/CMakeLists.txt |
Commit
9a465057a64dba8a8614424d26136f5c0452bcc3
by tra[CUDA] Unbreak CUDA compilation with -std=c++20
Standard libc++ headers in stdc++ mode include <new> which picks up cuda_wrappers/new before any of the CUDA macros have been defined.
We can not include CUDA headers that early, so the work-around is to define __device__ in the wrapper header itself.
Differential Revision: https://reviews.llvm.org/D91807
|
 | clang/lib/Headers/cuda_wrappers/new |
Commit
5911e6a8857f146fb5a8f23af1d768aba25e7c3e
by Louis Dionne[libc++] Mark a few tests as unsupported on older Clangs to fix bots
|
 | libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.members/construct.pass.cpp |
 | libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.members/allocate_hint.pass.cpp |
 | libcxx/test/std/utilities/memory/default.allocator/allocator.members/allocate.pass.cpp |
 | libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.members/destroy.pass.cpp |
Commit
b14ea01f3bfa819b039924f7d5beeed85051d94e
by fraser[RISCV] Add test cases for missed grevi/greviw opportunities. NFC
|
 | llvm/test/CodeGen/RISCV/rv32Zbp.ll |
 | llvm/test/CodeGen/RISCV/rv64Zbp.ll |
Commit
9cfad5f9c5bfd985f1bc8b0954f58013c5236e58
by Andrey.Churbanov[OpenMP] Add support for Intel's umonitor/umwait
Patch by tlwilmar (Terry Wilmarth)
Differential Revision: https://reviews.llvm.org/D91189
|
 | openmp/runtime/src/kmp_wait_release.h |
 | openmp/runtime/src/z_Linux_util.cpp |
 | openmp/runtime/src/kmp_tasking.cpp |
 | openmp/runtime/src/kmp_taskdeps.cpp |
 | openmp/runtime/src/kmp_wait_release.cpp |
 | openmp/runtime/src/kmp_settings.cpp |
 | openmp/runtime/src/kmp_global.cpp |
 | openmp/runtime/src/kmp_barrier.cpp |
 | openmp/runtime/src/kmp_runtime.cpp |
 | openmp/runtime/src/i18n/en_US.txt |
 | openmp/runtime/src/kmp_os.h |
 | openmp/runtime/src/kmp.h |
 | openmp/runtime/src/kmp_stats.h |
 | openmp/runtime/src/z_Windows_NT_util.cpp |
Commit
d7747dacba8e4a7784ea8ef20abbff87d5681b81
by sam.mccall[clangd] Also detect corrupt stri table size.
Differential Revision: https://reviews.llvm.org/D91299
|
 | clang-tools-extra/clangd/unittests/SerializationTests.cpp |
 | clang-tools-extra/clangd/index/Serialization.cpp |
Commit
65fcddff24d68e2b75a5fa820b6664b6ea78b1de
by riddleriver[mlir][BuiltinDialect] Resolve comments from D91571
* Move ops to a BuiltinOps.h * Add file comments
|
 | mlir/include/mlir/Reducer/Tester.h |
 | mlir/test/lib/IR/TestMatchers.cpp |
 | mlir/examples/toy/Ch6/toyc.cpp |
 | mlir/lib/Conversion/AVX512ToLLVM/ConvertAVX512ToLLVM.cpp |
 | mlir/examples/toy/Ch3/mlir/MLIRGen.cpp |
 | mlir/include/mlir/IR/Function.h |
 | mlir/lib/Dialect/SPIRV/Transforms/RewriteInsertsPass.cpp |
 | mlir/test/lib/IR/TestSlicing.cpp |
 | mlir/tools/mlir-cuda-runner/mlir-cuda-runner.cpp |
 | flang/include/flang/Lower/FIRBuilder.h |
 | mlir/lib/Analysis/SliceAnalysis.cpp |
 | mlir/include/mlir/IR/BuiltinDialect.h |
 | mlir/examples/toy/Ch2/include/toy/Dialect.h |
 | mlir/test/lib/IR/TestPrintNesting.cpp |
 | mlir/lib/Conversion/GPUToVulkan/ConvertLaunchFuncToVulkanCalls.cpp |
 | mlir/lib/Dialect/SPIRV/Serialization/TranslateRegistration.cpp |
 | mlir/include/mlir/IR/BuiltinOps.td |
 | mlir/test/lib/IR/TestFunc.cpp |
 | mlir/lib/Conversion/GPUToSPIRV/ConvertGPUToSPIRV.cpp |
 | mlir/test/lib/Dialect/Test/TestDialect.h |
 | flang/tools/tco/tco.cpp |
 | mlir/test/lib/Dialect/SPIRV/TestAvailability.cpp |
 | mlir/lib/Transforms/Utils/DialectConversion.cpp |
 | mlir/lib/Transforms/Utils/Utils.cpp |
 | mlir/test/lib/Pass/TestPassManager.cpp |
 | mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp |
 | mlir/test/lib/Transforms/TestInlining.cpp |
 | mlir/lib/IR/Builders.cpp |
 | mlir/lib/Dialect/StandardOps/IR/Ops.cpp |
 | mlir/test/lib/Transforms/TestConstantFold.cpp |
 | mlir/test/lib/IR/TestPrintDefUse.cpp |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h |
 | mlir/examples/toy/Ch5/include/toy/Dialect.h |
 | mlir/include/mlir/Analysis/NestedMatcher.h |
 | flang/include/flang/Lower/Bridge.h |
 | mlir/examples/toy/Ch3/toyc.cpp |
 | mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp |
 | mlir/lib/Dialect/SPIRV/SPIRVOps.cpp |
 | mlir/include/mlir/IR/BuiltinOps.h |
 | mlir/lib/Analysis/AffineAnalysis.cpp |
 | mlir/lib/Support/MlirOptMain.cpp |
 | mlir/examples/toy/Ch4/mlir/MLIRGen.cpp |
 | mlir/lib/IR/BuiltinDialect.cpp |
 | mlir/include/mlir/CAPI/IR.h |
 | mlir/include/mlir/IR/Module.h |
 | mlir/lib/Dialect/GPU/IR/GPUDialect.cpp |
 | mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp |
 | mlir/test/lib/Dialect/SPIRV/TestModuleCombiner.cpp |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgTraits.h |
 | mlir/lib/Dialect/Vector/VectorOps.cpp |
 | mlir/include/mlir/Transforms/Bufferize.h |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/lib/Dialect/LLVMIR/Transforms/LegalizeForExport.cpp |
 | mlir/lib/IR/MLIRContext.cpp |
 | mlir/examples/toy/Ch2/toyc.cpp |
 | mlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp |
 | mlir/lib/CAPI/IR/IR.cpp |
 | mlir/include/mlir/Dialect/SPIRV/SPIRVOps.h |
 | mlir/lib/Pass/IRPrinting.cpp |
 | mlir/lib/Target/LLVMIR/ConvertToROCDLIR.cpp |
 | mlir/lib/Transforms/Utils/InliningUtils.cpp |
 | mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h |
 | mlir/unittests/Pass/AnalysisManagerTest.cpp |
 | mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Bufferize.cpp |
 | mlir/lib/Transforms/StripDebugInfo.cpp |
 | mlir/lib/Parser/Parser.cpp |
 | mlir/examples/toy/Ch5/toyc.cpp |
 | mlir/lib/Conversion/SPIRVToLLVM/ConvertSPIRVToLLVM.cpp |
 | mlir/lib/Dialect/Affine/IR/AffineOps.cpp |
 | mlir/lib/Dialect/Affine/Utils/Utils.cpp |
 | mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h |
 | mlir/examples/toy/Ch5/mlir/MLIRGen.cpp |
 | mlir/unittests/Pass/PassManagerTest.cpp |
 | mlir/lib/Conversion/GPUToVulkan/ConvertGPULaunchFuncToVulkanLaunchFunc.cpp |
 | mlir/lib/IR/Attributes.cpp |
 | mlir/lib/Translation/Translation.cpp |
 | mlir/lib/Conversion/GPUCommon/ConvertKernelFuncToBlob.cpp |
 | mlir/examples/toy/Ch3/include/toy/Dialect.h |
 | mlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp |
 | mlir/test/lib/Dialect/Test/TestDialect.cpp |
 | mlir/examples/toy/Ch7/toyc.cpp |
 | mlir/lib/Conversion/GPUCommon/ConvertLaunchFuncToRuntimeCalls.cpp |
 | mlir/examples/toy/Ch6/mlir/MLIRGen.cpp |
 | mlir/lib/Transforms/Utils/LoopFusionUtils.cpp |
 | mlir/lib/Transforms/Utils/LoopUtils.cpp |
 | mlir/lib/Transforms/LoopInvariantCodeMotion.cpp |
 | mlir/examples/toy/Ch7/include/toy/Dialect.h |
 | mlir/examples/toy/Ch4/toyc.cpp |
 | mlir/lib/Transforms/OpStats.cpp |
 | mlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp |
 | mlir/lib/Target/LLVMIR/ConvertToNVVMIR.cpp |
 | mlir/lib/Conversion/SPIRVToLLVM/ConvertLaunchFuncToLLVMCalls.cpp |
 | mlir/include/mlir/Pass/Pass.h |
 | mlir/lib/Dialect/Vector/VectorTransforms.cpp |
 | mlir/lib/Dialect/SCF/Transforms/Utils.cpp |
 | mlir/include/mlir/Pass/AnalysisManager.h |
 | mlir/lib/ExecutionEngine/ExecutionEngine.cpp |
 | mlir/lib/Conversion/SCFToStandard/SCFToStandard.cpp |
 | mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp |
 | mlir/lib/IR/AsmPrinter.cpp |
 | mlir/lib/Target/LLVMIR/ModuleTranslation.cpp |
 | mlir/lib/Pass/Pass.cpp |
 | flang/include/flang/Lower/AbstractConverter.h |
 | mlir/include/mlir/Dialect/Vector/VectorTransforms.h |
 | mlir/examples/toy/Ch4/include/toy/Dialect.h |
 | flang/lib/Optimizer/Dialect/FIROps.cpp |
 | mlir/examples/toy/Ch7/mlir/MLIRGen.cpp |
 | mlir/examples/toy/Ch6/include/toy/Dialect.h |
 | mlir/tools/mlir-rocm-runner/mlir-rocm-runner.cpp |
 | mlir/examples/toy/Ch2/mlir/MLIRGen.cpp |
 | mlir/test/EDSC/builder-api-test.cpp |
 | mlir/test/lib/IR/TestSymbolUses.cpp |
Commit
ad5a195ae510fbfaf7885549e4899c85f0593fa5
by sam.mccall[clangd] Express ASAN interactions of tests more clearly. NFC
|
 | clang-tools-extra/clangd/unittests/SerializationTests.cpp |
Commit
314a0d73a8444e3b0c1a0d0de7d615d9448af1c9
by jgorbeFix crash after looking up dwo_id=0 in CU index.
In the current state, if getFromHash(0) is called and there's no CU with dwo_id=0, the lookup will stop at an empty slot, then the check `Rows[H].getSignature() != S` won't cause the lookup to fail and return a nullptr (as it should), because the empty slot has a 0 in the signature field, and a pointer to the empty slot will be incorrectly returned.
This patch fixes this by using the index field in the hash entry to check for empty slots: signature = 0 can match a valid hash but according to the spec the index for an occupied slot will always be non-zero.
Differential Revision: https://reviews.llvm.org/D91670
|
 | llvm/lib/DebugInfo/DWARF/DWARFUnitIndex.cpp |
 | llvm/test/tools/llvm-symbolizer/split-dwarf-zero-signature-not-found.s |
Commit
72badbcdccd11c12555147d48dee4a776f5da87d
by aeubanks[NPM] Move more O0 pass building into PassBuilder
This moves handling of alwaysinline, coroutines, matrix lowering, PGO, and LTO-required passes into PassBuilder. Much of this is replicated between Clang and opt. Other out-of-tree users also replicate some of this, such as Rust [1] replicating the alwaysinline, LTO, and PGO passes.
The LTO passes are also now run in build(Thin)LTOPreLinkDefaultPipeline() since they are semantically required for (Thin)LTO.
[1]: https://github.com/rust-lang/rust/blob/f5230fbf76bafd86ee4376a0e26e551df8d17fec/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp#L896
Reviewed By: tejohnson
Differential Revision: https://reviews.llvm.org/D91585
|
 | llvm/lib/Passes/PassBuilder.cpp |
 | llvm/test/Other/new-pm-O0-defaults.ll |
 | llvm/test/Other/new-pm-defaults.ll |
 | llvm/test/Other/new-pm-pgo-O0.ll |
 | llvm/test/Other/new-pass-manager.ll |
 | llvm/include/llvm/Passes/PassBuilder.h |
 | llvm/test/Transforms/CanonicalizeAliases/canonicalize.ll |
 | clang/lib/CodeGen/BackendUtil.cpp |
 | llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll |
 | llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll |
 | llvm/test/Transforms/NameAnonGlobals/rename.ll |
 | llvm/test/Other/new-pm-thinlto-defaults.ll |
Commit
a8d9d0bd8a7ba07043f2af280fb5cc02b20a9ab5
by thakis[gn build] (manually) merge 1fb91fcf9cfe849
|
 | llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn |
Commit
eb995e93321622fff99d4fac7ec32d5efd14b337
by nikita.ppv[Polly] Use LocationSize::unknown() (NFC)
Avoid MemoryLocation::UnknownSize when we're initializing a LocationSize.
|
 | polly/lib/Analysis/ScopDetection.cpp |
Commit
389ef79a07850373e2a1f5653d33ce5924bcfe19
by Louis Dionne[libc++] Add documentation for setting up new CI jobs
|
 | libcxx/docs/AddingNewCIJobs.rst |
 | libcxx/docs/index.rst |
Commit
22ec72f803d67d173ca3733836763d7b981bb84f
by nikita.ppv[Lint] Use MemoryLocation
Instead of separately passing pointer and size, make use of MemoryLocation. This allows us to also reuse all the existing logic for determining the MemoryLocation correponding to an instruction or call argument.
Not quite NFC because used locations may be more precise in some cases.
|
 | llvm/lib/Analysis/Lint.cpp |
Commit
beb889c1ffe68aee8d42c0ddbcd85d021963fb62
by unknownMake array pointers in the CAPI const
These pointers do not need to be mutable. This has an affect that generated function signatures in the Swift bindings now use `UnsafePointer` instead of `UnsafeMutablePointer`.
Reviewed By: ftynse, mehdi_amini
Differential Revision: https://reviews.llvm.org/D91740
|
 | mlir/lib/CAPI/IR/IR.cpp |
 | mlir/include/mlir-c/StandardTypes.h |
 | mlir/include/mlir-c/StandardAttributes.h |
 | mlir/include/mlir-c/IR.h |
 | mlir/lib/CAPI/IR/StandardTypes.cpp |
 | mlir/lib/CAPI/IR/StandardAttributes.cpp |
Commit
887c7660bdf3f300bd1997dcfd7ace91787c0584
by apilipenko[BasicAA] Deoptimize intrinsics don't modify memory
Similarly to assumes and guards deoptimize intrinsics are marked as writing to ensure proper control dependencies but they never modify any particular memory location.
Differential Revision: https://reviews.llvm.org/D91658
|
 | llvm/test/Analysis/BasicAA/deoptimize.ll |
 | llvm/lib/Analysis/BasicAliasAnalysis.cpp |
Commit
b4ac05d76378aed7122d195b987c4b7c583c2cc6
by jianzhouzhReplace the equivalent code by UnionTableAddr
UnionTableAddr is always inlined.
Reviewed-by: morehouse
Differential Revision: https://reviews.llvm.org/DD91758
|
 | compiler-rt/lib/dfsan/dfsan.cpp |
Commit
b0750e2df6e4d5251c67f74265edbc753c76afc2
by tpoppFix rollback of first block erasure in a region.
Differential Revision: https://reviews.llvm.org/D91788
|
 | mlir/lib/Transforms/Utils/DialectConversion.cpp |
 | mlir/test/lib/Dialect/Test/TestPatterns.cpp |
 | mlir/test/Transforms/test-legalizer-full.mlir |
Commit
393b9e9db31a3f83bc8b813ee24b56bc8ed93a49
by nikita.ppv[MemLoc] Require LocationSize argument (NFC)
When constructing a MemoryLocation by hand, require that a LocationSize is explicitly specified. D91649 will split up LocationSize::unknown() into two different states, and callers should make an explicit choice regarding the kind of MemoryLocation they want to have.
|
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp |
 | llvm/include/llvm/Analysis/MemoryLocation.h |
 | llvm/lib/Target/AMDGPU/AMDGPURewriteOutArguments.cpp |
 | llvm/include/llvm/Analysis/AliasAnalysis.h |
 | llvm/lib/Analysis/AliasAnalysis.cpp |
 | llvm/lib/Analysis/ObjCARCAliasAnalysis.cpp |
 | llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp |
 | llvm/lib/Analysis/GlobalsModRef.cpp |
 | llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp |
 | llvm/lib/Analysis/BasicAliasAnalysis.cpp |
 | llvm/lib/Analysis/MemoryDependenceAnalysis.cpp |
 | llvm/lib/Analysis/MemorySSA.cpp |
Commit
d8eb99810dc32e5803d363ddc9dc30b79a5fefa7
by nikita.ppv[MemLoc] Specify LocationSize in unit test
Followup to 393b9e9db31a3f83bc8b813ee24b56bc8ed93a49, where I missed updating one MemoryLocation use inside a unit test.
|
 | llvm/unittests/Analysis/MemorySSATest.cpp |
Commit
7de7c40898a8f815d661781c92757f93fa4c6e5b
by nikita.ppv[MemLoc] Use hasValue() method (NFC)
Instead of comparing to LocationSize::unknown(), prefer calling the hasValue() method instead, which is less reliant on implementation details.
|
 | llvm/lib/Analysis/CFLAndersAliasAnalysis.cpp |
 | llvm/lib/Analysis/BasicAliasAnalysis.cpp |
Commit
7f2ebde7357a93103f9d64f7c109f8cab27de98d
by silvasean[mlir] Split BufferUtils.h out of Bufferize.h
These utilities are more closely associated with the buffer optimizations and buffer deallocation than with the dialect conversion stuff in Bufferize.h. So move them out.
This makes Bufferize.h very easy to understand and completely focused on dialect conversion.
Differential Revision: https://reviews.llvm.org/D91563
|
 | mlir/lib/Transforms/BufferDeallocation.cpp |
 | mlir/lib/Transforms/BufferUtils.cpp |
 | mlir/include/mlir/Transforms/Bufferize.h |
 | mlir/lib/Transforms/BufferOptimizations.cpp |
 | mlir/include/mlir/Transforms/BufferUtils.h |
 | mlir/lib/Transforms/CMakeLists.txt |
Commit
6c1c308c0e170e86da4a06bb4e95cb9038494b90
by jianzhouzhRemove deadcode from DFSanFunction::get*TLS*()
clean more deadcode after D84704
Reviewed-by: morehouse
Differential Revision: https://reviews.llvm.org/D91762
|
 | llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp |
Commit
9bb5bff570140d4fc5b1750ca7352b840dd58ed7
by zinenko[mlir] Add an assertion on creating an Operation with null result types
Null types are commonly used as an error marker. Catch them in the constructor of Operation if they are present in the result type list, as otherwise this could lead to further surprising behavior when querying op result types.
Fix AsyncToLLVM and StandardToLLVM that were using null types when constructing operations.
Reviewed By: rriddle
Differential Revision: https://reviews.llvm.org/D91770
|
 | mlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp |
 | mlir/test/Conversion/StandardToLLVM/standard-to-llvm.mlir |
 | mlir/lib/IR/Operation.cpp |
 | mlir/lib/IR/TypeRange.cpp |
 | mlir/lib/Conversion/StandardToLLVM/StandardToLLVM.cpp |
Commit
e8dc6e9a3242a5c07eb614d0d0de9a1dab6385b1
by nikita.ppv[MemLoc] Use hasValue() method more (NFC)
Followup to 7de7c40898a8f815d661781c92757f93fa4c6e5b. I previously removed a number of == comparisons to LocationSize::unknown(), but missed these != comparisons.
|
 | llvm/lib/Analysis/BasicAliasAnalysis.cpp |
Commit
bcd469a9912b63ae912af4e693ad5c9d317fbdbb
by lebedev.ri[NFC][InstCombine] Add test coverage for `and (sext %x), SIGNMASK`-like pattern
|
 | llvm/test/Transforms/InstCombine/signmask-of-sext-vs-of-shl-of-zext.ll |
Commit
a91e96702a3b8ef19afc5b7d2e51ce6b6a7fded9
by lebedev.ri[InstCombine] Fold `and(shl(zext(x), width(SIGNMASK) - width(%x)), SIGNMASK)` to `and(sext(%x), SIGNMASK)`
One less instruction and reducing use count of zext. As alive2 confirms, we're fine with all the weird combinations of undef elts in constants, but unless the shift amount was undef for a lane, we must sanitize undef mask to zero, since sign bits are no longer zeros.
https://rise4fun.com/Alive/d7r ``` ---------------------------------------- Optimization: zz Precondition: ((C1 == (width(%r) - width(%x))) && isSignBit(C2)) %o0 = zext %x %o1 = shl %o0, C1 %r = and %o1, C2 => %n0 = sext %x %r = and %n0, C2
Done: 2016 Optimization is correct! ```
|
 | llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp |
 | llvm/test/Transforms/InstCombine/signmask-of-sext-vs-of-shl-of-zext.ll |
Commit
b156514f8d9951176e768e6078162dbaacccccdf
by gcmnRemove unused private fields
Unused since https://reviews.llvm.org/D91762 and triggering -Wunused-private-field
``` llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp:365:13: error: private field 'GetArgTLS' is not used [-Werror,-Wunused-private-field] Constant *GetArgTLS; ^ llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp:366:13: error: private field 'GetRetvalTLS' is not used [-Werror,-Wunused-private-field] Constant *GetRetvalTLS; ```
Reviewed By: stephan.yichao.zhao
Differential Revision: https://reviews.llvm.org/D91820
|
 | llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp |
Commit
3ded927cf80ac519f9f9c4664fef08787f7c537d
by tpopp[mlir] Add missing const * updates in StandardAttributes
This add missing updates to the header file that caused linking issues. Original change at https://reviews.llvm.org/D91740
Differential Revision: https://reviews.llvm.org/D91822
|
 | mlir/include/mlir-c/StandardAttributes.h |
Commit
7cce6212a4a21d3bc9639b867defb0ff5a7641a6
by aeubanks[test] Fix pr39282.ll under NPM
Already has a NPM RUN line
|
 | llvm/test/Transforms/PhaseOrdering/pr39282.ll |
Commit
dfe67f450ef60ce7bd3528b3e2d4326e6ac598ea
by aeubanks[test] Fix globalaa-retained.ll under NPM
Just '-O2' didn't run the full AA pipeline under NPM.
|
 | llvm/test/Transforms/PhaseOrdering/globalaa-retained.ll |
Commit
7fa14a7c690e8789d964c0d8246e2b3763c4d080
by flo[ConstraintElimination] Decompose GEP with arbitrary offsets.
This patch decomposes `GEP %x, %offset` as 0 + 1 * %x + 1 * %off.
|
 | llvm/lib/Transforms/Scalar/ConstraintElimination.cpp |
 | llvm/test/Transforms/ConstraintElimination/geps.ll |
Commit
1a7d7f423e756922042753f8a2fdc0418b87381a
by aeubanks[test] Fix split-vfunc.ll under NPM
We need an AA pipeline under NPM. This is a no-op if we are still using the legacy PM.
|
 | llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc.ll |
Commit
8adc4d1ec76471bc283d888f3077f7d8f591d6ad
by sam.mccall[clangd] Add textDocument/ast extension method to dump the AST
This is a mass-market version of the "dump AST" tweak we have behind -hidden-features. I think in this friendlier form it'll be useful for people outside clang developers, which would justify making it a real feature. It could be useful as a step towards lightweight clang-AST tooling in clangd itself (like matcher-based search).
Advantages over the tweak: - simplified information makes it more accessible, likely somewhat useful without learning too much clang internals - can be shown in a tree view - structured information gives some options for presentation (e.g. icon + two text colors + tooltip in vscode) - clickable nodes jump to the corresponding code Disadvantages: - a bunch of code to handle different node types - likely missing some important info vs dump-ast due to brevity/oversight - may end up chasing/maintaining support for the long tail of nodes
Demo with VSCode support: https://imgur.com/a/6gKfyIV
Differential Revision: https://reviews.llvm.org/D89571
|
 | clang-tools-extra/clangd/ClangdLSPServer.h |
 | clang-tools-extra/clangd/DumpAST.h |
 | clang-tools-extra/clangd/test/ast.test |
 | clang-tools-extra/clangd/CMakeLists.txt |
 | clang-tools-extra/clangd/unittests/CMakeLists.txt |
 | clang-tools-extra/clangd/Protocol.h |
 | clang-tools-extra/clangd/DumpAST.cpp |
 | clang-tools-extra/clangd/ClangdServer.cpp |
 | clang-tools-extra/clangd/test/initialize-params.test |
 | clang-tools-extra/clangd/unittests/DumpASTTests.cpp |
 | clang-tools-extra/clangd/ClangdLSPServer.cpp |
 | clang-tools-extra/clangd/ClangdServer.h |
 | clang-tools-extra/clangd/Protocol.cpp |
Commit
d730e611e67fc14a725450dc95deac737a188d48
by llvmgnsyncbot[gn build] Port 8adc4d1ec76
|
 | llvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn |
 | llvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn |
Commit
0fd04337a17138174adf9e6d408cf9c885dea086
by shafik[LLDB] Fixing lldb/test/Shell/Register/x86-fp-write.test
D91497 changed lldb/test/Shell/Register/x86-fp-write.test and added target-x86_64 to the REQUIRES clause. It looks this test does not pass on this platform so removing it since it one of tests failing on the green dragon build bot.
|
 | lldb/test/Shell/Register/x86-fp-write.test |
Commit
f7f0fe6184807a7085fee9e57ae47bc3e2617cdc
by sbc[lld][WebAssembly] Convert more tests to asm format. NFC.
Differential Revision: https://reviews.llvm.org/D91681
|
 | lld/test/wasm/weak-symbols.ll |
 | lld/test/wasm/undefined-weak-call.ll |
 | lld/test/wasm/undefined-weak-call.s |
 | lld/test/wasm/weak-undefined.ll |
 | lld/test/wasm/undefined-data.s |
 | lld/test/wasm/weak-undefined.s |
 | llvm/test/CodeGen/WebAssembly/weak.ll |
 | lld/test/wasm/undefined-data.ll |
 | lld/test/wasm/weak-symbols.s |
Commit
40e877264dc5bd9a025bc1fc0f01fb69a3f3cdc2
by Duncan P. N. Exon SmithADT: Weaken SmallVector::resize assertion from 5abf76fbe37380874a88cc9aa02164800e4e10f3
There's no need to check for reference invalidation when `SmallVector::resize` is shrinking; the parameter isn't accessed.
Differential Revision: https://reviews.llvm.org/D91832
|
 | llvm/include/llvm/ADT/SmallVector.h |
 | llvm/unittests/ADT/SmallVectorTest.cpp |
Commit
91fe3e309c7c4b2c7c906353e4b658ee704fe0bf
by Duncan P. N. Exon SmithADT: Use early returns in SmallVector::resize, NFC
Just a simple cleanup, no functionality change here.
|
 | llvm/include/llvm/ADT/SmallVector.h |
Commit
513d165b80eec6187ba88dcbe8bfe38baaa2fb01
by aeubanksPort -lower-matrix-intrinsics-minimal to NPM
This reuses the existing lower-matrix-intrinsics pass rather than going the legacy pass route of creating a new pass.
Use this new variant in the NPM -O0 pipeline.
Reviewed By: asbirlea
Differential Revision: https://reviews.llvm.org/D91811
|
 | llvm/test/Transforms/LowerMatrixIntrinsics/multiply-minimal.ll |
 | llvm/lib/Passes/PassBuilder.cpp |
 | llvm/lib/Passes/PassRegistry.def |
 | llvm/include/llvm/Transforms/Scalar/LowerMatrixIntrinsics.h |
 | llvm/test/Other/new-pm-O0-defaults.ll |
 | llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp |
Commit
1fe24a640c2837fbbfb03add122cb3b045914416
by Duncan P. N. Exon SmithADT: Split out isSafeToReferenceAfterResize helper to use early returns, NFC
The assertion logic in SmallVector::assertSafeToReferenceAfterResize is hard to follow; split out SmallVector::isSafeToReferenceAfterResize and add early returns and comments. No functionality change here.
|
 | llvm/include/llvm/ADT/SmallVector.h |
Commit
8d5673ffd88fae399419da09806614fcae00fedb
by aeubanks[test] Fix multiply-minimal.ll
|
 | llvm/test/Transforms/LowerMatrixIntrinsics/multiply-minimal.ll |
Commit
b2f663073917babb84f5ba9129451e8d564cba1a
by isanbard[PowerPC] Allow a '%' prefix for registers in CFI directives
Clang generates a '%' prefix for some registers in CFI directives. E.g. ".cfi_register lr, r12" becomes ".cfi_register lr, %r12" after processing.
Differential Revision: https://reviews.llvm.org/D91735
|
 | llvm/test/MC/PowerPC/cfi-register-directive-parse.s |
 | llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp |
Commit
8b525c9c19f8c4cf3d7df0ec93e4935fae087e7a
by ravishankarm[mlir][Linalg] Add utility function that return static loop bounds of Linalg ops
Differential Revision: https://reviews.llvm.org/D91749
|
 | mlir/include/mlir/Dialect/Linalg/Utils/Utils.h |
 | mlir/lib/Dialect/Linalg/Utils/Utils.cpp |
Commit
f8284d21a8e294d58a0acd4b8b2e906d7a9f110c
by ravishankarm[mlir][Linalg] Fuse sequence of Linalg operation (on buffers)
Enhance the tile+fuse logic to allow fusing a sequence of operations.
Differential Revision: https://reviews.llvm.org/D90991
|
 | mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp |
 | mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h |
 | mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp |
 | mlir/test/Dialect/Linalg/fusion-pattern.mlir |
 | mlir/test/Dialect/Linalg/fusion-sequence.mlir |
 | mlir/tools/mlir-opt/mlir-opt.cpp |
 | mlir/test/lib/Transforms/TestLinalgFusionTransforms.cpp |
Commit
0c59f51592ef5c014352994369f5216c6376fae1
by ravishankarm[mlir][Linalg] NFC: Expose some utility functions used for promotion.
Exposing some utility functions from Linalg to allow for promotion of fused views outside of the core tile+fuse logic. This is an alternative to patch D91322 which adds the promotion logic to the tileAndFuse method. Downside with that approach is that it is not easily customizable based on needs.
Differential Revision: https://reviews.llvm.org/D91503
|
 | mlir/include/mlir/Dialect/Linalg/Utils/Utils.h |
 | mlir/lib/Dialect/Linalg/Transforms/Promotion.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp |
 | mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h |
Commit
0f9f0a4046e11c2b4c130640f343e3b2b5db08c1
by gcmnRemove unused isZero function
Unused since https://reviews.llvm.org/D91503 and triggering -Wunused-function
Reviewed By: rriddle
Differential Revision: https://reviews.llvm.org/D91838
|
 | mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp |
Commit
fbfbfa5c713f4b98f174f9ff3416eaf42d133bc0
by joker.eph[mlir] Support big-endian systems in DenseElementsAttr (multiple word)
D78076 supports big endian in DenseElementsAttr, but does not work when APInt has multiple words(the number of bits > 64). This patch updates D78076 to support it. This patch removed the fix in D78076 and re-implemented to support multiple words.
Reviewed By: rriddle
Differential Revision: https://reviews.llvm.org/D80272
|
 | mlir/lib/IR/Attributes.cpp |
Commit
2583d8eb08073d3c1e06b21b1c4216d0ab7a0909
by kazu[CodeGen] Use llvm::is_contained (NFC)
|
 | llvm/lib/CodeGen/MachineBasicBlock.cpp |
 | llvm/lib/CodeGen/MIRCanonicalizerPass.cpp |
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp |
|