Commit
b98c3e957f564d1101c1fe1522686c7d0a9a9ddb
by esme.yi[yaml2obj][XCOFF] add the SectionIndex field for symbol.
Summary: Add the SectionIndex field for symbol. 1: a symbol can reference a section by SectionName or SectionIndex. 2: a symbol can reference a section by both SectionName and SectionIndex. 3: if both Section and SectionIndex are specified, but the two values refer to different sections, an error will be reported. 4: an invalid SectionIndex is allowed. 5: if a symbol references a non-existent section by SectionName, an error will be reported.
Reviewed By: jhenderson, Higuoxing
Differential Revision: https://reviews.llvm.org/D109566
|
 | llvm/lib/ObjectYAML/XCOFFYAML.cpp |
 | llvm/test/tools/yaml2obj/XCOFF/symbol-section.yaml |
 | llvm/include/llvm/ObjectYAML/XCOFFYAML.h |
 | llvm/lib/ObjectYAML/XCOFFEmitter.cpp |
 | llvm/lib/Object/XCOFFObjectFile.cpp |
Commit
db4ff98bf9733605c713e75ab6677523e6d267cb
by dblaikieDebugInfo: Add support for template parameters with qualifiers
eg: t1<void () const> - DWARF doesn't have a particularly nice way to encode this, for real member function types (like `void (t1::*)() const`) the const-ness is encoded in the type of the artificial first parameter. But `void () const` has no parameters, so encode it like a normal const-qualified type, using DW_TAG_const_type. (similarly for restrict and volatile)
Reference qualifiers (& and &&) coming in a separate commit shortly.
|
 | clang/lib/CodeGen/CGDebugInfo.h |
 | clang/lib/CodeGen/CGDebugInfo.cpp |
 | clang/test/CodeGenCXX/debug-info-template.cpp |
Commit
e4b9f5e851d1fe0ba93cbb11b2ed4558602c379e
by dblaikieDebugInfo: Add support for template parameters with reference qualifiers
Followon from the previous commit supporting cvr qualifiers.
|
 | clang/test/CodeGenCXX/debug-info-template.cpp |
 | clang/lib/CodeGen/CGDebugInfo.cpp |
Commit
13e34f9fc13fbe08af69b206eacac2e0008dd126
by dblaikieFixup some formatting from a recent commit
|
 | clang/lib/CodeGen/CGDebugInfo.cpp |
Commit
e85ed4437307afd2d79af5f9778fd98ce5cc036b
by aheejin[WebAssembly] Fix a typo in comments
|
 | llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp |
Commit
9aeecdfa8e9104392b435444a5f978d2eb71e51a
by sgueltonCheck supported architectures in sseXYZ/avxXYZ headers
It doesn't make sense to include those headers on the wrong architecture, provide an explicit error message in that case.
Fix https://bugs.llvm.org/show_bug.cgi?id=48915
Differential Revision: https://reviews.llvm.org/D109686
|
 | clang/lib/Headers/smmintrin.h |
 | clang/lib/Headers/ammintrin.h |
 | clang/lib/Headers/tmmintrin.h |
 | clang/lib/Headers/nmmintrin.h |
 | clang/lib/Headers/pmmintrin.h |
 | clang/lib/Headers/immintrin.h |
 | clang/lib/Headers/xmmintrin.h |
 | clang/lib/Headers/emmintrin.h |
 | clang/lib/Headers/wmmintrin.h |
 | clang/test/Headers/xmmintrin-unsupported.c |
 | clang/lib/Headers/mmintrin.h |
Commit
61f22f70caf80a44d2528e82e5511d5413b8cf70
by martin[runtimes] Initialize LLVM_DEFAULT_TARGET_TRIPLE if not set by the caller
Differential Revision: https://reviews.llvm.org/D109716
|
 | runtimes/CMakeLists.txt |
Commit
5b007f2c94667b360fcf2009952cd227945ab9e5
by martin[runtimes] Calculate the path to the llvm directory without the LLVM cmake package
If building by pointing cmake directly at the llvm-project/runtimes directory, the llvm cmake package files (that provide e.g. LLVM_BUILD_MAIN_SRC_DIR) aren't necessarily available. Instead just use a path relative to the current source dir.
Differential Revision: https://reviews.llvm.org/D109717
|
 | runtimes/CMakeLists.txt |
Commit
197084fcee268fa7fbbc96df0900785766f55a69
by martin[llvm-readobj] [COFF] Try to resolve symbols in unwind info on x86
This is the same as we do on arm64 already for the MSVC style label symbols, but also handle the way GCC produces it - with all relocations pointing at the .text section symbol, with various offsets.
Differential Revision: https://reviews.llvm.org/D109649
|
 | llvm/test/tools/llvm-readobj/COFF/x86_64-unwind-preferred-symbol-msvc.yaml |
 | llvm/tools/llvm-readobj/Win64EHDumper.cpp |
 | llvm/test/tools/llvm-readobj/COFF/x86_64-unwind-preferred-symbol-gcc.yaml |
Commit
63784b9a75eb959a65c8cf644af9565764d8322c
by martin[llvm-readobj] [COFF] Resolve relocations pointing at section symbols for arm64 too
This syncs parts from the x86 implementation to the ARMWinEH implementation.
Currently, neither of the compilers targeting COFF/arm64 (MSVC, LLVM) produce such relocations, but LLVM might after a later patch.
Differential Revision: https://reviews.llvm.org/D109650
|
 | llvm/test/tools/llvm-readobj/COFF/arm64-unwind-preferred-symbol2.yaml |
 | llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp |
 | llvm/tools/llvm-readobj/ARMWinEHPrinter.h |
Commit
ac3edc4c97ae9de62cdaec5d1acfa627a9a4b6ca
by martin[Win64EH] Write .pdata symbol relocations relative to the temporary begin symbol
Previously the relocations pointed at the public user facing, possibly external symbol.
When the function itself is weak, that symbol may be overridden at link time, pointing at another strong implementation of the same function instead. In that case, there's two conflicting pdata entries pointing at the same address, and the wrong unwind info might end up used.
Both GCC/binutils and MSVC produce pdata pointing at internal static symbols. (GCC/binutils point at the .text section just as LLVM does after this change, MSVC points at special label type symbols with the type IMAGE_SYM_CLASS_LABEL and names like '$LN4'.)
This fixes unwinding through an overridden "operator new" with a statically linked C++ library in MinGW mode. (Building libc++ with -ffunction-sections and linking with --gc-sections might avoid the issue too.)
This makes the produced object files a little less user friendly to debug, but with other recent improvements for llvm-readobj, the unwind info debugging experience should be pretty much the same.
Differential Revision: https://reviews.llvm.org/D109651
|
 | llvm/lib/MC/MCWin64EH.cpp |
 | llvm/test/MC/COFF/seh-align2.s |
 | llvm/test/MC/COFF/seh.s |
 | llvm/test/MC/AArch64/seh.s |
 | llvm/test/MC/COFF/seh-align3.s |
 | llvm/test/MC/COFF/seh-align1.s |
Commit
742cf3996ed93fcafadf20bedf0a7789484ff8ef
by cullen.rhodes[AArch64] NFC: Use 'asm' in SIMDScalarCPY
Fixes a warning identified in D109359. The mnemonic is also mov, not cpy.
Reviewed By: dmgreen
Differential Revision: https://reviews.llvm.org/D109573
|
 | llvm/lib/Target/AArch64/AArch64InstrInfo.td |
 | llvm/lib/Target/AArch64/AArch64InstrFormats.td |
Commit
6fbc167c0a8bbf41f33d0b5937ec5ca3488456a7
by cullen.rhodes[WebAssembly] NFC: Remove unused tblgen template args
Identified in D109359.
Reviewed By: aheejin
Differential Revision: https://reviews.llvm.org/D109689
|
 | llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td |
Commit
ad88632b650325af755ae42ff29114c1f6eb2841
by Justas.Janickas[OpenCL] Tests C++ for OpenCL version macros
Version macro definitions are tested for C++ for OpenCL when explicit version is provided on command line via `-cl-std` flag.
Differential Revision: https://reviews.llvm.org/D109366
|
 | clang/test/Preprocessor/predefined-macros.c |
Commit
f28740541942ea4d68b968af279bcd6793732f00
by Tim NorthoverAArch64: fix indentation of ProcAppleA14. NFC.
|
 | llvm/lib/Target/AArch64/AArch64.td |
Commit
2d6829bbbe6877920d9be1db93b9f3fc85b43d10
by mizvekov[clang] disable implicit moves when not in CPlusPLus
See PR51842.
This fixes an assert firing in the static analyzer, triggered by implicit moves in blocks in C mode:
This also simplifies the AST a little bit when compiling non C++ code, as the xvalue implicit casts are not inserted.
We keep and test that the nrvo flag is still being set on the VarDecls, as that is still a bit beneficial while not really making anything more complicated.
Signed-off-by: Matheus Izvekov <mizvekov@gmail.com>
Reviewed By: NoQ
Differential Revision: https://reviews.llvm.org/D109654
|
 | clang/test/Analysis/blocks-nrvo.c |
 | clang/lib/Sema/SemaStmt.cpp |
 | clang/test/AST/nrvo.c |
Commit
3582828748282708ea33cadb587b637d9ffa8546
by chennngwang[libc][Obvious] Some clean work with memmove.
|
 | libc/src/string/memmove.h |
 | libc/src/string/memmove.cpp |
 | libc/test/src/string/memmove_test.cpp |
Commit
a91cfd1990255aea545683083329c2ad3fee4518
by uday[MLIR] Improve op parse error message for AtLeastNOperands trait
Improve parse error message for "at least N operands" op trait.
Differential Revision: https://reviews.llvm.org/D109747
|
 | mlir/lib/IR/Operation.cpp |
Commit
5a6dfbb8cd26376120e16ceae650f6c9b7a00950
by david.green[ARM] Teach DemandedVectorElts about VMOVN lanes
The class of instructions that write to narrow top/bottom lanes only demand the even or odd elements of the input lanes. Which means that a pair of VMOVNT; VMOVNB demands no lanes from the original input. This teaches that to instcombine from the target hooks available through ARMTTIImpl.
Differential Revision: https://reviews.llvm.org/D109325
|
 | llvm/test/Transforms/InstCombine/ARM/mve-narrow.ll |
 | llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp |
 | llvm/lib/Target/ARM/ARMTargetTransformInfo.h |
Commit
e248d69036dad6f65584dd8faac4e2d5a3816e12
by floRecommit "[LAA] Support pointer phis in loop by analyzing each incoming pointer."
SCEV does not look through non-header PHIs inside the loop. Such phis can be analyzed by adding separate accesses for each incoming pointer value.
This results in 2 more loops vectorized in SPEC2000/186.crafty and avoids regressions when sinking instructions before vectorizing.
Fixes PR50296, PR50288.
Reviewed By: Meinersbur
Differential Revision: https://reviews.llvm.org/D102266
|
 | llvm/include/llvm/Analysis/LoopAccessAnalysis.h |
 | llvm/lib/Analysis/LoopAccessAnalysis.cpp |
 | llvm/test/Analysis/LoopAccessAnalysis/pointer-phis.ll |
 | llvm/test/Transforms/LoopDistribute/pointer-phi-in-loop.ll |
 | llvm/test/Transforms/LoopVectorize/vectorize-pointer-phis.ll |
Commit
125e8ef10ba468d41b27bf9c7569c1a0520d1ab9
by martin[runtimes] Check whether -nostdinc++ and -nostdlib++ are supported
Don't blindly assume they're supported - GCC doesn't support -nostdlib++.
The llvm-project/runtimes directory is supposed to allow building the runtimes standalone from a newly built Clang, and thus should allow building with other compilers too.
Differential Revision: https://reviews.llvm.org/D109719
|
 | runtimes/CMakeLists.txt |
Commit
44a889778ceeb6bcb11702f5c940306905a3821e
by gysit[mlir][linalg] Fold ExtractSliceOps during tiling.
Add the makeComposedExtractSliceOp method that creates an ExtractSliceOp and folds chains of ExtractSliceOps by computing the sum of their offsets and by multiplying their strides.
Reviewed By: nicolasvasilache
Differential Revision: https://reviews.llvm.org/D109601
|
 | mlir/test/Dialect/Linalg/tile-tensors.mlir |
 | mlir/include/mlir/Dialect/Linalg/Utils/Utils.h |
 | mlir/lib/Dialect/StandardOps/Utils/Utils.cpp |
 | mlir/include/mlir/Dialect/StandardOps/Utils/Utils.h |
 | mlir/lib/Dialect/Linalg/Utils/Utils.cpp |
Commit
09dc454b00b8ed0a19f766f760fa19e86a0b9059
by Justas.Janickas[OpenCL] Enables .rgba vector extension in C++ for OpenCL 2021
`.rgba` vector extension setting in C++ for OpenCL 2021 is now performed analogously to OpenCL C 3.0. Test case added.
Differential Revision: https://reviews.llvm.org/D109370
|
 | clang/test/SemaOpenCL/ext_vectors.cl |
 | clang/lib/Sema/SemaExprMember.cpp |
Commit
f78f613bb74ca837be36efcc72105c3c2d54b4f3
by thakis[llvm cmake] replace tabs with spaces in config-ix.cmake
|
 | llvm/cmake/config-ix.cmake |
Commit
8cfab5de13a8ec3a2ffccb1b94b0165512a33552
by thakis[Windows build] Use "DIA SDK" in sysroot
This updates llvm/utils/sysroot.py to include the "DIA SDK" folder in the sysroot.
It also updates the build to look for the DIA SDK there if a sysroot is set.
This requires moving LLVM_WINSYSROOT to config-ix.cmake.
For the GN build, I chose to pass a qualified path to diaguids in libs instead of pushing a config with a `/libpath:` flag. The former requires a GN with https://gn-review.googlesource.com/c/gn/+/12200, the latter requires D109624. The former is more like the cmake build, arguably a bit simpler, and it's easier to check for the wrong GN revision and easier to update GN.
Differential Revision: https://reviews.llvm.org/D109708
|
 | llvm/cmake/modules/HandleLLVMOptions.cmake |
 | llvm/utils/sysroot.py |
 | llvm/utils/gn/secondary/llvm/lib/DebugInfo/PDB/BUILD.gn |
 | llvm/cmake/config-ix.cmake |
 | compiler-rt/cmake/config-ix.cmake |
 | llvm/utils/gn/secondary/llvm/lib/DebugInfo/PDB/enable_dia.gni |
Commit
9bbc0c1ffb47f9cf4c9d8e9a0e8100002fe5aafb
by stephen.tozer[Dexter] Improve performance by evaluating expressions only when needed
Currently, Dexter's model for fetching watch values is to build a list of expressions to watch before running the debugger, then evaluating all of them at each breakpoint, then finally looking up the values of these expressions at each line they were expected on. When using dexter on a large project while watching many different expressions, this is very slow, as Dexter will make a massive number of calls made to the debugger's API, the vast majority of which are not being used for anything. This patch fixes this issue by having Dexter only evaluate expressions at a breakpoint when it will be used by a Dexter command.
Reviewed By: jmorse
Differential Revision: https://reviews.llvm.org/D107070
|
 | cross-project-tests/debuginfo-tests/dexter/dex/command/commands/DexExpectWatchBase.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/command/CommandBase.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerBase.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/command/commands/DexExpectProgramState.py |
Commit
601102d282d5e9a1429fea52ee17303aec8a7c10
by aaronCleanup identifier parsing; NFC
Rename methods to clearly signal when they only deal with ASCII, simplify the parsing of identifier, and use start/continue instead of head/body for consistency with Unicode terminology.
|
 | clang/unittests/Basic/CharInfoTest.cpp |
 | clang/lib/Edit/EditedSource.cpp |
 | clang/lib/Sema/SemaExprObjC.cpp |
 | clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp |
 | clang/lib/Lex/Lexer.cpp |
 | clang/lib/Sema/SemaAvailability.cpp |
 | clang/lib/ARCMigrate/TransUnbridgedCasts.cpp |
 | clang/lib/Sema/SemaType.cpp |
 | clang-tools-extra/clangd/refactor/Rename.cpp |
 | clang/include/clang/Lex/Lexer.h |
 | clang/lib/AST/MicrosoftMangle.cpp |
 | clang/lib/Frontend/LayoutOverrideSource.cpp |
 | clang/lib/ARCMigrate/ObjCMT.cpp |
 | clang-tools-extra/clangd/SourceCode.cpp |
 | clang/lib/Lex/DependencyDirectivesSourceMinimizer.cpp |
 | clang/lib/Basic/Module.cpp |
 | clang/lib/Sema/SemaDeclAttr.cpp |
 | clang/include/clang/Basic/CharInfo.h |
 | clang/lib/Tooling/Transformer/Parsing.cpp |
 | clang/lib/Frontend/Rewrite/FrontendActions.cpp |
 | clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp |
 | clang/lib/Lex/ModuleMap.cpp |
 | clang-tools-extra/clang-include-fixer/IncludeFixer.cpp |
 | clang-tools-extra/clangd/CodeComplete.cpp |
Commit
f22c63b41bda01163a88b0bb9887a9324810732f
by pavel[lldb/test] Start pexpect tests with a custom HOME
This addresses the flakyness of (at least) TestMultilineNavigation, which was failing when the editline history of a concurrently executing test made leaked in. Using a test-specific home directory ensures the tests are independent.
|
 | lldb/packages/Python/lldbsuite/test/lldbpexpect.py |
Commit
2b4745fe057f9d84e7c73cf5b990c7bdcde8847f
by Matthew.ArsenaultAMDGPU: Avoid relying on an undef value in test
This was really becoming a direct call during the DAG, so it wasn't as true to the test purpose.
|
 | llvm/test/CodeGen/AMDGPU/indirect-call-known-callees.ll |
Commit
a1ae56d6ad9ae823241b384178910576590c223b
by annaRemove incorrect comment in getSingleUndroppableUse. NFC
We traverse the entire use list to find the undroppable use.
|
 | llvm/include/llvm/IR/Value.h |
Commit
5041a485b948e55e54338779f2248c45402b0ae7
by amy.kwan1[PowerPC] Exploit Prefixed Load/Stores using the refactored Load/Store Implementation
This patch exploits the prefixed load and store instructions utilizing the refactored load/store implementation introduced in D93370.
Prefixed load and store instructions are emitted whenever we are loading or storing a value with an offset that fits into a 34-bit signed immediate. Patterns for the prefixed load and stores are added in this patch, as well as the implementation that detects when we are loading and storing a value with an offset that fits in 34-bits.
Differential Revision: https://reviews.llvm.org/D96075
|
 | llvm/test/CodeGen/PowerPC/atomics-i32-ldst.ll |
 | llvm/test/CodeGen/PowerPC/paired-vector-intrinsics.ll |
 | llvm/test/CodeGen/PowerPC/pcrel_ldst.ll |
 | llvm/test/CodeGen/PowerPC/scalar-float-ldst.ll |
 | llvm/test/CodeGen/PowerPC/scalar-double-ldst.ll |
 | llvm/test/CodeGen/PowerPC/scalar-i32-ldst.ll |
 | llvm/test/CodeGen/PowerPC/scalar-i64-ldst.ll |
 | llvm/test/CodeGen/PowerPC/vec_insert_elt.ll |
 | llvm/test/CodeGen/PowerPC/atomics-i64-ldst.ll |
 | llvm/test/CodeGen/PowerPC/mma-acc-memops.ll |
 | llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp |
 | llvm/test/CodeGen/PowerPC/mma-intrinsics.ll |
 | llvm/lib/Target/PowerPC/PPCISelLowering.cpp |
 | llvm/test/CodeGen/PowerPC/atomics-i16-ldst.ll |
 | llvm/test/CodeGen/PowerPC/atomics-i8-ldst.ll |
 | llvm/test/CodeGen/PowerPC/p10-fi-elim.ll |
 | llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp |
 | llvm/test/CodeGen/PowerPC/f128_ldst.ll |
 | llvm/test/CodeGen/PowerPC/aix-vec_insert_elt.ll |
 | llvm/lib/Target/PowerPC/PPCISelLowering.h |
 | llvm/lib/Target/PowerPC/PPCInstrInfo.td |
 | llvm/test/CodeGen/PowerPC/scalar-i8-ldst.ll |
 | llvm/lib/Target/PowerPC/PPCInstrPrefix.td |
 | llvm/test/CodeGen/PowerPC/vector-ldst.ll |
 | llvm/test/CodeGen/PowerPC/scalar-i16-ldst.ll |
 | llvm/test/CodeGen/PowerPC/int128_ldst.ll |
Commit
ef8c9135efcb3847fc0e5bbdb55eae18751090df
by sbc[WebAssembly] Allow import and export of TLS symbols between DSOs
We previously had a limitation that TLS variables could not be exported (and therefore could also not be imported). This change removed that limitation.
Differential Revision: https://reviews.llvm.org/D108877
|
 | llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp |
 | llvm/include/llvm/BinaryFormat/Wasm.h |
 | llvm/lib/MC/WasmObjectWriter.cpp |
 | llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp |
 | lld/test/wasm/shared-needed.s |
 | llvm/lib/ObjectYAML/WasmYAML.cpp |
 | lld/wasm/SyntheticSections.cpp |
 | llvm/include/llvm/MC/MCExpr.h |
 | lld/test/wasm/tls-non-shared-memory.s |
 | lld/test/wasm/shared64.s |
 | lld/wasm/SyntheticSections.h |
 | llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td |
 | llvm/test/CodeGen/WebAssembly/tls-local-exec.ll |
 | lld/wasm/Symbols.cpp |
 | llvm/lib/MC/MCExpr.cpp |
 | lld/wasm/Writer.cpp |
 | lld/test/wasm/pie.ll |
 | lld/test/wasm/shared.s |
 | llvm/lib/Object/WasmObjectFile.cpp |
 | lld/test/wasm/tls-import.s |
 | lld/wasm/Symbols.h |
 | llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp |
 | llvm/tools/obj2yaml/wasm2yaml.cpp |
 | lld/test/wasm/tls-export.s |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyWasmObjectWriter.cpp |
 | lld/wasm/Relocations.cpp |
 | llvm/test/MC/WebAssembly/tls.s |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h |
 | llvm/include/llvm/ObjectYAML/WasmYAML.h |
 | llvm/lib/MC/MCWasmStreamer.cpp |
 | llvm/test/CodeGen/WebAssembly/tls-general-dynamic.ll |
Commit
8401713b3ef1456a603874d96a99b2d5953df49c
by davg[clangd] Ignore ObjC `id` and `instancetype` in FindTarget
Even though they're implemented via typedefs, we typically want to treat them like keywords.
We could add hover information / xrefs, but it's very unlikely to provide any value.
Differential Revision: https://reviews.llvm.org/D108556
|
 | clang-tools-extra/clangd/unittests/FindTargetTests.cpp |
 | clang-tools-extra/clangd/FindTarget.cpp |
 | clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp |
Commit
fb4d590a622f4031900516360c07ee6ace01c5e6
by kristof.umannFix a unittest file after D108695 when Z3 is enabled
|
 | clang/unittests/StaticAnalyzer/CheckerRegistration.h |
 | clang/unittests/StaticAnalyzer/FalsePositiveRefutationBRVisitorTest.cpp |
Commit
6ee55f9ab57435ae72a070a9eff76f281082208f
by sbcFix test failure created by ef8c9135efcb
Followup to https://reviews.llvm.org/D108877 to fix test failure.
|
 | lld/test/wasm/shared.s |
 | llvm/lib/ObjectYAML/WasmYAML.cpp |
 | lld/test/wasm/shared64.s |
 | lld/test/wasm/shared-needed.s |
Commit
2fd180bbb9a7bb8604a5aca31f1ca9dc5358a433
by craig.topper[IR] Reduce max supported integer from 2^24-1 to 2^23.
SelectionDAG will promote illegal types up to a power of 2 before splitting down to a legal type. This will create an IntegerType with a bit width that must be <= MAX_INT_BITS. This places an effective upper limit on any type of 2^23 so that we don't try create a 2^24 type.
I considered putting a fatal error somewhere in the path from TargetLowering::getTypeConversion down to IntegerType::get, but limiting the type in IR seemed better.
This breaks backwards compatibility with IR that is using a really large type. I suspect such IR is going to be very rare due to the the compile time costs such a type likely incurs.
Prevents the ICE in PR51829.
Reviewed By: efriedma, aaron.ballman
Differential Revision: https://reviews.llvm.org/D109721
|
 | llvm/test/Assembler/invalid-inttype.ll |
 | clang/test/CodeGen/ext-int.c |
 | clang/test/CodeGenCXX/ext-int.cpp |
 | llvm/docs/ReleaseNotes.rst |
 | clang/docs/ReleaseNotes.rst |
 | llvm/docs/LangRef.rst |
 | llvm/test/Assembler/max-inttype.ll |
 | llvm/include/llvm/IR/DerivedTypes.h |
 | clang/test/SemaCXX/ext-int.cpp |
Commit
d0d9e6f0849b2e76e980e2edf365302f47f4e35f
by Saleem Abdulrasoolclang-tidy: introduce readability-containter-data-pointer check
This introduces a new check, readability-containter-data-pointer. This check is meant to catch the cases where the user may be trying to materialize the data pointer by taking the address of the 0-th member of a container. With C++11 or newer, the `data` member should be used for this. This provides the following benefits:
- `.data()` is easier to read than `&[0]` - it avoids an unnecessary re-materialization of the pointer * this doesn't matter in the case of optimized code, but in the case of unoptimized code, this will be visible - it avoids a potential invalid memory de-reference caused by the indexing when the container is empty (in debug mode, clang will normally optimize away the re-materialization in optimized builds).
The small potential behavioural change raises the question of where the check should belong. A reasoning of defense in depth applies here, and this does an unchecked conversion, with the assumption that users can use the static analyzer to catch cases where we can statically identify an invalid memory de-reference. For the cases where the static analysis is unable to prove the size of the container, UBSan can be used to track the invalid access.
Special thanks to Aaron Ballmann for the discussion on whether this check would be useful and where to place it.
This also partially resolves PR26817!
Reviewed By: aaron.ballman
Differential Revision: https://reviews.llvm.org/D108893
|
 | clang-tools-extra/docs/clang-tidy/checks/readability-data-pointer.rst |
 | clang-tools-extra/clang-tidy/readability/CMakeLists.txt |
 | clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp |
 | clang-tools-extra/docs/ReleaseNotes.rst |
 | clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h |
 | clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp |
 | clang-tools-extra/test/clang-tidy/checkers/readability-container-data-pointer.cpp |
Commit
64c8e7489b01d1fb92eded6feb4913847b210cbd
by blangmuir[JITLink] Allow moving a Symbol to a Block in a different Section
When moving a Symbol between Blocks that are in different Sections, update the symbol tables for each Section. Otherwise symbol.getBlock().getSection() will not match the contents of Section::symbols(), which asserts during linking.
Differential Revision: https://reviews.llvm.org/D109724
|
 | llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h |
 | llvm/unittests/ExecutionEngine/JITLink/LinkGraphTests.cpp |
Commit
609187365137be708509dd8d92acc5b9aef76695
by gysit[mli][linalg] Reuse getValueOrCreateConstantIndexOp method (NFC).
Use getValueOrCreateConstantIndexOp introduced by https://reviews.llvm.org/D109601 in multiple places in LinalgOps.cpp.
Reviewed By: nicolasvasilache, springerm
Differential Revision: https://reviews.llvm.org/D109756
|
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
Commit
d9e46beace3120fbc4810dda5c3ed88f93e862a4
by kazu[IPO] Use make_early_inc_range (NFC)
|
 | llvm/lib/Transforms/IPO/FunctionSpecialization.cpp |
 | llvm/lib/Transforms/IPO/StripDeadPrototypes.cpp |
 | llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp |
 | llvm/lib/Transforms/IPO/GlobalOpt.cpp |
 | llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp |
 | llvm/lib/Transforms/IPO/ConstantMerge.cpp |
Commit
268521218434bcd3b859e88a0c50369de9d96cf7
by qiaopeixin[flang][OpenMP] Add semantic check for threadprivate directive
This patch implements the following check for THREADPRIVATE construct: ``` A variable that is part of another variable (as an array, structure element or type parameter inquiry) cannot appear in a threadprivate directive. ```
Reviewed By: kiranchandramohan
Differential Revision: https://reviews.llvm.org/D109685
|
 | flang/test/Semantics/omp-parallel-private02.f90 |
 | flang/test/Semantics/omp-parallel-shared02.f90 |
 | flang/test/Semantics/omp-allocate07.f90 |
 | flang/lib/Semantics/check-omp-structure.h |
 | flang/test/Semantics/omp-allocate03.f90 |
 | flang/test/Semantics/omp-parallel-private01.f90 |
 | flang/test/Semantics/omp-parallel-shared03.f90 |
 | flang/test/Semantics/omp-parallel-private03.f90 |
 | flang/test/Semantics/omp-parallel-private04.f90 |
 | flang/test/Semantics/omp-parallel-shared01.f90 |
 | flang/lib/Semantics/check-omp-structure.cpp |
 | flang/test/Semantics/omp-parallel-shared04.f90 |
 | flang/test/Semantics/omp-threadprivate01.f90 |
Commit
53727b48fde1c275476e7531a0731bb1d9842dc5
by thakis[gn build] Use lib_dirs instead of qualified path in libs for diaguids.lib
Follow-up to D109708: Using lib_dirs means this will work with ancient gn binaries.
Change the toolchain definitions to make lib_dirs have the right effect, and pull out lib_switch of each of the tools while here.
This means we now do pass /LIBPATH: to link.exe, but since we invoke it directly and not through clang-cl, this doesn't actually require D109624. And since this is built in to GN, we don't need a config to push the flag to dependents.
This is arguably a bit more idiomatic, and it doesn't require folks to update their GN binaries. No effective behavior change.
Differential Revision: https://reviews.llvm.org/D109763
|
 | llvm/utils/gn/secondary/llvm/lib/DebugInfo/PDB/BUILD.gn |
 | llvm/utils/gn/build/toolchain/BUILD.gn |
Commit
76dc8ac36d07cebe8cfe8fe757323562bb36df94
by thakisRevert "clang-tidy: introduce readability-containter-data-pointer check"
This reverts commit d0d9e6f0849b2e76e980e2edf365302f47f4e35f. Breaks tests, see e.g. https://lab.llvm.org/buildbot/#/builders/188/builds/3326
|
 | clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp |
 | clang-tools-extra/docs/clang-tidy/checks/readability-data-pointer.rst |
 | clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp |
 | clang-tools-extra/clang-tidy/readability/CMakeLists.txt |
 | clang-tools-extra/test/clang-tidy/checkers/readability-container-data-pointer.cpp |
 | clang-tools-extra/docs/ReleaseNotes.rst |
 | clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h |
Commit
d79bb30dbb08910816859ccaae1ca5d04fbd9501
by arames[NFC] Add trailing comma on TYPED_TEST_SUITE
This avoids a -pedantic warning: warning: ISO C++11 requires at least one argument for the "..." in a variadic macro
See also https://github.com/google/googletest/issues/2271
|
 | llvm/unittests/Support/HashBuilderTest.cpp |
Commit
1de516d7ae7e568a0ae28b79d2a91521bff79689
by bjorn.a.pettersson[StackColoring] Pre-commit of test case showing a debug invariance bug
Having DBG_VALUE instructions referencing a stack slot while being outside of the LIFETIME_START/LIFETIME_END markers for that stack slot is perhaps not always ideal (from a debugging perspective), but it might happen during codegen that we end up with such situations (e.g. positioning of the DBG_VALUE instruction for a SDDbgOperand::FRAMEIX at ISel is a bit sloppy in that context).
This patch adds a test case showing that StackColoring currently isn't debug invariant, and that the position of DBG_VALUE instructions referencing the stack slots might impact the decision making regarding stack slot reuse.
Differential Revision: https://reviews.llvm.org/D109757
|
 | llvm/test/CodeGen/X86/StackColoring-dbg-invariance.mir |
Commit
cd2bff1ef10563bc710ca7a97aeb20297fc99597
by bjorn.a.pettersson[StackColoring] Fix a debug invariance problem
Ignore dbg instructions when collecting stack slot markers. This is to make sure the coloring is invariant regarding presence of dbg instructions (even in cases when the dbg instructions might be badly placed in the input).
Differential Revision: https://reviews.llvm.org/D109758
|
 | llvm/test/CodeGen/X86/StackColoring-dbg-invariance.mir |
 | llvm/lib/CodeGen/StackColoring.cpp |
Commit
1f44fa3ac17ceacc753019092bc50436c77ddcfa
by stephen.tozerRevert "[Dexter] Improve performance by evaluating expressions only when needed"
Reverted due to build failure on greendragon lldb build.
This reverts commit 9bbc0c1ffb47f9cf4c9d8e9a0e8100002fe5aafb.
|
 | cross-project-tests/debuginfo-tests/dexter/dex/command/CommandBase.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/command/commands/DexExpectWatchBase.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/command/commands/DexExpectProgramState.py |
 | cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerBase.py |
Commit
49992c04148e5327bef9bd2dff53a0d46004b4b4
by Saleem AbdulrasoolRevert "Revert "clang-tidy: introduce readability-containter-data-pointer check""
This reverts commit 76dc8ac36d07cebe8cfe8fe757323562bb36df94.
Restore the change. The test had an incorrect negative from testing. The test is expected to trigger a failure as mentioned in the review comments. This corrects the test and should resolve the failure.
|
 | clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp |
 | clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h |
 | clang-tools-extra/docs/ReleaseNotes.rst |
 | clang-tools-extra/clang-tidy/readability/CMakeLists.txt |
 | clang-tools-extra/docs/clang-tidy/checks/readability-data-pointer.rst |
 | clang-tools-extra/test/clang-tidy/checkers/readability-container-data-pointer.cpp |
 | clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp |
Commit
5a7e1d52a9680476db636c448027b7ff46035bbb
by llvmgnsyncbot[gn build] Port 49992c04148e
|
 | llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn |
Commit
66c6bbe7ff56441706d6cbb349fde9a02e248c9a
by waltlPut code that avoids heapifying local blocks behind a flag
This change puts the functionality in commit c5792aa90fa45a1842f190c146f19e2c71ea6fbd behind a flag that is off by default. The original commit is not in Apple's Clang fork (and blocks are an Apple extension in the first place), and there is one known issue that needs to be addressed before it can be enabled safely.
Differential Revision: https://reviews.llvm.org/D108243
|
 | clang/include/clang/Basic/CodeGenOptions.def |
 | clang/test/PCH/arc-blocks.mm |
 | clang/test/CodeGenObjCXX/arc-blocks.mm |
 | clang/include/clang/Driver/Options.td |
 | clang/test/CodeGenObjC/arc-blocks.m |
 | clang/lib/CodeGen/CGObjC.cpp |
 | clang/test/CodeGenObjC/arc-block-copy-escape.m |
Commit
fa7c01e5784b7564a94029ca60dd3f9a8ca825b6
by David CARLIER[Sanitizers] intercept fparseln on freebsd
Reviewed By: vitalybuka, emaste
Differential Revision: https://reviews.llvm.org/D109753
|
 | compiler-rt/test/sanitizer_common/TestCases/FreeBSD/fparseln.cpp |
 | compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h |
Commit
7359450e6a053f11cc628afcfc562aeb1da229cc
by flo[VPlan] Queue (block, operand) pairs together (NFC).
Instead of discovering the sink-to block for each operand in the main loop, the sink-to block can instead be directly queued with the operands.
This simplifies processing in the main loop and is a NFC change split off from D104254 as suggested there.
|
 | llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp |
Commit
8cbbd7e0b2aa21ce7e416cfb63d9965518948c35
by hoy[llvm-profgen] Ignore broken LBR samples
Perf script can sometimes give disordered LBR samples like below.
``` b022500 32de0044 3386e1d1 7f118e05720c 7f118df2d81f 0x2a0b9622/0x2a0b9610/P/-/-/1 0x2a0b79ff/0x2a0b9618/P/-/-/2 0x2a0b7a4a/0x2a0b79e8/P/-/-/1 0x2a0b7a33/0x2a0b7a46/P/-/-/1 0x2a0b7a42/0x2a0b7a23/P/-/-/1 0x2a0b7a21/0x2a0b7a37/P/-/-/2 0x2a0b79e6/0x2a0b7a07/P/-/-/1 0x2a0b79d4/0x2a0b79dc/P/-/-/2 0x2a0b7a03/0x2a0b79aa/P/-/-/1 0x2a0b79a8/0x2a0b7a00/P/-/-/234 0x2a0b9613/0x2a0b7930/P/-/-/1 0x2a0b9622/0x2a0b9610/P/-/-/1 0x2a0b79ff/0x2a0b9618/P/-/-/2 0x2a0b7a4a/0x2aWarning: Processed 10263226 events and lost 1 chunks!
``` Note that the last LBR record `0x2a0b7a4a/0x2aWarning:` . Currently llvm-profgen does not detect that and as a result an uninitialized branch target value will be used. The uninitialized value can cause creepy instruction ranges created which which in turn will result in a completely wrong profile. An example is like
```
.... @ _ZN5folly13loadUnalignedIsEET_PKv]:18446744073709551615:18446744073709551615 1: 18446744073709551615 !CFGChecksum: 4294967295 !Attributes: 0 ```
Reviewed By: wenlei, wlei
Differential Revision: https://reviews.llvm.org/D109637
|
 | llvm/tools/llvm-profgen/ProfileGenerator.cpp |
 | llvm/tools/llvm-profgen/PerfReader.cpp |
 | llvm/tools/llvm-profgen/PerfReader.h |
Commit
ed2f0ad307193165a64c9847c24d8c9f4219f42b
by thakis[lld/mac] Search .tbd before binary for framework files too
This matters for example for the iPhoneSimulator14.0.sdk, which has a System/Library/Frameworks/UIKit.framework/UIKit that has LC_BUILD_VERSION with minos of 14.0, so linking against that file will produce warnings like:
.../iPhoneSimulator14.0.sdk/System/Library/Frameworks/UIKit.framework/UIKit has version 14.0.0, which is newer than target minimum of 12.0.0
when targeting x86_64-apple-ios12.0-simulator. That doens't happen when linking against UIKit.tbd instead, obviously.
Linking with RC_TRACE_DYLIB_SEARCHING=1 shows that ld64 also searches the tbd file first, and we already get that right for non-framework dylibs.
Fixes crbug.com/1249456.
Differential Revision: https://reviews.llvm.org/D109768
|
 | lld/MachO/DriverUtils.cpp |
 | lld/test/MachO/link-search-order.s |
Commit
3ce1b9631a50d4853ab6d5750eaf50951b49e89d
by Joseph.Nash[AMDGPU] Switch PostRA sched to MachineSched
Use GCNHazardRecognizer in postra sched. Updated tests for the new schedules.
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D109536
Change-Id: Ia86ba2ae168f12fb34b4d8efdab491f84d936cde
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.d16.ll |
 | llvm/test/CodeGen/AMDGPU/lds-atomic-fmin-fmax.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.update.dpp.ll |
 | llvm/test/CodeGen/AMDGPU/store-weird-sizes.ll |
 | llvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll |
 | llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/fmul.v2f16.ll |
 | llvm/test/CodeGen/AMDGPU/captured-frame-index.ll |
 | llvm/test/CodeGen/AMDGPU/load-constant-i16.ll |
 | llvm/test/CodeGen/AMDGPU/usubsat.ll |
 | llvm/test/CodeGen/AMDGPU/min.ll |
 | llvm/test/CodeGen/AMDGPU/mul_uint24-amdgcn.ll |
 | llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll |
 | llvm/test/CodeGen/AMDGPU/strict_fma.f16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f32.ll |
 | llvm/test/CodeGen/AMDGPU/ssubsat.ll |
 | llvm/test/CodeGen/AMDGPU/fpow.ll |
 | llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp |
 | llvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f64.ll |
 | llvm/test/CodeGen/AMDGPU/idot4s.ll |
 | llvm/test/CodeGen/AMDGPU/ds_write2.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i8.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/ashr.ll |
 | llvm/test/CodeGen/AMDGPU/vector-extract-insert.ll |
 | llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.a16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll |
 | llvm/test/CodeGen/AMDGPU/trunc.ll |
 | llvm/test/CodeGen/AMDGPU/shl_add_ptr.ll |
 | llvm/test/CodeGen/AMDGPU/amdgpu-mul24-knownbits.ll |
 | llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll |
 | llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll |
 | llvm/test/CodeGen/AMDGPU/stack-realign.ll |
 | llvm/test/CodeGen/AMDGPU/bitreverse.ll |
 | llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll |
 | llvm/test/CodeGen/AMDGPU/insert_vector_elt.ll |
 | llvm/test/CodeGen/AMDGPU/idot2.ll |
 | llvm/test/CodeGen/AMDGPU/strict_fsub.f16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement-stack-lower.ll |
 | llvm/test/CodeGen/AMDGPU/idot4u.ll |
 | llvm/test/CodeGen/AMDGPU/vgpr-liverange.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/store-local.96.ll |
 | llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll |
 | llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/store-local.128.ll |
 | llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll |
 | llvm/test/CodeGen/AMDGPU/fneg-fabs.f16.ll |
 | llvm/test/CodeGen/AMDGPU/ds_read2.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i128.ll |
 | llvm/test/CodeGen/AMDGPU/cluster_stores.ll |
 | llvm/lib/Target/AMDGPU/SIInstrInfo.cpp |
 | llvm/test/CodeGen/AMDGPU/shift-i128.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/uaddsat.ll |
 | llvm/test/CodeGen/AMDGPU/srl.ll |
 | llvm/test/CodeGen/AMDGPU/strict_fadd.f16.ll |
 | llvm/lib/Target/AMDGPU/SIInstrInfo.h |
 | llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll |
 | llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll |
 | llvm/test/CodeGen/AMDGPU/ds-sub-offset.ll |
 | llvm/test/CodeGen/AMDGPU/vgpr-descriptor-waterfall-loop-idom-update.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll |
 | llvm/test/CodeGen/AMDGPU/udiv64.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/roundeven.ll |
 | llvm/test/CodeGen/AMDGPU/fast-unaligned-load-store.global.ll |
 | llvm/test/CodeGen/AMDGPU/sra.ll |
 | llvm/test/CodeGen/AMDGPU/fshr.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.a16.ll |
 | llvm/test/CodeGen/AMDGPU/urem64.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/usubsat.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/fshl.ll |
 | llvm/test/CodeGen/AMDGPU/idot8u.ll |
 | llvm/test/CodeGen/AMDGPU/lshl64-to-32.ll |
 | llvm/test/CodeGen/AMDGPU/memory_clause.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.ll |
 | llvm/test/CodeGen/AMDGPU/fpext.f16.ll |
 | llvm/test/CodeGen/AMDGPU/uint_to_fp.i64.ll |
 | llvm/test/CodeGen/AMDGPU/copy-illegal-type.ll |
 | llvm/test/CodeGen/AMDGPU/store-local.128.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.scale.ll |
 | llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll |
 | llvm/test/CodeGen/AMDGPU/fptosi.f16.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.ll |
 | llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3.ll |
 | llvm/test/CodeGen/AMDGPU/llc-pipeline.ll |
 | llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/shl.ll |
 | llvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll |
 | llvm/test/CodeGen/AMDGPU/saddsat.ll |
 | llvm/test/CodeGen/AMDGPU/xor3.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll |
 | llvm/test/CodeGen/AMDGPU/udivrem.ll |
 | llvm/test/CodeGen/AMDGPU/ctpop16.ll |
 | llvm/test/CodeGen/AMDGPU/fshl.ll |
 | llvm/test/CodeGen/AMDGPU/bypass-div.ll |
 | llvm/test/CodeGen/AMDGPU/expand-scalar-carry-out-select-user.ll |
 | llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.atomic.dec.ll |
 | llvm/test/CodeGen/AMDGPU/ashr.v2i16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.128.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.round.f64.ll |
 | llvm/test/CodeGen/AMDGPU/dagcombine-fma-fmad.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll |
 | llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll |
 | llvm/test/CodeGen/AMDGPU/fptoui.f16.ll |
 | llvm/test/CodeGen/AMDGPU/srem64.ll |
 | llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll |
 | llvm/test/CodeGen/AMDGPU/saddo.ll |
 | llvm/test/CodeGen/AMDGPU/flat-scratch-init.ll |
 | llvm/test/CodeGen/AMDGPU/strict_fmul.f16.ll |
 | llvm/test/CodeGen/AMDGPU/load-global-i16.ll |
 | llvm/test/CodeGen/AMDGPU/sint_to_fp.i64.ll |
 | llvm/test/CodeGen/AMDGPU/mul.i16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/xnor.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.ll |
 | llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/orn2.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.sample.g16.ll |
 | llvm/test/CodeGen/AMDGPU/fexp.ll |
 | llvm/test/CodeGen/AMDGPU/memory-legalizer-private-volatile.ll |
 | llvm/test/CodeGen/AMDGPU/callee-special-input-sgprs-fixed-abi.ll |
 | llvm/test/CodeGen/AMDGPU/move-addr64-rsrc-dead-subreg-writes.ll |
 | llvm/test/CodeGen/AMDGPU/call-waitcnt.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/fma.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.ll |
 | llvm/test/CodeGen/AMDGPU/shl.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/floor.f64.ll |
 | llvm/test/CodeGen/AMDGPU/load-local.96.ll |
 | llvm/test/CodeGen/AMDGPU/frem.ll |
 | llvm/test/CodeGen/AMDGPU/idiv-licm.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/fpow.ll |
 | llvm/test/CodeGen/AMDGPU/load-local.128.ll |
 | llvm/test/CodeGen/AMDGPU/store-local.96.ll |
 | llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll |
 | llvm/test/CodeGen/AMDGPU/select64.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.o.dim.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.minnum.f16.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.g16.a16.dim.ll |
 | llvm/lib/Target/AMDGPU/GCNSubtarget.h |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll |
 | llvm/test/CodeGen/AMDGPU/uaddsat.ll |
 | llvm/test/CodeGen/AMDGPU/add3.ll |
 | llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll |
 | llvm/test/CodeGen/AMDGPU/select.f16.ll |
 | llvm/test/CodeGen/AMDGPU/branch-relaxation-inst-size-gfx10.ll |
 | llvm/test/CodeGen/AMDGPU/flat-scratch.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll |
 | llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll |
 | llvm/test/CodeGen/AMDGPU/shl.v2i16.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.maxnum.f16.ll |
 | llvm/test/CodeGen/AMDGPU/sign_extend.ll |
 | llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll |
 | llvm/test/CodeGen/AMDGPU/sdiv64.ll |
 | llvm/test/CodeGen/AMDGPU/fast-unaligned-load-store.private.ll |
 | llvm/test/CodeGen/AMDGPU/sdiv.ll |
 | llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll |
 | llvm/test/CodeGen/AMDGPU/vector-alloca-bitcast.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.fma.f16.ll |
 | llvm/test/CodeGen/AMDGPU/fp-min-max-atomics.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.dim.ll |
 | llvm/test/CodeGen/AMDGPU/idot8s.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.mulo.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2d.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.a16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.gather4.a16.dim.ll |
 | llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i8.ll |
 | llvm/test/CodeGen/AMDGPU/max.i16.ll |
 | llvm/test/CodeGen/AMDGPU/fp_to_sint.ll |
 | llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.96.ll |
 | llvm/test/CodeGen/AMDGPU/skip-if-dead.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll |
 | llvm/test/CodeGen/AMDGPU/anyext.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.a16.dim.ll |
 | llvm/test/CodeGen/AMDGPU/widen-smrd-loads.ll |
 | llvm/test/CodeGen/AMDGPU/callee-special-input-sgprs.ll |
 | llvm/test/CodeGen/AMDGPU/agpr-remat.ll |
 | llvm/test/CodeGen/AMDGPU/half.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.fmas.ll |
 | llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2i16.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/andn2.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll |
 | llvm/test/CodeGen/AMDGPU/ds-alignment.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.atomic.inc.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll |
 | llvm/test/CodeGen/AMDGPU/lshr.v2i16.ll |
 | llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/lshr.ll |
 | llvm/test/CodeGen/AMDGPU/cc-update.ll |
 | llvm/test/CodeGen/AMDGPU/kernel-args.ll |
Commit
468c4409f61455a168f9d8c187c75435487adf8c
by aheejinRevert "[WebAssembly] Rethrow longjmp in EH handling if EmSjLj is enabled"
This reverts commit b7b4ebbcfa463a7fae61dca7cec30c5b747bdec8.
Reason: This breaks several code-size tests in Emscripten test suite because this exports `emscripten_longjmp` for programs that didn't do it before.
|
 | llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp |
 | llvm/test/CodeGen/WebAssembly/lower-em-ehsjlj-sjlj-not-used.ll |
Commit
26b803177456112b4c6c2d30b7c3dc4d439af7e2
by daltenty[CMake][AIX] Disable visibility options in build
Visibility options currently have limited support on AIX and may cause warnings or errors depending on the build compiler used.
Reviewed By: ZarkoCA
Differential Revision: https://reviews.llvm.org/D108467
|
 | llvm/lib/Target/CMakeLists.txt |
 | llvm/cmake/modules/HandleLLVMOptions.cmake |
Commit
c4048d8f50aaf2c4c13b8d3e138abc34a22da754
by listmail[SCEV] Attempt to define what flags are legal on a SCEV
This is an attempt to define what the current semantics are closest too. Unfortunately, the current implementation does appear to be inconsistent with all semantic variants we've considered. This semantics is the one which seems to be closest to the spirit of the code, and that matched several long time contributors mental models of how the code "should work".
https://bugs.llvm.org/show_bug.cgi?id=51817 tracks the list of currently known violations of these rules. A series of follow up patches will be addressing each now that we've defined them to be bugs.
Differential Revision: https://reviews.llvm.org/D109553
|
 | llvm/include/llvm/Analysis/ScalarEvolution.h |
Commit
66902a32c83809d26662f76e4107d5dd777610c3
by Vedant Kumar[StopInfoMachException] Summarize arm64e BLRAx/LDRAx auth failures
Upstream lldb support for summarizing BLRAx and LDRAx auth failures.
rdar://41615322
Differential Revision: https://reviews.llvm.org/D102428
|
 | lldb/test/API/functionalities/ptrauth_diagnostics/BRAA_error/Makefile |
 | lldb/test/API/functionalities/ptrauth_diagnostics/LDRAA_error/TestPtrauthLDRAADiagnostic.py |
 | lldb/include/lldb/Core/Address.h |
 | lldb/test/API/functionalities/ptrauth_diagnostics/BLRAA_error/blraa.c |
 | lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_x16_invalid/Makefile |
 | lldb/source/Core/Address.cpp |
 | lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_x16_invalid/brkC47x.c |
 | lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp |
 | lldb/source/Plugins/Process/Utility/StopInfoMachException.h |
 | lldb/test/API/functionalities/ptrauth_diagnostics/BRAA_error/TestPtrauthBRAADiagnostic.py |
 | lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_code/Makefile |
 | lldb/test/API/functionalities/ptrauth_diagnostics/LDRAA_error/ldraa.c |
 | lldb/include/lldb/Core/Disassembler.h |
 | lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_code/TestPtrauthBRKc47xDiagnostic.py |
 | lldb/test/API/functionalities/ptrauth_diagnostics/BLRAA_error/Makefile |
 | lldb/test/API/functionalities/ptrauth_diagnostics/BRAA_error/braa.c |
 | lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_code/brkC47x.c |
 | lldb/test/API/functionalities/ptrauth_diagnostics/brkC47x_x16_invalid/TestPtrauthBRKc47xX16Invalid.py |
 | lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp |
 | lldb/source/Core/Disassembler.cpp |
 | lldb/test/API/functionalities/ptrauth_diagnostics/LDRAA_error/Makefile |
 | lldb/test/API/functionalities/ptrauth_diagnostics/BLRAA_error/TestPtrauthBLRAADiagnostic.py |
Commit
0dd755f0274245e320cd3eb0882ffe57542af252
by listmail[SCEV] Stop applying contextual flags in applyLoopGuards
This fixes a violation of the wrap flag rules introduced in c4048d8f. As noted in the original review, the NUW is legal to infer from the structure of the replacee, but a) there's no test coverage, and b) this should be done generically for all multiplies.
Differential Revision: https://reviews.llvm.org/D109782
|
 | llvm/lib/Analysis/ScalarEvolution.cpp |
Commit
336291e777f3e74bea2ae16f7bf61b8f4a76c869
by listmailautogen a test for ease of update in later patch
|
 | llvm/test/Analysis/ScalarEvolution/nsw.ll |
Commit
8dca953dd39c0cd8c80decbeb38753f58a4de580
by silvasean[mlir] Apply py::module_local() to a few more classes.
Reviewed By: ftynse
Differential Revision: https://reviews.llvm.org/D109776
|
 | mlir/lib/Bindings/Python/DialectSparseTensor.cpp |
 | mlir/lib/Bindings/Python/IRModule.h |
 | mlir/lib/Bindings/Python/PybindUtils.h |
Commit
162aed482403a4a7d54930d73a4d74e69e1e79db
by listmail[test] precommit test for D109786
|
 | llvm/test/Analysis/ScalarEvolution/mul.ll |
Commit
baff4b41055fc2d75bcdcea7bb39edce38a40acf
by listmail[test] precommit anoter test for D109786
|
 | llvm/test/Analysis/ScalarEvolution/mul.ll |
Commit
4cabaf594aa272b02c0d227ae16a2aced687d796
by dblaikieNFC: DebugInfo: refactor pretty printing into a utility class
Laying more foundation for full template name rebuilding - more complex type printing benefits from an object to carry some state rather than passing it around as parameters to every function.
|
 | llvm/lib/DebugInfo/DWARF/DWARFDie.cpp |
Commit
1a406cd5f2e2403b325f6d914b692459a2ab3b9b
by joker.ephRemove unused llvm/Support/Parallel.h from MLIR (NFC)
This header aren't needed anymore: MLIR is using a thread pool injected in the context instead of a global one.
|
 | mlir/lib/IR/Verifier.cpp |
 | mlir/lib/Pass/Pass.cpp |
 | mlir/lib/Pass/PassCrashRecovery.cpp |
 | mlir/lib/Transforms/Inliner.cpp |
Commit
81f8ad1769665a569a235b749e0e9e69ce7dc65e
by erasmus[flang] Make 'this_image()' an intrinsic function
Added 'this_image()' to the list of functions that are evaluated as intrinsic. Added IsCoarray functions to determine if an expression is a coarray (corank > 1).
Added save attribute to coarray variables in test file, this_image.f90.
reviewers: klausler, PeteSteinfeld
Differential Revision: https://reviews.llvm.org/D108059
|
 | flang/include/flang/Evaluate/tools.h |
 | flang/test/Semantics/call10.f90 |
 | flang/docs/Intrinsics.md |
 | flang/lib/Evaluate/tools.cpp |
 | flang/lib/Evaluate/intrinsics.cpp |
 | flang/test/Semantics/this_image.f90 |
Commit
99dfe90695a811f74fb7503703ffd52bd214dd2e
by Matthew.ArsenaultAttributor: Fix typos
|
 | llvm/include/llvm/Transforms/IPO/Attributor.h |
Commit
f12174204c639f9780f17cf7b8e910be703b6b8c
by Matthew.ArsenaultAMDGPU: Rename attributor class for uniform-work-group-size
This isn't really an AMDGPU specific attribute and could be moved to generic code. It's also important to include the word uniform in the name.
|
 | llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp |
Commit
fdd9761dd1a971c9f4d6776b511ea54d7765bfeb
by Matthew.ArsenaultAttributor: Fix crash on undef in !callees
|
 | llvm/lib/Transforms/IPO/AttributorAttributes.cpp |
 | llvm/test/Transforms/Attributor/callgraph.ll |
Commit
88146230e1b21aa042da481e5fd702fab82408fc
by Matthew.ArsenaultSeparateConstOffsetFromGEP: Fix stack overflow in unreachable code
ConstantOffsetExtractor::Find was infinitely recursing on the add referencing itself.
|
 | llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp |
 | llvm/test/Transforms/SeparateConstOffsetFromGEP/crash-in-unreachable-code.ll |
Commit
9adc0114bfeb704ca62d8c369fa52d0530179274
by springerm[mlir][linalg] PadTensorOp vectorization: Avoid redundant FillOps
Do not generate FillOps when these would be entirely overwritten.
Differential Revision: https://reviews.llvm.org/D109741
|
 | mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp |
Commit
aaf62958f1ae3c17ed1f4551bac37c2e202ffd5e
by i[CMake] Delete obsoleted COMPILER_RT_TEST_TARGET_TRIPLE
The last user has been removed from llvm-zorg for Android.
|
 | compiler-rt/cmake/Modules/CompilerRTUtils.cmake |
Commit
4a36e96c3fc2a9128097bfc4f907ccebc5dc66af
by Matthew.ArsenaultRegAllocGreedy: Account for reserved registers in num regs heuristic
This simple heuristic uses the estimated live range length combined with the number of registers in the class to switch which heuristic to use. This was taking the raw number of registers in the class, even though not all of them may be available. AMDGPU heavily relies on dynamically reserved numbers of registers based on user attributes to satisfy occupancy constraints, so the raw number is highly misleading.
There are still a few problems here. In the original testcase that made me notice this, the live range size is incorrect after the scheduler rearranges instructions, since the instructions don't have the original InstrDist offsets. Additionally, I think it would be more appropriate to use the number of disjointly allocatable registers in the class. For the AMDGPU register tuples, there are a large number of registers in each tuple class, but only a small fraction can actually be allocated at the same time since they all overlap with each other. It seems we do not have a query that corresponds to the number of independently allocatable registers. Relatedly, I'm still debugging some allocation failures where overlapping tuples seem to not be handled correctly.
The test changes are mostly noise. There are a handful of x86 tests that look like regressions with an additional spill, and a handful that now avoid a spill. The worst looking regression is likely test/Thumb2/mve-vld4.ll which introduces a few additional spills. test/CodeGen/AMDGPU/soft-clause-exceeds-register-budget.ll shows a massive improvement by completely eliminating a large number of spills inside a loop.
|
 | llvm/test/CodeGen/X86/avx512-regcall-NoMask.ll |
 | llvm/test/CodeGen/X86/avx512bw-intrinsics-upgrade.ll |
 | llvm/test/CodeGen/X86/horizontal-reduce-umin.ll |
 | llvm/test/CodeGen/X86/sdiv_fix_sat.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll |
 | llvm/test/CodeGen/X86/smul_fix_sat.ll |
 | llvm/test/CodeGen/X86/umul_fix_sat.ll |
 | llvm/test/CodeGen/X86/subvector-broadcast.ll |
 | llvm/test/CodeGen/AMDGPU/soft-clause-exceeds-register-budget.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll |
 | llvm/test/CodeGen/X86/legalize-shl-vec.ll |
 | llvm/test/CodeGen/X86/shrink_vmul.ll |
 | llvm/test/CodeGen/X86/2008-04-16-ReMatBug.ll |
 | llvm/test/CodeGen/X86/vector-fshl-128.ll |
 | llvm/test/CodeGen/X86/gather-addresses.ll |
 | llvm/test/CodeGen/AMDGPU/load-global-i16.ll |
 | llvm/test/CodeGen/X86/uadd_sat.ll |
 | llvm/test/CodeGen/X86/vector-lzcnt-128.ll |
 | llvm/test/CodeGen/AMDGPU/frem.ll |
 | llvm/test/CodeGen/X86/avx512-calling-conv.ll |
 | llvm/test/CodeGen/X86/select.ll |
 | llvm/test/CodeGen/X86/mul-constant-result.ll |
 | llvm/test/CodeGen/X86/vector-fshl-rot-128.ll |
 | llvm/test/CodeGen/AMDGPU/splitkit-copy-live-lanes.mir |
 | llvm/test/CodeGen/AMDGPU/half.ll |
 | llvm/test/CodeGen/Thumb2/mve-simple-arith.ll |
 | llvm/test/CodeGen/X86/bswap.ll |
 | llvm/test/CodeGen/X86/vector-fshr-128.ll |
 | llvm/test/CodeGen/X86/scheduler-backtracking.ll |
 | llvm/test/CodeGen/X86/sdiv_fix.ll |
 | llvm/test/CodeGen/PowerPC/srem-vector-lkk.ll |
 | llvm/lib/CodeGen/RegAllocGreedy.cpp |
 | llvm/test/CodeGen/X86/clear-highbits.ll |
 | llvm/test/CodeGen/X86/smax.ll |
 | llvm/test/CodeGen/X86/smulo-128-legalisation-lowering.ll |
 | llvm/test/CodeGen/AMDGPU/srl.ll |
 | llvm/test/CodeGen/X86/smul_fix.ll |
 | llvm/test/CodeGen/X86/vec-strict-inttofp-512.ll |
 | llvm/test/CodeGen/X86/illegal-bitfield-loadstore.ll |
 | llvm/test/CodeGen/X86/vector-tzcnt-128.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll |
 | llvm/test/CodeGen/X86/mul-i512.ll |
 | llvm/test/CodeGen/X86/widen_cast-4.ll |
 | llvm/test/CodeGen/X86/vector-shift-shl-256.ll |
 | llvm/test/CodeGen/X86/umin.ll |
 | llvm/test/CodeGen/X86/i128-mul.ll |
 | llvm/test/CodeGen/X86/statepoint-vreg-unlimited-tied-opnds.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap.ll |
 | llvm/test/CodeGen/X86/build-vector-128.ll |
 | llvm/test/CodeGen/X86/mmx-arith.ll |
 | llvm/test/CodeGen/AMDGPU/sdiv64.ll |
 | llvm/test/CodeGen/X86/nosse-vector.ll |
 | llvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll |
 | llvm/test/CodeGen/ARM/srem-seteq-illegal-types.ll |
 | llvm/test/CodeGen/Thumb2/mve-fptoui-sat-vector.ll |
 | llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll |
 | llvm/test/CodeGen/X86/vector-sext.ll |
 | llvm/test/CodeGen/X86/ushl_sat_vec.ll |
 | llvm/test/CodeGen/X86/vector-idiv-v2i32.ll |
 | llvm/test/CodeGen/AMDGPU/greedy-global-heuristic.mir |
 | llvm/test/CodeGen/X86/i64-to-float.ll |
 | llvm/test/CodeGen/X86/umul_fix.ll |
 | llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll |
 | llvm/test/CodeGen/X86/merge-consecutive-stores-nt.ll |
 | llvm/test/CodeGen/X86/smin.ll |
 | llvm/test/CodeGen/ARM/fptosi-sat-scalar.ll |
 | llvm/test/CodeGen/X86/funnel-shift.ll |
 | llvm/test/CodeGen/X86/umax.ll |
 | llvm/test/CodeGen/X86/vec-strict-fptoint-256.ll |
 | llvm/test/CodeGen/X86/ushl_sat.ll |
 | llvm/test/CodeGen/X86/pr46527.ll |
 | llvm/test/CodeGen/X86/udiv_fix_sat.ll |
 | llvm/test/CodeGen/X86/unfold-masked-merge-vector-variablemask.ll |
 | llvm/test/CodeGen/AMDGPU/load-constant-i16.ll |
 | llvm/test/CodeGen/X86/memcmp-more-load-pairs-x32.ll |
 | llvm/test/CodeGen/X86/vector-fshr-rot-128.ll |
 | llvm/test/CodeGen/X86/bitreverse.ll |
 | llvm/test/CodeGen/X86/fp128-cast.ll |
 | llvm/test/CodeGen/X86/peephole-na-phys-copy-folding.ll |
 | llvm/test/CodeGen/X86/mul128.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement-stack-lower.ll |
 | llvm/test/CodeGen/X86/pr31088.ll |
 | llvm/test/CodeGen/X86/load-combine.ll |
 | llvm/test/CodeGen/X86/sshl_sat.ll |
 | llvm/test/CodeGen/X86/vec_umulo.ll |
 | llvm/test/CodeGen/X86/pr34080-2.ll |
 | llvm/test/CodeGen/X86/vector-rotate-128.ll |
 | llvm/test/CodeGen/X86/known-signbits-vector.ll |
 | llvm/test/CodeGen/X86/funnel-shift-rot.ll |
 | llvm/test/CodeGen/X86/vec-strict-cmp-128.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz.ll |
 | llvm/test/CodeGen/X86/sse-intrinsics-fast-isel.ll |
 | llvm/test/CodeGen/X86/horizontal-reduce-smin.ll |
 | llvm/test/CodeGen/X86/umul-with-overflow.ll |
 | llvm/test/CodeGen/X86/setcc-wide-types.ll |
 | llvm/test/CodeGen/AMDGPU/copy-illegal-type.ll |
 | llvm/test/CodeGen/Hexagon/reg-scavengebug-2.ll |
 | llvm/test/CodeGen/X86/umulo-64-legalisation-lowering.ll |
 | llvm/test/CodeGen/X86/usub_sat.ll |
 | llvm/test/CodeGen/X86/vec_shift4.ll |
 | llvm/test/CodeGen/X86/mul-i1024.ll |
 | llvm/test/CodeGen/X86/avx512bwvl-intrinsics-upgrade.ll |
 | llvm/test/CodeGen/X86/popcnt.ll |
 | llvm/test/CodeGen/X86/vector-trunc-ssat.ll |
 | llvm/test/CodeGen/X86/xmulo.ll |
 | llvm/test/CodeGen/X86/64-bit-shift-by-32-minus-y.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll |
 | llvm/test/CodeGen/X86/fptosi-sat-scalar.ll |
 | llvm/test/CodeGen/RISCV/rv64zbp.ll |
 | llvm/test/CodeGen/X86/abs.ll |
 | llvm/test/CodeGen/X86/avx512-select.ll |
 | llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll |
 | llvm/test/CodeGen/X86/nontemporal.ll |
 | llvm/test/CodeGen/X86/vec-strict-cmp-sub128.ll |
 | llvm/test/CodeGen/X86/masked_gather_scatter.ll |
 | llvm/test/CodeGen/RISCV/rv32zbp.ll |
 | llvm/test/CodeGen/X86/bool-vector.ll |
 | llvm/test/CodeGen/X86/neg-abs.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll |
 | llvm/test/CodeGen/Mips/cconv/vector.ll |
 | llvm/test/CodeGen/Thumb2/srem-seteq-illegal-types.ll |
 | llvm/test/CodeGen/X86/pr32329.ll |
 | llvm/test/CodeGen/X86/mul-i256.ll |
 | llvm/test/CodeGen/ARM/umulo-128-legalisation-lowering.ll |
 | llvm/test/CodeGen/X86/sadd_sat.ll |
 | llvm/test/CodeGen/X86/i256-add.ll |
 | llvm/test/CodeGen/X86/i128-sdiv.ll |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse.ll |
 | llvm/test/CodeGen/X86/combine-sbb.ll |
 | llvm/test/CodeGen/PowerPC/urem-vector-lkk.ll |
 | llvm/test/CodeGen/X86/2007-10-12-SpillerUnfold1.ll |
 | llvm/test/CodeGen/Thumb2/mve-fptosi-sat-vector.ll |
 | llvm/test/CodeGen/X86/vector-gep.ll |
 | llvm/test/CodeGen/RISCV/stack-store-check.ll |
 | llvm/test/CodeGen/X86/hoist-and-by-const-from-shl-in-eqcmp-zero.ll |
 | llvm/test/CodeGen/AMDGPU/llvm.round.f64.ll |
 | llvm/test/CodeGen/X86/fshr.ll |
 | llvm/test/CodeGen/AMDGPU/shl.ll |
 | llvm/test/CodeGen/X86/mul-constant-i64.ll |
 | llvm/test/CodeGen/X86/vshift-6.ll |
 | llvm/test/CodeGen/X86/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll |
 | llvm/test/CodeGen/X86/stack-align-memcpy.ll |
 | llvm/test/CodeGen/X86/pr32284.ll |
 | llvm/test/CodeGen/X86/vector-shift-lshr-256.ll |
 | llvm/test/CodeGen/X86/sse2-intrinsics-fast-isel.ll |
 | llvm/test/CodeGen/X86/sshl_sat_vec.ll |
 | llvm/test/CodeGen/X86/horizontal-reduce-umax.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll |
 | llvm/test/CodeGen/X86/horizontal-reduce-smax.ll |
 | llvm/test/CodeGen/X86/pr32610.ll |
 | llvm/test/CodeGen/X86/overflow.ll |
Commit
962acf0a27fbdb945b7b790cc57ba4ae4729879f
by tlively[lld][WebAssembly] Use llvm-objdump to test __wasm_init_memory
Rather than depending on the hex dump from obj2yaml. Now the test shows the expected function body in a human readable format.
Differential Revision: https://reviews.llvm.org/D109730
|
 | lld/test/wasm/data-segments.ll |
Commit
299b5d420df15fafc9936bc24995f6cd6ad325be
by hoy[CSSPGO] Enable pseudo probe instrumentation in O0 mode.
Pseudo probe instrumentation was missing from O0 build. It is needed in cases where some source files are built in O0 while the others are built in optimize mode.
Reviewed By: wenlei, wlei, wmi
Differential Revision: https://reviews.llvm.org/D109531
|
 | llvm/lib/Passes/PassBuilder.cpp |
 | clang/test/CodeGen/pseudo-probe-emit.c |
Commit
54d755a034362814bd7a0b90f172cbba39729cf4
by Matthew.ArsenaultDAG: Fix incorrect folding of fmul -1 to fneg
The fmul is a canonicalizing operation, and fneg is not so this would break denormals that need flushing and also would not quiet signaling nans. Fold to fsub instead, which is also canonicalizing.
|
 | llvm/test/CodeGen/AMDGPU/fneg-combines.ll |
 | llvm/test/CodeGen/AArch64/arm64-fmadd.ll |
 | llvm/test/CodeGen/AArch64/fp16_intrinsic_scalar_3op.ll |
 | llvm/test/CodeGen/ARM/fnegs.ll |
 | llvm/test/CodeGen/PowerPC/combine-fneg.ll |
 | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp |
 | llvm/test/CodeGen/Hexagon/opt-fneg.ll |
Commit
d4e03bccd4567b455ce0bf03a797b5189b4dcba8
by listmailregen an autogened test which is stale
|
 | llvm/test/Transforms/LoopIdiom/basic.ll |
Commit
626586fc253c6f032aedb325dba6b1ff3f11875e
by thakisRe-Revert "clang-tidy: introduce readability-containter-data-pointer check"
This reverts commit 49992c04148e5327bef9bd2dff53a0d46004b4b4. The test is still failing on Windows, see comments on https://reviews.llvm.org/D108893
|
 | clang-tools-extra/test/clang-tidy/checkers/readability-container-data-pointer.cpp |
 | clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h |
 | clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp |
 | clang-tools-extra/docs/clang-tidy/checks/readability-data-pointer.rst |
 | clang-tools-extra/docs/ReleaseNotes.rst |
 | clang-tools-extra/clang-tidy/readability/CMakeLists.txt |
 | clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp |
Commit
10b069d1a09f3ef145ce468e790243015a7c84ec
by llvmgnsyncbot[gn build] Port 626586fc253c
|
 | llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn |
Commit
500d4c45ba7f31907a64dead8ddb292649e6ce75
by joker.eph[MLIR] Use memref.copy ops in BufferResultsToOutParams pass.
Both copy/alloc ops are using memref dialect after this change.
Reviewed By: silvas, mehdi_amini
Differential Revision: https://reviews.llvm.org/D109480
|
 | mlir/include/mlir/Transforms/Passes.td |
 | mlir/lib/Transforms/BufferResultsToOutParams.cpp |
 | mlir/lib/Transforms/PassDetail.h |
 | mlir/lib/Transforms/CMakeLists.txt |
 | mlir/test/Transforms/buffer-results-to-out-params.mlir |
Commit
a32300a68f6c94b7b275e3560ed31e9174cec5ad
by joker.ephMake the --mlir-disable-threading command line option overrides the C++ API usage
This seems in-line with the intent and how we build tools around it. Update the description for the flag accordingly. Also use an injected thread pool in MLIROptMain, now we will create threads up-front and reuse them across split buffers.
Differential Revision: https://reviews.llvm.org/D109802
|
 | mlir/lib/Support/MlirOptMain.cpp |
 | mlir/lib/IR/MLIRContext.cpp |
 | mlir/include/mlir/IR/MLIRContext.h |
Commit
0dc461441eed3b49b36bec889ddf1449b502d17a
by joker.ephRevert "[flang] Make 'this_image()' an intrinsic function"
This reverts commit 81f8ad1769665a569a235b749e0e9e69ce7dc65e. This seems to break the shared libs build (linaro-flang-aarch64-sharedlibs bot) with:
undefined reference to `Fortran::semantics::IsCoarray(Fortran::semantics::Symbol const&)
(from tools/flang/lib/Evaluate/CMakeFiles/obj.FortranEvaluate.dir/tools.cpp.o)
When linking lib/libFortranEvaluate.so.14git
|
 | flang/test/Semantics/call10.f90 |
 | flang/lib/Evaluate/tools.cpp |
 | flang/test/Semantics/this_image.f90 |
 | flang/lib/Evaluate/intrinsics.cpp |
 | flang/docs/Intrinsics.md |
 | flang/include/flang/Evaluate/tools.h |
Commit
0057c7185d1cdbcfdaa9385f4b67e677066af8b8
by hoy[CSSPGO][llvm-profgen] Truncate stack samples with invalid return address.
Invalid frame addresses exist in call stack samples due to bad unwinding. This could happen to frame-pointer-based unwinding and the callee functions that do not have the frame pointer chain set up. It isn't common when the program is built with the frame pointer omission disabled, but can still happen with third-party static libs built with frame pointer omitted.
Reviewed By: wenlei
Differential Revision: https://reviews.llvm.org/D109638
|
 | llvm/tools/llvm-profgen/ProfiledBinary.h |
 | llvm/test/tools/llvm-profgen/cs-invalid-ret-addr.test |
 | llvm/tools/llvm-profgen/PerfReader.h |
 | llvm/test/tools/llvm-profgen/Inputs/cs-invalid-ret-addr.perfscript |
 | llvm/tools/llvm-profgen/PerfReader.cpp |
Commit
945df8bc4cf3c72a9721431ec490e2f196be170e
by esme.yi[obj2yaml][XCOFF] Dump sections
Summary: This patch implements parsing sections for obj2yaml on AIX.
Reviewed By: jhenderson
Differential Revision: https://reviews.llvm.org/D98003
|
 | llvm/test/tools/obj2yaml/XCOFF/aix.yaml |
 | llvm/tools/obj2yaml/xcoff2yaml.cpp |
 | llvm/test/tools/obj2yaml/XCOFF/invalid-section.yaml |
 | llvm/test/tools/obj2yaml/XCOFF/invalid-symbol.yaml |
Commit
2c42a73d6c39af3833e697c0b306cb8cf8de5143
by sgueltonAdd extra check for llvm::Any::TypeId visibility
This check should ensure we don't reproduce the problem fixed by 02df443d2801601a4e42e360e436d97314e9da30
More accurately, it checks every llvm::Any::TypeId symbol in libLLVM-x.so and make sure they have weak linkage and are not local to the library, which would lead to duplicate definition if another weak version of the symbol is defined in another linked library.
Differential Revision: https://reviews.llvm.org/D109252
|
 | llvm/test/lit.cfg.py |
 | llvm/test/lit.site.cfg.py.in |
 | llvm/test/tools/llvm-shlib/typeids.test |
Commit
1ac209ed76cb233b672302b6171a4c76de3e56b2
by markus.lavin[NPM] Added -print-pipeline-passes print params for a few passes.
Added '-print-pipeline-passes' printing of parameters for those passes declared with *_WITH_PARAMS macro in PassRegistry.def.
Note that it only prints the parameters declared inside *_WITH_PARAMS as in a few cases there appear to be additional parameters not parsable.
The following passes are now covered (i.e. all of those with *_WITH_PARAMS in PassRegistry.def).
LoopExtractorPass - loop-extract HWAddressSanitizerPass - hwsan EarlyCSEPass - early-cse EntryExitInstrumenterPass - ee-instrument LowerMatrixIntrinsicsPass - lower-matrix-intrinsics LoopUnrollPass - loop-unroll AddressSanitizerPass - asan MemorySanitizerPass - msan SimplifyCFGPass - simplifycfg LoopVectorizePass - loop-vectorize MergedLoadStoreMotionPass - mldst-motion GVN - gvn StackLifetimePrinterPass - print<stack-lifetime> SimpleLoopUnswitchPass - simple-loop-unswitch
Differential Revision: https://reviews.llvm.org/D109310
|
 | llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp |
 | llvm/include/llvm/Transforms/Scalar/LowerMatrixIntrinsics.h |
 | llvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h |
 | llvm/lib/Transforms/Scalar/GVN.cpp |
 | llvm/include/llvm/Analysis/StackLifetime.h |
 | llvm/include/llvm/Transforms/Scalar/GVN.h |
 | llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp |
 | llvm/include/llvm/Transforms/Instrumentation/HWAddressSanitizer.h |
 | llvm/include/llvm/Transforms/IPO/LoopExtractor.h |
 | llvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h |
 | llvm/include/llvm/Transforms/Utils/EntryExitInstrumenter.h |
 | llvm/include/llvm/Transforms/Vectorize/LoopVectorize.h |
 | llvm/include/llvm/Transforms/Scalar/EarlyCSE.h |
 | llvm/lib/Transforms/Scalar/EarlyCSE.cpp |
 | llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp |
 | llvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h |
 | llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp |
 | llvm/include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h |
 | llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp |
 | llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp |
 | llvm/lib/Analysis/StackLifetime.cpp |
 | llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp |
 | llvm/lib/Transforms/IPO/LoopExtractor.cpp |
 | llvm/test/Other/new-pm-print-pipeline.ll |
 | llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp |
 | llvm/lib/Transforms/Vectorize/LoopVectorize.cpp |
 | llvm/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h |
Commit
5ec1845cad9e2bce4eff78b6c7d7c0fca8dfffba
by Amara Emerson[AArch64][GlobalISel] Add a new reassociation for G_PTR_ADDs.
G_PTR_ADD (G_PTR_ADD X, C), Y) -> (G_PTR_ADD (G_PTR_ADD(X, Y), C)
Improves CTMark -Os on AArch64:
Program before after diff sqlite3 286932 287024 0.0% kc 432512 432508 -0.0% SPASS 412788 412764 -0.0% pairlocalalign 249460 249416 -0.0% bullet 475740 475512 -0.0% 7zip-benchmark 568864 568356 -0.1% consumer-typeset 419088 418648 -0.1% tramp3d-v4 367628 367224 -0.1% clamscan 383184 382732 -0.1% lencod 430028 429284 -0.2% Geomean difference -0.1%
Differential Revision: https://reviews.llvm.org/D109528
|
 | llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp |
 | llvm/test/CodeGen/AArch64/GlobalISel/combine-ptradd-reassociation.mir |
 | llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll |
Commit
a543abc5ea65bc1a9fc322d41d40af3c5abb954d
by gysit[mlir][linalg] Update OpDSL doc (NFC).
Update the doc due to recent path changes an point to a helper script.
|
 | mlir/docs/Dialects/Linalg/OpDSL.md |
Commit
b10940edfc7d0eef4388202165295b665afb3e68
by zinenko[mlir] Update docs on conversion and translation to LLVM
Create a new document that explain both stages of the process in a single place, merge and deduplicate the content from the two previous documents. Also extend the documentation to account for the recent changes in pass structure due to standard dialect splitting and translation being more flexible.
Reviewed By: aartbik
Differential Revision: https://reviews.llvm.org/D109605
|
 | mlir/docs/ConversionToLLVMDialect.md |
 | mlir/docs/TargetLLVMIR.md |
 | mlir/docs/LLVMDialectMemRefConvention.md |
Commit
1f1c71aeacc1c4eab385c074714508b6e7121f73
by xiang1.zhang[X86][InlineAsm] Use mem size information (*word ptr) for "global variable + registers" memory expression in inline asm.
Differential Revision: https://reviews.llvm.org/D109739
|
 | clang/test/CodeGen/X86/ms_fmul.c |
 | llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp |
Commit
e90d55e1c9e76ade72933804d050b7ae8dbd674b
by flo[VPlan] Support sinking recipes with uniform users outside sink target.
This is a first step towards addressing the last remaining limitation of the VPlan version of sinkScalarOperands: the legacy version can partially sink operands. For example, if a GEP has uniform users outside the sink target block, then the legacy version will sink all scalar GEPs, other than the one for lane 0.
This patch works towards addressing this case in the VPlan version by detecting such cases and duplicating the sink candidate. All users outside of the sink target will be updated to use the uniform clone.
Note that this highlights an issue with VPValue naming. If we duplicate a replicate recipe, they will share the same underlying IR value and both VPValues will have the same name ir<%gep>.
Reviewed By: Ayal
Differential Revision: https://reviews.llvm.org/D104254
|
 | llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp |
 | llvm/test/Transforms/LoopVectorize/if-pred-stores.ll |
 | llvm/test/Transforms/LoopVectorize/float-induction.ll |
 | llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll |
 | llvm/test/Transforms/LoopVectorize/loop-form.ll |
Commit
934e2f695e18033fdf740ab45bb5b0dfdf453c19
by springerm[mlir][linalg] ComprehensiveBufferize: Do not copy InitTensorOp results
E.g.:
``` %2 = memref.alloc() {alignment = 128 : i64} : memref<256x256xf32> %3 = memref.alloc() {alignment = 128 : i64} : memref<256x256xf32>
// ... (%3 is not written to)
linalg.copy(%3, %2) : memref<256x256xf32>, memref<256x256xf32> vector.transfer_write %11, %2[%c0, %c0] {in_bounds = [true, true]} : vector<256x256xf32>, memref<256x256xf32> ```
Avoid copies of %3 if %3 came directly from an InitTensorOp.
Differential Revision: https://reviews.llvm.org/D109742
|
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp |
Commit
bddfbf91ed14ef5ace9dcfc33f624300442c5198
by david.green[LV] Min/max intrinsic reduction test cases.
|
 | llvm/test/Transforms/LoopVectorize/minmax_reduction.ll |
Commit
18655140d6226ce35ef9e80e93f01d3aa4f44c01
by cullen.rhodes[NVPTX] NFC: Remove unused imm type intrinsic arg
Identified in D109359.
Reviewed By: tra
Differential Revision: https://reviews.llvm.org/D109755
|
 | llvm/lib/Target/NVPTX/NVPTXIntrinsics.td |
Commit
3b9470a6c46d0ecdb586a5a1e9223ea0c832337c
by Justas.Janickas[OpenCL] Supports optional image types in C++ for OpenCL 2021
Adds support for a feature macro `__opencl_c_images` in C++ for OpenCL 2021 enabling a respective optional core feature from OpenCL 3.0.
This change aims to achieve compatibility between C++ for OpenCL 2021 and OpenCL 3.0.
Differential Revision: https://reviews.llvm.org/D109002
|
 | clang/test/SemaOpenCL/unsupported-image.cl |
 | clang/lib/Sema/SemaType.cpp |
Commit
533471ff2f82a5dd46ea59d5894ffe9b694c5ed9
by simon[MIPS] Remove unused tblgen template args. NFC
Identified in D109359.
|
 | llvm/lib/Target/Mips/MicroMips32r6InstrFormats.td |
 | llvm/lib/Target/Mips/MicroMipsInstrInfo.td |
 | llvm/lib/Target/Mips/MipsEVAInstrInfo.td |
 | llvm/lib/Target/Mips/MipsDSPInstrInfo.td |
 | llvm/lib/Target/Mips/Mips32r6InstrInfo.td |
 | llvm/lib/Target/Mips/MipsMSAInstrInfo.td |
 | llvm/lib/Target/Mips/MicroMips32r6InstrInfo.td |
 | llvm/lib/Target/Mips/MicroMipsDSPInstrInfo.td |
 | llvm/lib/Target/Mips/Mips16InstrInfo.td |
Commit
dcba99418438ec1d624ad207674234bd2e9e3394
by llvm-dev[X86] combineX86ShuffleChain - ensure we only peek through bitcasts to vectors (PR51858)
When searching for hidden identity shuffles (added at rG41146bfe82aecc79961c3de898cda02998172e4b), only peek through bitcasts to the source operand if it is a vector type as well.
|
 | llvm/test/CodeGen/X86/vector-reduce-mul.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
61cc873a8ef1f3c77114b5322cf1f9f551c74978
by david.green[LV] Recognize intrinsic min/max reductions
This extends the reduction logic in the vectorizer to handle intrinsic versions of min and max, both the floating point variants already created by instcombine under fastmath and the integer variants from D98152.
As a bonus this allows us to match a chain of min or max operations into a single reduction, similar to how add/mul/etc work.
Differential Revision: https://reviews.llvm.org/D109645
|
 | llvm/lib/Analysis/IVDescriptors.cpp |
 | llvm/include/llvm/Analysis/IVDescriptors.h |
 | llvm/test/Transforms/LoopVectorize/minmax_reduction.ll |
Commit
05c120823b6893c1384835d47656125cdd751550
by flo[DSE] Add capture-before test cases with loads.
Add a set of test cases where redundant stores may be removable, depending on whether a local allocation gets captured before performing a load.
|
 | llvm/test/Transforms/DeadStoreElimination/captures-before-load.ll |
Commit
a2332d5332c3ede49adf1c71481e9efab7ca88c7
by david.green[ARM] Prevent continuous folding of SUBC
Under some situations under Thumb1, we could be stuck in an infinite loop recombining the same instruction. This puts a limit on that, not combining SUBC with SUBE repeatedly.
|
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/test/CodeGen/ARM/select_const.ll |
Commit
e3889b30590a8d61eec42b08bbe3708322c15205
by nicolas.vasilache[mlir][Linalg] Replace DenseSet by UnionFind in ComprehensiveBufferize - NFC
AliasInfo can now use union-find for a much more efficient implementation. This brings no functional changes but large performance gains on more complex examples.
Differential Revision: https://reviews.llvm.org/D109819
|
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp |
Commit
660f281b5e755663b2d8ad061075eb5f5abdf9fb
by nicolas.vasilache[mlir][Linalg] Make codegen strategy late transformations opt-in
Summary: Making the late transformations opt-in results in less surprising behavior when composing multiple calls to the codegen strategy.
Reviewers:
Subscribers:
Differential revision: https://reviews.llvm.org/D109820
|
 | mlir/include/mlir/Dialect/Linalg/Transforms/CodegenStrategy.h |
 | mlir/test/lib/Dialect/Linalg/TestLinalgCodegenStrategy.cpp |
Commit
afc45ff06fac83209c631f2573789fde48b8b397
by thakis[gn build] (manually) port 2c42a73d6c39
|
 | llvm/utils/gn/secondary/llvm/test/BUILD.gn |
Commit
b33a43e57c8c4405cfa3d1a8fb187063d3857c34
by martin[ARM] Move fetching of ARMSubtarget into the scopes that need it. NFC.
This was requested in D38253, but missed back then.
Differential Revision: https://reviews.llvm.org/D109046
|
 | llvm/lib/Target/ARM/ARMAsmPrinter.cpp |
Commit
b4133a21cef49edb57cf96bb7d7518099d61e910
by martin[lldb] [Windows] Fix an incorrect assert in NativeRegisterContextWindows_arm
This codepath hadn't been exercised in a build with asserts before.
Differential Revision: https://reviews.llvm.org/D109778
|
 | lldb/source/Plugins/Process/Windows/Common/NativeRegisterContextWindows_arm.cpp |
Commit
0767e43d87453e76e418cabb2b96fdacd1a4981c
by llvm-dev[CostModel][X86] Adjust bitreverse/ctpop/ctlz/cttz AVX2+ costs based on llvm-mca reports
Based off the worse case numbers generated by D103695, the AVX2/512 bit reversing/counting costs were higher than necessary (based off instruction counts instead of actual throughput).
|
 | llvm/test/Analysis/CostModel/X86/ctlz.ll |
 | llvm/test/Transforms/SLPVectorizer/X86/cttz.ll |
 | llvm/test/Transforms/SLPVectorizer/X86/ctpop.ll |
 | llvm/test/Analysis/CostModel/X86/ctpop.ll |
 | llvm/lib/Target/X86/X86TargetTransformInfo.cpp |
 | llvm/test/Analysis/CostModel/X86/bitreverse.ll |
 | llvm/test/Transforms/SLPVectorizer/X86/ctlz.ll |
 | llvm/test/Analysis/CostModel/X86/cttz.ll |
Commit
be1028053e935524620de91a30035f1ff0a7f9aa
by spatel[PhaseOrdering] add tests for PR47023; NFC
|
 | llvm/test/Transforms/PhaseOrdering/X86/store-constant-merge.ll |
Commit
f5d89523567b08420ff3fa48a6fc50dbf530afa8
by spatel[InstCombine] Transform X == 0 ? 0 : X * Y --> X * freeze(Y)
Enabled mul folding optimization that was previously disabled by being incorrect. To preserve correctness, mul's operand that is not compared with zero in select's condition is now frozen.
Related bug: https://bugs.llvm.org/show_bug.cgi?id=51286
Correctness: https://alive2.llvm.org/ce/z/bHef7J https://alive2.llvm.org/ce/z/QcR7sf https://alive2.llvm.org/ce/z/vvBLzt https://alive2.llvm.org/ce/z/jGDXgq https://alive2.llvm.org/ce/z/3Pe8Z4 https://alive2.llvm.org/ce/z/LGga8M https://alive2.llvm.org/ce/z/CTG5fs
Differential Revision: https://reviews.llvm.org/D108408
|
 | llvm/test/Transforms/InstCombine/select.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp |
Commit
3c885190af219417a71e315e7c5999e67b783d03
by jrtc27[RISCV][compiler-rt] Add missing __riscv_save_1/0 labels for RV64
These got missed in D91717.
|
 | compiler-rt/lib/builtins/riscv/save.S |
Commit
bbca392a7f31bb76f024481292d900618988e780
by jrtc27[RISCV][compiler-rt] Move RV64 __riscv_restore_1/0 directives next to labels
This looks like it was copied from the RV32 version and not properly updated. This has no functional effect but is not good style.
|
 | compiler-rt/lib/builtins/riscv/restore.S |
Commit
274adcb866343cb505408d8f401840ea814522c8
by aaronImplement delimited escape sequences.
\x{XXXX} \u{XXXX} and \o{OOOO} are accepted in all languages mode in characters and string literals.
This is a feature proposed for both C++ (P2290R1) and C (N2785). The papers have been seen by both committees but are not yet adopted into either standard. However, they do have support from both committees.
|
 | clang/lib/Lex/LiteralSupport.cpp |
 | clang/lib/Lex/Lexer.cpp |
 | clang/include/clang/Basic/DiagnosticLexKinds.td |
 | clang/test/Parser/cxx11-user-defined-literals.cpp |
 | clang/test/Preprocessor/ucn-pp-identifier.c |
 | clang/test/Lexer/char-escapes-delimited.c |
 | clang/test/Sema/ucn-identifiers.c |
Commit
b8d83e83be0fd841f71bae07b664896aec88a5a7
by jrtc27[RISCV][compiler-rt] Fix an incorrect comment for RV64 __riscv_restore_12
This was presumably copied from the RV32 implementation and not updated like the rest.
|
 | compiler-rt/lib/builtins/riscv/restore.S |
Commit
1f3925e25ae010c30273501d24b2bd4e0318fe7a
by daltenty[clang][driver][AIX] Add system libc++ header paths to driver
This change adds the system libc++ header location to the driver. As well we define the `__LIBC_NO_CPP_MATH_OVERLOADS__` macro when using those headers, in order to suppress conflicting C++ overloads in the system libc headers that were used by XL C++.
Reviewed By: ZarkoCA
Differential Revision: https://reviews.llvm.org/D109078
|
 | clang/lib/Driver/ToolChains/AIX.h |
 | clang/lib/Driver/ToolChains/AIX.cpp |
 | clang/test/Driver/aix-toolchain-include.cpp |
 | clang/test/Driver/aix-ld.c |
Commit
1a3b3301d7aa9ab25a8bdf045c77298b087e3930
by mascasa[HWASan] Catch cases where libc populated jmp_buf.
Some setjmp calls within libc cannot be intercepted while their matching longjmp calls can be. This causes problems if our setjmp/longjmp interceptors don't use the exact same format as libc for populating and reading the jmp_buf.
We add a magic field to our jmp_buf and populate it in setjmp. This allows our longjmp interceptor to notice when a libc jmp_buf is passed to it.
See discussion on https://reviews.llvm.org/D109699 and https://reviews.llvm.org/D69045.
Fixes https://github.com/google/sanitizers/issues/1244.
Reviewed By: eugenis
Differential Revision: https://reviews.llvm.org/D109787
|
 | compiler-rt/lib/hwasan/hwasan_interceptors.cpp |
 | compiler-rt/lib/hwasan/hwasan.h |
Commit
446e11fa2943b1c82aaf588f0df4985259fe1be2
by a.bataev[SLP][NFC]Add a test for tiny tree with stores and with not same/alternate instructions.
|
 | llvm/test/Transforms/SLPVectorizer/X86/tiny-tree.ll |
Commit
6fe77b1051cc6e01dc1ac2d47f51802ab938e076
by nicolas.vasilache[mlir][Linalg] Fail comprehensive bufferization if a memref is returned.
Summary:
Reviewers:
Subscribers:
Differential revision: https://reviews.llvm.org/D109824
|
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp |
 | mlir/test/Dialect/Linalg/comprehensive-module-bufferize-invalid.mlir |
 | mlir/include/mlir/Dialect/Linalg/Passes.td |
 | mlir/test/Dialect/Linalg/comprehensive-module-bufferize.mlir |
Commit
c78ed20784ee7ffb60b0879197e34225325aafd0
by mkazantsev[Test] Add a test showing missing opportunities in branch deletion by indvars
|
 | llvm/test/Transforms/IndVarSimplify/outer_phi.ll |
Commit
0a07789fe93d8994163798ed6d14937412274dc2
by mascasa[HWASan] Add missing newlines.
|
 | compiler-rt/lib/hwasan/hwasan_interceptors.cpp |
Commit
9111635cb78e4a134364319e2728ff8dd69d36a8
by i[test] Fix asan/scudo -shared-libsan tests with -DLLVM_ENABLE_PER_TARGET_RUNTIME_DIR=on
On x86_64-unknown-linux-gnu, `-m32` tests set LD_LIBRARY_PATH to `config.compiler_rt_libdir` (`$build/lib/clang/14.0.0/lib/x86_64-unknown-linux-gnu`) instead of i386-unknown-linux-gnu, so `-shared-libsan` executables cannot find their runtime (e.g. `TestCases/replaceable_new_delete.cpp`).
Detect -m32 and -m64 in config.target_cflags, and adjust `config.compiler_rt_libdir`.
Reviewed By: vitalybuka
Differential Revision: https://reviews.llvm.org/D108859
|
 | compiler-rt/test/lit.common.cfg.py |
Commit
36ef65adc356699832f786f9fbd3244527e4b79d
by anna[InstCombine] Update test checks through autogeneration, add more tests. NFC
Updated check lines. Tests precommitted from D109700.
|
 | llvm/test/Transforms/InstCombine/sink_instruction.ll |
Commit
210d72e9d6b4a8e7633921d0bd7186fd3c7a2c8c
by mgorny[compiler-rt] Move -fno-omit-frame-pointer check to common config-ix
9ee64c374605683ae80b9641d5312a72c2a67336 has started using COMPILER_RT_HAS_OMIT_FRAME_POINTER_FLAG inside scudo. However, the relevant CMake check was performed in builtin-config-ix.cmake, so the definition was missing when builtins were not built. Move the check to config-ix.cmake, so that it runs unconditionally of the components being built.
Fixes PR#51847
Differential Revision: https://reviews.llvm.org/D109812
|
 | compiler-rt/cmake/builtin-config-ix.cmake |
 | compiler-rt/cmake/config-ix.cmake |
Commit
f9dbca68d48e705f6d45df8f58d6b2ee88bce76c
by i[CMake] Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR by default on Linux
This makes the default build closer to a -DLLVM_ENABLE_RUNTIMES=all build. The layout is arguably superior because different libraries of target triples are in different directories, similar to GCC/Debian multiarch.
When LLVM_DEFAULT_TARGET_TRIPLE is x86_64-unknown-linux-gnu, `lib/clang/14.0.0/lib/libclang_rt.asan-x86_64.a` is moved to `lib/clang/14.0.0/lib/x86_64-unknown-linux-gnu/libclang_rt.asan.a`.
In addition, if the host compiler supports -m32 (multilib), `lib/clang/14.0.0/lib/libclang_rt.asan-i386.a` is moved to `lib/clang/14.0.0/lib/i386-unknown-linux-gnu/libclang_rt.asan.a`.
Clang has been detecting both paths for lib/Driver/ToolChains/Gnu.cpp since 2018 (D50547).
---
Note: Darwin needs to be disabled. The hierarchy needs to be sorted out. The current -DLLVM_DEFAULT_TARGET_TRIPLE=off state is like: ``` lib/clang/14.0.0/lib/darwin/libclang_rt.profile_ios.a lib/clang/14.0.0/lib/darwin/libclang_rt.profile_iossim.a lib/clang/14.0.0/lib/darwin/libclang_rt.profile_osx.a ```
Windows needs to be disabled: https://reviews.llvm.org/D107799?id=368557#2963311
Differential Revision: https://reviews.llvm.org/D107799
|
 | llvm/CMakeLists.txt |
Commit
ab5f2b505a0751bce41f4cec9afa3c1541d485d0
by Yaxun.Liu[HIP] Diagnose -fopenmp-targets for HIP programs
Diagnose -fopenmp-targets for HIP programs since dual HIP and OpenMP offloading in the same compilation is currently not supported by HIP toolchain.
Reviewed by: Artem Belevich
Differential Revision: https://reviews.llvm.org/D109718
|
 | clang/include/clang/Basic/DiagnosticDriverKinds.td |
 | clang/test/Driver/hip-options.hip |
 | clang/lib/Driver/Driver.cpp |
Commit
f68939d3d91c3e1b57fba5450fa9146c3dcf5fdc
by uday[MLIR] Tighten type constraint on memref.global op def
Tighten the def of memref.global op to use the right kind of TypeAttr (of MemRefType).
Differential Revision: https://reviews.llvm.org/D109822
|
 | mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp |
 | mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td |
 | mlir/lib/Dialect/StandardOps/Transforms/TensorConstantBufferize.cpp |
Commit
258e27aae1354e0e82cf328fc55b1c7eea932290
by jonathan.l.peyton[OpenMP] Add support for GOMP depobj
GOMP depobjs are represented as a two intptr_t array. The first element is the base address of the dependency and the second element is the flag indicating the type the depobj represents.
Differential Revision: https://reviews.llvm.org/D108790
|
 | openmp/runtime/test/lit.site.cfg.in |
 | openmp/runtime/test/CMakeLists.txt |
 | openmp/runtime/src/kmp_gsupport.cpp |
 | openmp/runtime/test/lit.cfg |
 | openmp/runtime/test/tasking/omp50_taskdep_depobj.c |
Commit
13237c3b1ee0e1b4688e2099b5a458c99b5d93f0
by joker.ephAdd llvm_unreachable after fully covered switch (NFC)
This fixes a compiler warning for some version of GCC.
|
 | mlir/lib/Target/Cpp/TranslateToCpp.cpp |
Commit
b759381b7515fc60ae41b78f162bab38bafa6baa
by asbirlea[MemorySSA] Add verification levels to MemorySSA. [NFC]
Add two levels of verification for MemorySSA: Fast and Full. The defaults are kept the same. Full verification always occurs under EXPENSIVE_CHECKS, but now it can also be requested in a specific pass for debugging purposes.
|
 | llvm/lib/Analysis/MemorySSA.cpp |
 | llvm/include/llvm/Analysis/MemorySSA.h |
Commit
a92f11b682455b488ba66a006eaeb250373d989c
by listmailswitch a couple of SCEV tests to autogen for ease of update
|
 | llvm/test/Analysis/ScalarEvolution/range_nw_flag.ll |
 | llvm/test/Analysis/ScalarEvolution/nsw-offset.ll |
 | llvm/test/Analysis/ScalarEvolution/nsw-offset-assume.ll |
 | llvm/test/Analysis/ScalarEvolution/flags-from-poison.ll |
Commit
debbf8049d221966fd484c546fa2ddef11daec3c
by listmailautogen a test for ease of update
|
 | llvm/test/CodeGen/ARM/ParallelDSP/pr42729.ll |
Commit
96ec0ff2b7603d6778c5b06d096dc4d2084c1936
by nicolas.vasilache[mlir][Linalg] Revisit insertion points in comprehensive bufferization.
This revision fixes a corner case that could appear due to incorrect insertion point behavior in comprehensive bufferization.
Differential Revision: https://reviews.llvm.org/D109830
|
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp |
 | mlir/test/Dialect/Linalg/comprehensive-module-bufferize-analysis.mlir |
Commit
1b79efdc72e640fb7a70e5974d0e7352d72ce997
by marius.brehler[mlir] Fix printing of EmitC attrs/types with escape characters
Attributes and types were not escaped when printing.
Reviewed By: jpienaar, marbre
Differential Revision: https://reviews.llvm.org/D109143
|
 | mlir/lib/Dialect/EmitC/IR/EmitC.cpp |
 | mlir/test/Dialect/EmitC/attrs.mlir |
 | mlir/test/Target/Cpp/attrs.mlir |
 | mlir/test/Target/Cpp/types.mlir |
 | mlir/test/Dialect/EmitC/types.mlir |
Commit
9bdb19cca292f7a8335148e5c1b85f7e9120a1a5
by listmail[SCEV] (udiv X, Y) * Y is always NUW
Motivated by the removal done in D109782. This implements the correct flag part generically.
Differential Revision: https://reviews.llvm.org/D109786
|
 | llvm/test/Analysis/ScalarEvolution/max-be-count-not-constant.ll |
 | llvm/lib/Analysis/ScalarEvolution.cpp |
 | llvm/test/Analysis/ScalarEvolution/extract-highbits-variablemask.ll |
 | llvm/test/Analysis/ScalarEvolution/mul.ll |
Commit
e5a32d720ef2d8989442a533e1dd2d7e667155c1
by spatel[InstCombine] move extend after insertelement if both operands are extended
I was wondering how instcombine does on the examples in D109236, and we're missing a basic transform:
inselt (ext X), (ext Y), Index --> ext (inselt X, Y, Index)
https://alive2.llvm.org/ce/z/z2aBu9
Note that there are several possible extensions of this fold (see TODO comments).
Differential Revision: https://reviews.llvm.org/D109537
|
 | llvm/test/Transforms/InstCombine/insert-ext.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp |
Commit
385f380e806a10549d91466e7ca22121c866d287
by kazu[MemorySSA] Fix "set but not used" warnings
|
 | llvm/lib/Analysis/MemorySSA.cpp |
Commit
acaca56471a7c7b68591f1bc0214177c43fa05d6
by mascasa[HWASan] Test longjmp(jmpbuf, 0).
Our interceptor needs to change retval to 1 when 0 is passed.
Reviewed By: eugenis
Differential Revision: https://reviews.llvm.org/D109788
|
 | compiler-rt/test/hwasan/TestCases/longjmp-setjmp-interception.c |
Commit
248e430f37c8486e526147c5e6b8cbda1e633467
by listmailprecommit test for D109845/D106852
|
 | llvm/test/Analysis/ScalarEvolution/no-wrap-add-exprs.ll |
Commit
4ac4e52189aa6d80c3d59dc2c8f7dcc0cb7f9d58
by anna[InstCombine] Improve TryToSinkInstruction with multiple uses
This patch allows sinking an instruction which can have multiple uses in a single user. We were previously over-restrictive by looking for exactly one use, rather than one user.
Also, the API for retrieving undroppable user has been updated accordingly since in both usecases (Attributor and InstCombine), we seem to care about the user, rather than the use.
Reviewed-By: nikic
Differential Revision: https://reviews.llvm.org/D109700
|
 | llvm/test/Transforms/InstCombine/sink_instruction.ll |
 | llvm/lib/Transforms/InstCombine/InstructionCombining.cpp |
 | llvm/test/Transforms/InstCombine/icmp-mul-zext.ll |
 | llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp |
 | llvm/lib/IR/Value.cpp |
 | llvm/include/llvm/IR/Value.h |
Commit
40acc0adad59ac39e9a7a02fcd93161298500c00
by dblaikieImprove type printing of size-dependent const arrays to normalize array-of-const and const-array
Follow-on from 2bd84938470bf2e337801faafb8a67710f46429d based on postcommit feedback from Richard Smith.
The VariableArray case I couldn't figure out how to test/provoke - you can't write/form a variable array in any context other than a local variable that I know of, and in that case `const int x[n]` is the normalized form already (array-of-const) and you can't use typedefs (since you can't typedef int[n] with variable 'n') to force the const-array AST that would produce the undesirable type printing "int const [n]".
|
 | clang/test/AST/ast-dump-array.cpp |
 | clang/lib/AST/TypePrinter.cpp |
Commit
d249200fa7d540fb0b3ddc065575293e1da11107
by Saleem AbdulrasoolRevert "Re-Revert "clang-tidy: introduce readability-containter-data-pointer check""
This reverts commit 626586fc253c6f032aedb325dba6b1ff3f11875e.
Tweak the test for Windows. Windows defaults to delayed template parsing, which resulted in the main template definition not registering the test on Windows. Process the file with the additional `-fno-delayed-template-parsing` flag to change the default beahviour. Additionally, add an extra check for the fix it and use a more robust test to ensure that the value is always evaluated.
Differential Revision: https://reviews.llvm.org/D108893
|
 | clang-tools-extra/docs/clang-tidy/checks/readability-data-pointer.rst |
 | clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp |
 | clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp |
 | clang-tools-extra/docs/ReleaseNotes.rst |
 | clang-tools-extra/clang-tidy/readability/CMakeLists.txt |
 | clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h |
 | clang-tools-extra/test/clang-tidy/checkers/readability-container-data-pointer.cpp |
Commit
ae2a5facce96dfe1efcb7111ee1ef0d91c956276
by hansang.bae[OpenMP][libomptarget] Minor fix in x86_64 plugin
Call to remove() was passing invalid address for the file name.
Differential Revision: https://reviews.llvm.org/D109846
|
 | openmp/libomptarget/plugins/generic-elf-64bit/src/rtl.cpp |
Commit
8264846c0ef847adeacca9b8fe0f867a8a378c5e
by dblaikieSenticify some comments - post-commit review for e4b9f5e851d1fe0ba93cbb11b2ed4558602c379e
Based on feedback from Paul Robinson.
|
 | clang/lib/CodeGen/CGDebugInfo.cpp |
Commit
3273430406c186f1f2af597adeedf21d4fa52b18
by annaRe-add getSingleUndroppableUse API
The API was removed in 4ac4e52189aa in favor of getUniqueUndroppableUser. However, this caused a buildbot failure in AbstractCallSiteTest.cpp, which uses the API and the AbstractCallSite class requires a "use" rather than a user. Retain the API so that the unittest compiles and passes.
|
 | llvm/lib/IR/Value.cpp |
 | llvm/include/llvm/IR/Value.h |
Commit
1ac2d195ecb5d4c549c11b9c1df00179f5fea7ed
by rob.suderman[mlir][linalg] Add canonicalizers for depthwise conv
There are two main versions of depthwise conv depending whether the multiplier is 1 or not. In cases where m == 1 we should use the version without the multiplier channel as it can perform greater optimization.
Add lowering for the quantized/float versions to have a multiplier of one.
Reviewed By: antiagainst
Differential Revision: https://reviews.llvm.org/D108959
|
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/test/Dialect/Linalg/canonicalize.mlir |
Commit
f4382d4b0972ac31a2027610adfb9d4dc36caa2e
by Dan Liew[Compiler-RT] For arm64e test suites use the SDK version as the minimum deployment target.
Previously we used the minimum deployment target used for the platform (e.g. iOS is 9.0). Unfortunately this leads to ABI incompatibilities with arm64e devices running newer OSs. In particular the following TSan test cases that used libcxx would fail due to the ABI mismatch.
* Darwin/libcxx-shared-ptr-recursive.mm * Darwin/libcxx-shared-ptr-stress.mm * Darwin/libcxx-shared-ptr.mm * libcxx/std_shared_ptr.cpp
Given that arm64e is not ABI stable we should ideally match the deployment target for sanitizer runtimes and their tests cases to the device when building for arm64e. Unfortunately having a mixed deployment target (based on architecture) isn't currently supported by the build system and is non-trivial to implement.
As a stop-gap measure this patch changes the sanitizer test suites (but not the sanitizer runtimes themselves) to use a newer deployment target when targetting arm64e.
The deployment target used for arm64e is the SDK version because this "should" match the OS version running on the target device (it is a configuration error to not match them).
rdar://83080611
|
 | compiler-rt/cmake/config-ix.cmake |
Commit
cb8c30d35dc9eedca4b8073e96f06e9ce8f12192
by jpienaar[DRR] Explicit Return Types in Rewrites
Adds a new rewrite directive returnType that can be added at the end of an op's argument list to explicitly specify return types.
``` (OpX $v0, $v1, (returnType "$_builder.getI32Type()")) ```
Pass in a bound value to copy its return type, or pass a native code call to dynamically create new types.
``` (OpX $v0, $v1, (returnType $v0, (NativeCodeCall<"..."> $v1))) ```
Reviewed By: jpienaar
Differential Revision: https://reviews.llvm.org/D109472
|
 | mlir/include/mlir/IR/OpBase.td |
 | mlir/include/mlir/TableGen/Pattern.h |
 | mlir/tools/mlir-tblgen/RewriterGen.cpp |
 | mlir/test/mlir-tblgen/pattern.mlir |
 | mlir/lib/TableGen/Pattern.cpp |
 | mlir/test/lib/Dialect/Test/TestOps.td |
 | mlir/test/mlir-tblgen/rewriter-errors.td |
 | mlir/test/mlir-tblgen/rewriter-indexing.td |
Commit
87c00878d3ace60fe07cc2a9f8bd4566ab817d26
by Matthew.ArsenaultSplitKit: Remove decade old live interval hack
This was trying to fixup broken live intervals coming out of the coalescer. The verifier is more complete now and no tests seem to fail without this.
|
 | llvm/lib/CodeGen/RegAllocGreedy.cpp |
 | llvm/lib/CodeGen/SplitKit.cpp |
 | llvm/lib/CodeGen/SplitKit.h |
Commit
b6cb03e6b94d91a1757d41d4b0f139166ae15de0
by annaRevert use of getUniqueUndroppableUser in AssumeBundleBuilder
Fix build bot failure in rG4ac4e521 caused due to assumeBundleBuilder using new API (getUniqueUndroppableUser). We now continue using the existing API for AssumeBundleBuilder (getSingleUndroppableUser).
Sorry for the noise here.
Tests-Run: failing testcase passes.
|
 | llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp |
Commit
065bb08bb8934f1b3774f6a2f6a077fde67cf053
by dblaikieNFC: DWARFTypePrinter: Remove "type" from member function names to reduce redundancy
|
 | llvm/lib/DebugInfo/DWARF/DWARFDie.cpp |
Commit
8025c03f70ee9b92e8599519b5ee34b54c9a80da
by owenca[clang-format] Top-level unwrapped lines don't follow a left brace
Differential Revision: https://reviews.llvm.org/D109752
|
 | clang/lib/Format/UnwrappedLineParser.cpp |
Commit
f9e4aebe4a7a318869f57852359ad637f5c5a009
by annaRevert "[InstCombine] Improve TryToSinkInstruction with multiple uses"
This reverts commit 4ac4e52189aa6d80c3d59dc2c8f7dcc0cb7f9d58. There are couple of test failures, which needs update of the test cases.
Doing a clean revert and will recommit the change along with fixed testcases.
|
 | llvm/lib/IR/Value.cpp |
 | llvm/lib/Transforms/InstCombine/InstructionCombining.cpp |
 | llvm/test/Transforms/InstCombine/sink_instruction.ll |
 | llvm/test/Transforms/InstCombine/icmp-mul-zext.ll |
 | llvm/include/llvm/IR/Value.h |
Commit
68079ef0eb011c8349e5ae84b95216e5039dbc16
by resistorTeach SimplifyCFG to fold switches into lookup tables in more cases.
In particular, it couldn't handle cases where lookup table constant expressions involved bitcasts. This does not seem to come up frequently in C++, but comes up reasonably often in Rust via `#[derive(Debug)]`.
Originally reported by pcwalton.
Reviewed By: nikic
Differential Revision: https://reviews.llvm.org/D109565
|
 | llvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-gep.ll |
 | llvm/lib/Transforms/Utils/SimplifyCFG.cpp |
 | llvm/test/Transforms/SimplifyCFG/X86/switch-to-lookup-bitcast.ll |
Commit
658eb9e14264d48888ade0e3daf0b648f76c3f0e
by llvm-project[Polly] Remove autotools build systems from Externals. NFC.
Building a source distribution using autotools adds GPL-licenced files into the the sources. Although redistribution of theses files is explicitly allowed with an exception, these are not used by Polly which uses a CMake replacement. Use the direct source checkout instead (replacing the output of 'make dist').
Some m4 scripts with the same licence are also included in isl/ppcg repository. Removing them renders the autotools-based build scipts inoperable, so remove the autotools build system altogether.
|
 | polly/lib/External/isl/test-driver |
 | polly/lib/External/isl/testsets/pip/seghir-e3.pip |
 | polly/lib/External/ppcg/compile |
 | polly/lib/External/ppcg/config.sub |
 | polly/lib/External/isl/imath/tests/bigsqr.tc |
 | polly/lib/External/isl/imath/ChangeLog |
 | polly/lib/External/ppcg/configure |
 | polly/lib/External/isl/imath/tests/test.bc |
 | polly/lib/External/isl/imath/doc.md.in |
 | polly/lib/External/isl/imath/rsamath.c |
 | polly/lib/External/isl/imath/tests/linux/Dockerfile |
 | polly/lib/External/isl/imath/tests/div.tc |
 | polly/lib/External/isl/m4/ax_detect_gmp.m4 |
 | polly/lib/External/isl/m4/ax_detect_imath.m4 |
 | polly/lib/External/isl/imath/imtimer.c |
 | polly/lib/External/isl/imath/tests/qmul.tc |
 | polly/lib/External/isl/imath/tests/qdiv.tc |
 | polly/lib/External/isl/imath/tools/findthreshold.py |
 | polly/lib/External/isl/imath/tests/expt.tc |
 | polly/lib/External/isl/imath/tests/invmod.tc |
 | polly/lib/External/ppcg/ltmain.sh |
 | polly/lib/External/ppcg/m4/ltoptions.m4 |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/runtest |
 | polly/lib/External/isl/imath/tests/isprime.tc |
 | polly/lib/External/isl/imath/tests/qsub.tc |
 | polly/lib/External/isl/imath/examples/randprime.c |
 | polly/lib/External/ppcg/m4/lt~obsolete.m4 |
 | polly/lib/External/isl/m4/ax_prog_cc_for_build.m4 |
 | polly/lib/External/isl/include/isl/typed_cpp.h |
 | polly/lib/External/isl/configure.ac |
 | polly/lib/External/isl/m4/ax_gcc_warn_unused_result.m4 |
 | polly/lib/External/isl/testsets/pip/phideo.pip |
 | polly/lib/External/ppcg/aclocal.m4 |
 | polly/lib/External/ppcg/m4/ltsugar.m4 |
 | polly/lib/External/isl/imath/README.md |
 | polly/lib/External/ppcg/m4/ax_check_openmp.m4 |
 | polly/lib/External/ppcg/config.guess |
 | polly/lib/External/ppcg/m4/ax_submodule.m4 |
 | polly/lib/External/isl/testsets/pip/seghir-e7.pip |
 | polly/lib/External/isl/imath/tests/sqr.tc |
 | polly/lib/External/isl/depcomp |
 | polly/lib/External/isl/imath/tests/gcd.tc |
 | polly/lib/External/isl/m4/ax_compiler_vendor.m4 |
 | polly/lib/External/ppcg/configure.ac |
 | polly/lib/External/isl/imath/contrib/Makefile.msvc |
 | polly/lib/External/isl/interface/config.guess |
 | polly/lib/External/isl/m4/lt~obsolete.m4 |
 | polly/lib/External/isl/config.sub |
 | polly/lib/External/isl/Makefile.am |
 | polly/lib/External/isl/interface/depcomp |
 | polly/lib/External/ppcg/m4/libtool.m4 |
 | polly/lib/External/isl/interface/compile |
 | polly/lib/External/isl/testsets/pip/seghir-e6.pip |
 | polly/lib/External/isl/imath/tests/bug-swap.c |
 | polly/lib/External/ppcg/m4/ax_detect_git_head.m4 |
 | polly/lib/External/isl/imath/imtest.c |
 | polly/lib/External/isl/imath/tests/lcm.tc |
 | polly/lib/External/isl/imath/examples/pi.c |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/gmpapi.py |
 | polly/lib/External/isl/m4/ax_set_warning_flags.m4 |
 | polly/lib/External/isl/imath/tests/test.sh |
 | polly/lib/External/ppcg/missing |
 | polly/lib/External/isl/imath/tests/qadd.tc |
 | polly/lib/External/isl/testsets/pip/bouleti.pip |
 | polly/lib/External/isl/imath/tests/init.tc |
 | polly/lib/External/isl/interface/Makefile.in |
 | polly/lib/External/isl/m4/ax_c___attribute__.m4 |
 | polly/lib/External/isl/m4/ax_cc_maxopt.m4 |
 | polly/lib/External/isl/interface/aclocal.m4 |
 | polly/lib/External/isl/imath/tests/root.tc |
 | polly/lib/External/isl/.gitignore |
 | polly/lib/External/isl/imath/tests/qtodec.tc |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/README |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/gendata.py |
 | polly/lib/External/isl/imath/tests/pi1500-10.txt |
 | polly/lib/External/isl/imath/.gitattributes |
 | polly/lib/External/isl/imath/examples/input.c |
 | polly/lib/External/isl/ltmain.sh |
 | polly/lib/External/isl/m4/ax_cxx_compile_stdcxx_11.m4 |
 | polly/lib/External/isl/imath/examples/basecvt.c |
 | polly/lib/External/ppcg/m4/ax_check_opencl.m4 |
 | polly/lib/External/isl/imath/tools/mkdoc.py |
 | polly/lib/External/isl/imath/.dockerignore |
 | polly/lib/External/isl/imath/tests/qaddz.tc |
 | polly/lib/External/isl/m4/ax_check_compiler_flags.m4 |
 | polly/lib/External/isl/testsets/pip/seghir-e4.pip |
 | polly/lib/External/isl/m4/ax_prog_cxx_for_build.m4 |
 | polly/lib/External/isl/imath/examples/imcalc.c |
 | polly/lib/External/isl/m4/ltsugar.m4 |
 | polly/lib/External/isl/Makefile.in |
 | polly/lib/External/isl/imath/tests/qmisc.tc |
 | polly/lib/External/isl/imath/LICENSE |
 | polly/lib/External/isl/m4/ax_detect_clang.m4 |
 | polly/lib/External/isl/interface/isl.py |
 | polly/lib/External/isl/imath/tests/qdivz.tc |
 | polly/lib/External/ppcg/m4/ltversion.m4 |
 | polly/lib/External/isl/include/isl/cpp-checked-conversion.h |
 | polly/lib/External/isl/interface/install-sh |
 | polly/lib/External/isl/m4/ax_cxx_compile_stdcxx.m4 |
 | polly/lib/External/isl/testsets/pip/difficult.pip |
 | polly/lib/External/isl/imath/tests/pi1698-16.txt |
 | polly/lib/External/isl/m4/ax_create_stdint_h.m4 |
 | polly/lib/External/isl/testsets/pip/seghir-e5.pip |
 | polly/lib/External/isl/imath/imdrover.h |
 | polly/lib/External/isl/imath/tests/pi1024.txt |
 | polly/lib/External/isl/install-sh |
 | polly/lib/External/isl/imath/iprime.h |
 | polly/lib/External/isl/imath/tests/set.tc |
 | polly/lib/External/isl/imath/tests/qsubz.tc |
 | polly/lib/External/isl/imath/imdrover.c |
 | polly/lib/External/isl/interface/config.sub |
 | polly/lib/External/isl/testsets/pip/seghir-e9.pip |
 | polly/lib/External/isl/imath/tests/bintest.c |
 | polly/lib/External/isl/config.guess |
 | polly/lib/External/isl/missing |
 | polly/lib/External/ppcg/test-driver |
 | polly/lib/External/isl/configure |
 | polly/lib/External/isl/.gitmodules |
 | polly/lib/External/isl/compile |
 | polly/lib/External/isl/imath/tests/mod.tc |
 | polly/lib/External/isl/imath/tests/sub.tc |
 | polly/lib/External/isl/imath/examples/rsakey.c |
 | polly/lib/External/isl/interface/missing |
 | polly/lib/External/isl/imath/rsamath.h |
 | polly/lib/External/isl/py-compile |
 | polly/lib/External/isl/imath/doc.md |
 | polly/lib/External/isl/imath/iprime.c |
 | polly/lib/External/isl/isl_config.h.in |
 | polly/lib/External/isl/m4/ax_cxx_compile_stdcxx_11_no_override.m4 |
 | polly/lib/External/isl/m4/ltversion.m4 |
 | polly/lib/External/isl/imath/tests/bigmul.tc |
 | polly/lib/External/isl/testsets/pip/cnt_sum2.pip |
 | polly/lib/External/isl/imath/contrib/README |
 | polly/lib/External/isl/imath/examples/findprime.c |
 | polly/lib/External/isl/interface/Makefile.am |
 | polly/lib/External/isl/testsets/pip/seghir-e8.pip |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/gmp_custom_test.c |
 | polly/lib/External/isl/imath/tests/compare.tc |
 | polly/lib/External/ppcg/Makefile.in |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/runtest.py |
 | polly/lib/External/ppcg/install-sh |
 | polly/lib/External/isl/include/isl/cpp.h |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/imath_custom_test.c |
 | polly/lib/External/isl/imath/tests/emod.tc |
 | polly/lib/External/isl/imath/tests/conv.tc |
 | polly/lib/External/isl/testsets/pip/seghir-vd.pip |
 | polly/lib/External/ppcg/Makefile.am |
 | polly/lib/External/isl/include/isl/cpp-checked.h |
 | polly/lib/External/isl/m4/ltoptions.m4 |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/genpytest.py |
 | polly/lib/External/isl/aclocal.m4 |
 | polly/lib/External/isl/imath/tests/mul.tc |
 | polly/lib/External/isl/testsets/pip/jcomplex.pip |
 | polly/lib/External/isl/doc/Makefile.in |
 | polly/lib/External/isl/testsets/pip/seghir-e1.pip |
 | polly/lib/External/isl/m4/ax_detect_git_head.m4 |
 | polly/lib/External/isl/m4/libtool.m4 |
 | polly/lib/External/isl/interface/ltmain.sh |
 | polly/lib/External/isl/imath/.travis.yml |
 | polly/lib/External/isl/doc/interface |
 | polly/lib/External/isl/imath/Makefile |
 | polly/lib/External/isl/imath/tests/neg.tc |
 | polly/lib/External/isl/imath/examples/rounding.c |
 | polly/lib/External/isl/imath/tests/egcd.tc |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/.gitignore |
 | polly/lib/External/isl/imath/tests/imath-test.scm |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/Makefile |
 | polly/lib/External/ppcg/depcomp |
 | polly/lib/External/isl/imath/tests/rtest.c |
 | polly/lib/External/isl/imath/tests/add.tc |
 | polly/lib/External/isl/m4/ax_gcc_archflag.m4 |
 | polly/lib/External/isl/imath/tests/gmp-compat-test/genctest.py |
 | polly/lib/External/isl/imath/tests/emodv.tc |
 | polly/lib/External/isl/imath/tests/qmulz.tc |
 | polly/lib/External/isl/interface/configure |
 | polly/lib/External/isl/m4/ax_submodule.m4 |
 | polly/lib/External/isl/doc/Makefile.am |
 | polly/lib/External/isl/m4/ax_gcc_x86_cpuid.m4 |
 | polly/lib/External/update-isl.sh |
 | polly/lib/External/isl/interface/isl_config.h.in |
 | polly/lib/External/isl/m4/ax_create_pkgconfig_info.m4 |
Commit
c90cbb2d3455a6e1421cc7e703d2043a399ef7aa
by llvmgnsyncbot[gn build] Port d249200fa7d5
|
 | llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn |
Commit
c3ddc13d7d631a29b55f82c7cc7a9008bf89b1f4
by aeubanks[NFC] Split up PassBuilder.cpp
PassBuilder.cpp is the slowest file to compile in LLVM. When trying to test changes to pipelines, it takes a long time to recompile.
This doesn't actually speedup building PassBuilder.cpp itself since most of the time is spent in other large/duplicated functions caused by PassRegistry.def.
Reviewed By: asbirlea
Differential Revision: https://reviews.llvm.org/D109798
|
 | llvm/lib/Passes/CMakeLists.txt |
 | llvm/lib/Passes/OptimizationLevel.cpp |
 | llvm/lib/Passes/PassBuilder.cpp |
 | llvm/utils/gn/secondary/llvm/lib/Passes/BUILD.gn |
 | llvm/lib/Passes/PassBuilderPipelines.cpp |
Commit
5d78e33ce5eba5bdf2be0d261eb5c6dd3458ec78
by aeubanks[test] Move some llvm-extract tests into the proper directory
|
 | llvm/test/tools/llvm-extract/extract-alias.ll |
 | llvm/test/Other/extract-weak-odr.ll |
 | llvm/test/Other/extract-alias.ll |
 | llvm/test/Other/extract-linkonce.ll |
 | llvm/test/tools/llvm-extract/extract.ll |
 | llvm/test/tools/llvm-extract/extract-weak-odr.ll |
 | llvm/test/Other/extract.ll |
 | llvm/test/tools/llvm-extract/extract-linkonce.ll |
Commit
699da98739b0f88c27f75adbe8295c7e1dfd0188
by richardPR51874: Fix diagnostics for defaulted, implicitly deleted 'operator!='.
Don't say we couldn't find an 'operator<=>' when we were actually looking for an 'operator=='. Also fix a crash when attempting to diagnose if we select a built-in 'operator!=' in this lookup.
|
 | clang/include/clang/Basic/DiagnosticSemaKinds.td |
 | clang/test/CXX/class/class.compare/class.compare.secondary/p2.cpp |
 | clang/lib/Sema/SemaDeclCXX.cpp |
Commit
37a5a3ae5508a120a6eba113dbd0b23ab27d650e
by tejohnson[MemProf] Avoid global lock when updating MIB cache
Previously we used a global Allocator-scope mutex to lock when adding a deallocation to the MIB cache. This resulted in a lot of contention. Instead add and use per-set mutexes.
Along with this, we now need to remove the global miss and access count variables and instead utilize the per-set statistics to report the overall miss rate.
Differential Revision: https://reviews.llvm.org/D109853
|
 | compiler-rt/lib/memprof/memprof_allocator.cpp |
Commit
17589538aaef2b5ae27a0bfeb4346aff433aa59d
by tedwood[lldb-vscode] Fix focus thread when previous thread exits
The thread that Visual Studio Code displays on a stop is called the focus thread. When the previous focus thread exits and we stop in a new thread, lldb-vscode does not tell vscode to set the new thread as the focus thread, so it selects the first thread in the thread list.
This patch changes lldb-vscode to tell vscode that the new thread is the focus thread. It also includes a test that verifies the DAP stop message for this case contains the correct values.
Reviewed By: clayborg, wallace
Differential Revision: https://reviews.llvm.org/D109633
|
 | lldb/test/API/tools/lldb-vscode/correct-thread/Makefile |
 | lldb/test/API/tools/lldb-vscode/correct-thread/TestVSCode_correct_thread.py |
 | lldb/test/API/tools/lldb-vscode/correct-thread/main.c |
 | lldb/tools/lldb-vscode/lldb-vscode.cpp |
Commit
242524741f3582d93e4fac8052d0bfc40f4c1ac4
by tejohnson[MemProf] Fix format warnings
Fix the warnings that show up with -Wformat in this file.
|
 | compiler-rt/lib/memprof/memprof_allocator.cpp |
Commit
94a2f9cdb6f9ef9843057030159ee69f76722121
by Ahmed Bougacha[GlobalISel] Fix CombinerHelper::isPredecessor for same def/use MI.
The doc comment for isPredecessor says: Returns true if \p DefMI precedes \p UseMI or they are the same instruction. And dominates relies on that behavior for its own: Returns true if \p DefMI dominates \p UseMI. By definition an instruction dominates itself.
Make both statements correct by fixing isPredecessor. Found by inspection.
|
 | llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp |
Commit
e159d3cbfc250115d1244f3a6219436a52f90f86
by Ahmed Bougacha[AArch64][GlobalISel] Use MI::getIntrinsicID in more spots. NFC.
There's technically a difference in the logic used by these findIntrinsicID and MachineInstr::getIntrinsicID, but it shouldn't be a meaningful difference here, with G_INTRINSIC instructions. getIntrinsicID's "first non-def" logic should be correct for those.
|
 | llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp |
 | llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp |
Commit
c8b3d7d6d6de37af68b2f379d0e37304f78e115f
by Jessica Paquette[AArch64][GlobalISel] Ensure atomic loads always get assigned GPR destinations
The default register bank selection code for G_LOAD assumes that we ought to use a FPR when the load is casted to a float/double.
For atomics, this isn't true; we should always use GPRs.
Without this patch, we crash in the following example:
https://godbolt.org/z/MThjas441
Also make the code a little more stylistically consistent while we're here.
Also test some other weird cast combinations as well.
Differential Revision: https://reviews.llvm.org/D109771
|
 | llvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic.ll |
 | llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp |
Commit
24c8eaec9467b2aaf70b0db33a4e4dd415139a50
by kazu[Transforms] Use make_early_inc_range (NFC)
|
 | llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp |
 | llvm/lib/Transforms/Coroutines/CoroCleanup.cpp |
 | llvm/lib/Transforms/Coroutines/CoroEarly.cpp |
 | llvm/lib/Transforms/Coroutines/CoroSplit.cpp |
 | llvm/lib/Transforms/Utils/SimplifyCFG.cpp |
 | llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp |
 | llvm/lib/Transforms/Utils/LowerSwitch.cpp |
 | llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp |
 | llvm/lib/Transforms/Vectorize/LoopVectorize.cpp |
 | llvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp |
 | llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp |
 | llvm/lib/Transforms/InstCombine/InstructionCombining.cpp |
Commit
b1d44e59020a2a7adfc81bffb07577fd091d0778
by ajcbik[mlir][sparse] add affine subscripts to sparse compilation pass
This enables the sparsification of more kernels, such as convolutions where there is a x(i+j) subscript. It also enables more tensor invariants such as x(1) or other affine subscripts such as x(i+1). Currently, we reject sparsity altogether for such tensors. Despite this restriction, however, we can already handle a lot more kernels with compound subscripts for dense access (viz. convolution with dense input and sparse filter). Some unit tests and an integration test demonstrate new capability.
Reviewed By: bixia
Differential Revision: https://reviews.llvm.org/D109783
|
 | mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_filter_conv2d.mlir |
 | mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp |
 | mlir/test/Dialect/SparseTensor/sparse_affine.mlir |
Commit
03c8b24ace911912892f225cce16498b6f71bf3f
by iDelete unused GlobalIndirectSymbol::getBaseObject overloads
|
 | llvm/include/llvm/IR/GlobalIndirectSymbol.h |
Commit
a01f772d19d53976a6d6e0eed684440e4f2cc9da
by Lang Hames[ORC] Add MethodWrapperHandler utility for WrapperFunction.
MethodWrapperHandler removes some of the boilerplate when writing wrapper functions to wrap method calls. It can be used as a handler for wrapper functions whose first argument is an ExecutorAddress: the address is cast to a pointer of the given class type, then the given method function pointer is called on that object pointer (passing the rest of the arguments).
E.g.
class MyClass { public: void myMethod(uint32_t, bool) { ... } };
// SPS Method signature for myMethod -- note MyClass object address as first // argument. using SPSMyMethodWrapperSignature = SPSTuple<SPSExecutorAddress, uint32_t, bool>;
// Wrapper function for myMethod. WrapperFunctionResult myMethodCallWrapper(const char *ArgData, size_t ArgSize) { return WrapperFunction<SPSMyMethodWrapperSignature>::handle( ArgData, ArgSize, makeMethodWrapperHandler(&MyClass::myMethod)); }
|
 | llvm/include/llvm/ExecutionEngine/Orc/Shared/WrapperFunctionUtils.h |
 | llvm/unittests/ExecutionEngine/Orc/WrapperFunctionUtilsTest.cpp |
Commit
a5b72abc9eaadbd319f0fbb8ae947d2dd289b30a
by AlokKumar.Sharma[DebugInfo] Enhance DIImportedEntity to accept children entities
New field `elements` is added to '!DIImportedEntity', representing list of aliased entities. This is needed to dump optimized debugging information where all names in a module are imported, but a few names are imported with overriding aliases.
Reviewed By: dblaikie
Differential Revision: https://reviews.llvm.org/D109343
|
 | llvm/unittests/IR/MetadataTest.cpp |
 | llvm/lib/IR/AsmWriter.cpp |
 | llvm/test/DebugInfo/X86/dwarfdump-DIImportedEntity_elements.ll |
 | llvm/tools/llvm-c-test/debuginfo.c |
 | llvm/lib/IR/DebugInfoMetadata.cpp |
 | llvm/lib/AsmParser/LLParser.cpp |
 | llvm/lib/IR/DIBuilder.cpp |
 | llvm/include/llvm/IR/DIBuilder.h |
 | llvm/include/llvm-c/DebugInfo.h |
 | llvm/lib/Bitcode/Writer/BitcodeWriter.cpp |
 | llvm/test/Bitcode/DIImportedEntity_backward.ll.bc |
 | llvm/include/llvm/IR/DebugInfoMetadata.h |
 | llvm/lib/IR/LLVMContextImpl.h |
 | llvm/unittests/IR/IRBuilderTest.cpp |
 | llvm/test/Bitcode/DIImportedEntity_elements.ll |
 | llvm/lib/Bitcode/Reader/MetadataLoader.cpp |
 | llvm/docs/LangRef.rst |
 | llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp |
 | llvm/lib/IR/DebugInfo.cpp |
 | llvm/test/Bitcode/DIImportedEntity_backward.ll |
Commit
8f2db36b01c043570e36a85c45b87c6df402d3ee
by gysit[mlir][OpDSL] Update op definitions to make shapes more concise (NFC).
Express the input shape definitions of convolution and pooling operations in terms of the output shapes, filter shapes, strides, and dilations.
Reviewed By: shabalin, rsuderman, stellaraccident
Differential Revision: https://reviews.llvm.org/D109815
|
 | mlir/python/mlir/dialects/linalg/opdsl/ops/core_named_ops.py |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml |
Commit
7acf92943b78611e1194687de37eebf83ba97430
by andrzej.warzynski[flang][driver] Add documentation for Plugins
Adding documentation covering the Frontend Driver Plugins
Reviewed By: awarzynski, kiranchandramohan
Differential Revision: https://reviews.llvm.org/D108283
|
 | flang/docs/FlangDriver.md |
Commit
e06767fdcbe3215773c53166b25e2bf24110119f
by david.green[AArch64] Regenerate some test checks. NFC
This regenerates some of the tests that had very-close-to-updated check line already, in order to make them more maintainable.
|
 | llvm/test/CodeGen/AArch64/sve-split-fp-reduce.ll |
 | llvm/test/CodeGen/AArch64/fdiv_combine.ll |
 | llvm/test/CodeGen/AArch64/i128_volatile_load_store.ll |
Commit
c98a8a09b5eb04882dddd02346e5c3b4c90f038c
by sam.parker[HardwareLoops] Loop guard intrinsic to recognise zext
If a loop count was initially represented by a 32b unsigned int in C then the hardware-loop pass can recognise the loop guard and insert the llvm.test.set.loop.iterations intrinsic. If this was instead a unsigned short/char then clang inserts a zext instruction to expand the loop count to an i32. This patch adds the necessary pattern matching to enable the use of lvm.test.set.loop.iterations in those cases.
Patch by: sherwin-dc
Differential Revision: https://reviews.llvm.org/D109631
|
 | llvm/test/Transforms/HardwareLoops/loop-guards.ll |
 | llvm/lib/CodeGen/HardwareLoops.cpp |
Commit
128a49727a4565617fab3d72e2fe2fe2d8f87ff6
by jay.foad[AMDGPU] Fix upcoming TableGen warnings on unused template arguments. NFC.
The warning is implemented by D109359 which is still in review.
Differential Revision: https://reviews.llvm.org/D109826
|
 | llvm/lib/Target/AMDGPU/VOP2Instructions.td |
 | llvm/lib/Target/AMDGPU/VOP3PInstructions.td |
 | llvm/lib/Target/AMDGPU/EvergreenInstructions.td |
 | llvm/lib/Target/AMDGPU/BUFInstructions.td |
 | llvm/lib/Target/AMDGPU/SIRegisterInfo.td |
 | llvm/lib/Target/AMDGPU/SOPInstructions.td |
 | llvm/lib/Target/AMDGPU/VOPInstructions.td |
 | llvm/lib/Target/AMDGPU/FLATInstructions.td |
 | llvm/lib/Target/AMDGPU/VOP3Instructions.td |
 | llvm/lib/Target/AMDGPU/R600Instructions.td |
 | llvm/lib/Target/AMDGPU/SIInstrInfo.td |
Commit
a4e437e3c959ac0cb2edb733d081edc95a4fff22
by sjoerd.meijer[FuncSpec] Add a test for specialising on a non-constant global argument. NFC.
|
 | llvm/test/Transforms/FunctionSpecialization/function-specialization-nonconst-glob.ll |
Commit
66249323d25f6db1dc76bd9fb3b9eebe436519a6
by mgorny[lldb] [gdb-remote] Try using <architecture/> for remote arch unconditionally
Try determining the process architecture from <architecture/> tag unconditionally, rather than for very specific cases. Generic gdbserver implementations do not support LLDB-specific packets used to determine the process architecture, therefore this fallback is necessary to support architecture-specific behavior on these targets. Rather than maintaining a mapping of all known architectures, just try mapping the GDB values into triplets, as that is going to work most of the time.
This change is confirmed to fix LLDB against gdbserver when debugging i386 and aarch64 executables.
Differential Revision: https://reviews.llvm.org/D109272
|
 | lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp |
 | lldb/test/API/functionalities/gdb_remote_client/basic_eh_frame-i386.yaml |
 | lldb/test/API/functionalities/gdb_remote_client/TestGDBServerTargetXML.py |
Commit
c208deb9008260d3effc00c98493434a65af4b8d
by mgorny[lldb] [ABI/AArch64] Recognize special regs by their xN names too
Recognize lr/sp/fp by their numeric register names in the ABI plugin. This is necessary to mark them appropriately when interfacing with gdbserver.
Differential Revision: https://reviews.llvm.org/D109691
|
 | lldb/source/Plugins/ABI/AArch64/ABIAArch64.cpp |
 | lldb/test/API/functionalities/gdb_remote_client/TestGDBServerTargetXML.py |
Commit
8371a4c9d55997fdc45effbfa5d38d1f19ae3473
by anton.a.afanasyev[Test][AggressiveInstCombine] Add test for truncation of vector instructions
Precommit test for D109236
|
 | llvm/test/Transforms/AggressiveInstCombine/trunc_vector_instrs.ll |
Commit
6a5f49a1acf861357b9ccb8495e4416878a2a7ad
by anton.a.afanasyev[AggressiveInstCombine] Add `{insert/extract}element` to `TruncInstCombine` DAG
Alive2 for `{insert/extract}element`: https://alive2.llvm.org/ce/z/hwy_E-
Actually, no one file of test suite is touched by this change, which means that is rare pattern not generated by frontend. But it's worth being in place.
Differential Revision: https://reviews.llvm.org/D109236
|
 | llvm/lib/Transforms/AggressiveInstCombine/TruncInstCombine.cpp |
 | llvm/test/Transforms/AggressiveInstCombine/trunc_vector_instrs.ll |
Commit
9c4a1686d7c487fff8e63fa67e64623eea8986d5
by kadircet[clangd] Fix clangd crash when including a header
Fixes https://github.com/clangd/clangd/issues/819
SourceLocation of macros change when a header file is included above it. This is not checked when creating a PreamblePatch, resulting in reusing previously built preamble with an incorrect source location for the macro in the example test case. This patch stores the SourceLocation in the struct TextualPPDirective so that it gets checked when comparing old vs new preambles.
Also creates a preamble patch for code completion parsing so that clangd does not crash when following the example test case with a large file.
Reviewed By: kadircet
Differential Revision: https://reviews.llvm.org/D108045
|
 | clang-tools-extra/clangd/CodeComplete.cpp |
 | clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp |
 | clang-tools-extra/clangd/unittests/PreambleTests.cpp |
 | clang-tools-extra/clangd/Preamble.cpp |
 | clang-tools-extra/clangd/Preamble.h |
 | clang-tools-extra/clangd/ParsedAST.cpp |
Commit
ceded4153245322c45d28068860fb3d8d0a4884d
by Jason MolendaDon't set executable file in ObjectFileMachO::LoadCoreFileImages
When the corefile reader is adding binaries from the "all image infos" LC_NOTE in a Mach-O corefile, it would detect if the binary being added was an executable binary and set it as the Target's executable binary. This has the side effect of clearing the Target's image list, so if the executable was in the middle of the all image infos, the initial images would be dropped. There's no need to set the executable binary in the Target for these corefile processes, so instead of doing multiple passes over the list to find the executable, I'm dropping that.
|
 | lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp |
Commit
e4da0f9657b475f62b68a7e7e6cc06855e2f4985
by mkazantsev[Test] Add test showing missing opportunity in range inference for SCEV
|
 | llvm/test/Analysis/ScalarEvolution/outer_phi.ll |
Commit
d2e66d7fa46b14a749ff8686ecccf66292b7bc6b
by konstantin.schwarz[GlobalISel] Add a combine for and(load , mask) -> zextload
This only handles simple masks, not shifted masks, for now.
Reviewed By: aemerson
Differential Revision: https://reviews.llvm.org/D109357
|
 | llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.96.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizercombiner-and.mir |
 | llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll |
 | llvm/include/llvm/Target/GlobalISel/Combine.td |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.128.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizercombiner-load-and-mask.mir |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll |
 | llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-load-and-mask.mir |
 | llvm/test/CodeGen/AMDGPU/ctlz.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll |
 | llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll |
 | llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll |
 | llvm/test/CodeGen/AMDGPU/ds-alignment.ll |
Commit
85f2ae57f713cec55f26b40efb82c4ee8845c27a
by sgueltonBe more flexible on the storage type allowed for llvm::Any::TypeId::Id
This is a follow-up to 2c42a73d6c39af3833e697c0b306cb8cf8de5143.
|
 | llvm/test/tools/llvm-shlib/typeids.test |
Commit
bd590a5f895f50ceb7669de1b4a69bbcc8adb38b
by pavel[lldb] Make Platform::DebugProcess take a Target reference
instead of a pointer. There are just two callers of this function, and both of them have a valid target pointer, so there's no need for all implementations to concern themselves with whether the pointer is null.
|
 | lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.h |
 | lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp |
 | lldb/source/Plugins/Platform/Windows/PlatformWindows.h |
 | lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h |
 | lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp |
 | lldb/source/Target/Target.cpp |
 | lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp |
 | lldb/source/Commands/CommandObjectPlatform.cpp |
 | lldb/source/Target/Platform.cpp |
 | lldb/include/lldb/Target/Platform.h |
 | lldb/source/Plugins/Platform/MacOSX/PlatformAppleSimulator.h |
 | lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp |
 | lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h |
 | lldb/source/Plugins/Platform/MacOSX/PlatformAppleSimulator.cpp |
Commit
96ec9b6ff2f0bb9078306e3857f09974603ccbe4
by gabor.marton[Analyzer] ConversionChecker: track back the cast expression
Adding trackExpressionValue to the checker so it tracks the value of the implicit cast's DeclRefExpression up to initialization/assignment. This way the report becomes cleaner.
Differential Revision: https://reviews.llvm.org/D109836
|
 | clang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp |
 | clang/test/Analysis/conversion-tracking-notes.c |
 | clang/test/Analysis/conversion.c |
Commit
86a58f10284dea118703ecde0ef5b9a4f6e4d8be
by mgorny[lldb] [DynamicRegisterInfo] Pass name/alt_name via RegisterInfo
Remove the name and alt_name parameters from AddRegister() and instead pass them via RegisterInfo.name and .alt_name fields. This makes the API simpler and removes some duplication.
Differential Revision: https://reviews.llvm.org/D109872
|
 | lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.h |
 | lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp |
 | lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp |
 | lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp |
Commit
005fc11ebdd6e1af29efee3d7c5da86f56138414
by thomasp[PGO] Change ThinLTO test for targets with loop unrolling disabled
I am working on a target in a downstream LLVM repo, and it seems that if a target backend chooses to disable loop unrolling this test would fail. A solution would be to modify the test to search for a different string instead.
The specific test checks for `if.true.direct_targ` which appears in the output when thinlto is not used (ie samplepgo). The same is true for `if.false.orig_indirect`.
However, if a target disables loop unrolling in the backend, the test fails as `if.true.direct_targ` no longer appears, though `if.false.orig_indirect` still does. This can be seen by using a clang pragma to disable loop unrolling in the `unroll()` function.
For reference, the following files are the outputs of the last 2 test functions being compiled as the test case does, with and without thinlto, and with and without loop unrolling on the latest x86 clang build. The loop unrolling pragma was used to simulate the loop unrolling being disabled in a backend. ``` // RUN: %clang_cc1 -O2 -fprofile-sample-use=%S/Inputs/pgo-sample-thinlto-summary.prof %s -emit-llvm -o out.ll // RUN: %clang_cc1 -O2 -fprofile-sample-use=%S/Inputs/pgo-sample-thinlto-summary.prof %s -emit-llvm -flto=thin -o out.ll ```
Reviewed By: tejohnson
Differential Revision: https://reviews.llvm.org/D109234
|
 | clang/test/CodeGen/pgo-sample-thinlto-summary.c |
Commit
1ef62cb20028fb7b75c65badcafec8c4703cbda3
by llvm-dev[X86] SimplifyDemandedVectorEltsForTargetNode - add PSADBW handling
Peek through PSADBW operands to handle non demanded elements.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/sad.ll |
 | llvm/test/CodeGen/X86/psadbw.ll |
 | llvm/test/CodeGen/X86/sad_variations.ll |
Commit
47d57547f43c6cf9404268b8a4c2f75c402615c2
by mgorny[lldb] [Process/gdb-remote] Alias sp to x31 on AArch64 for gdbserver
Alias the "sp" register to "x31" on AArch64 if one is present and does not have the alt_name. This is the case when connecting to gdbserver.
Differential Revision: https://reviews.llvm.org/D109695
|
 | lldb/source/Plugins/ABI/AArch64/ABIAArch64.h |
 | lldb/test/API/functionalities/gdb_remote_client/TestGDBServerTargetXML.py |
 | lldb/source/Plugins/ABI/AArch64/ABIAArch64.cpp |
Commit
17f1ccc7590872a4fba6b2194f5fa1203b893ba4
by cullen.rhodes[AArch64][SVE] NFC: Remove unnecessary if
|
 | llvm/lib/Target/AArch64/AArch64ISelLowering.cpp |
Commit
99ece01a0f571f0df129a55bf679f7fbd0b01b75
by thakis[lldb/win] Fix TestIRMemoryMapWindows.test when running tests in git bash
lit.util.which('link') picks up the wrong link.exe in git bash, leading to this error:
# command stderr: /usr/bin/link: extra operand '/LIBPATH:C:\\Progra....' Try '/usr/bin/link --help' for more information.
Instead, assume that link.exe is next to cl.exe.
Differential Revision: https://reviews.llvm.org/D109832
|
 | lldb/test/Shell/helper/toolchain.py |
Commit
951f362e2560fe1c9c05f487107fd9882d45d867
by thakis[clang-cl] Add a /diasdkdir flag and make /winsysroot imply it
D109708 added "DIA SDK" to our win sysroot for hermetic builds that use LLVM_ENABLE_DIA_SDK. But the build system still has to manually pass flags pointing to it.
Since we have a /winsysroot flag, make it look at DIA SDK in the sysroot.
With this, the following is enough to compile the DIA2Dump example:
out\gn\bin\clang-cl ^ "sysroot\DIA SDK\Samples\DIA2Dump\DIA2Dump.cpp" ^ "sysroot\DIA SDK\Samples\DIA2Dump\PrintSymbol.cpp" ^ "sysroot\DIA SDK\Samples\DIA2Dump\regs.cpp" ^ /diasdkdir "sysroot\DIA SDK" ^ ole32.lib oleaut32.lib diaguids.lib
Differential Revision: https://reviews.llvm.org/D109828
|
 | clang/include/clang/Driver/Options.td |
 | clang/lib/Driver/ToolChains/MSVC.cpp |
 | clang/test/Driver/cl-sysroot.cpp |
Commit
054e331d9dbd3ce98b19625b75ba38dd9ebc34cc
by Justas.Janickas[OpenCL] Supports optional program scope global variables in C++ for OpenCL 2021
Adds support for macro `__opencl_c_program_scope_global_variables` in C++ for OpenCL 2021 enabling a respective optional core feature from OpenCL 3.0.
This change aims to achieve compatibility between C++ for OpenCL 2021 and OpenCL 3.0.
Differential Revision: https://reviews.llvm.org/D109305
|
 | clang/include/clang/Basic/OpenCLOptions.h |
 | clang/test/SemaOpenCL/storageclass.cl |
Commit
61f25daa8d1b69dd5138facd5d57a8e3dfa0c5cc
by alexandros.lamprineas[ARM][CMSE] Clear the secure fp-registers when using softfp abi.
When expanding the non-secure call instruction we are emiting code to clear the secure floating-point registers only if the targeted architecture has floating-point support. The potential problem is when the source code containing non-secure calls are built with -mfloat-abi=soft but some other part of the system has been built with -mfloat-abi=softfp (soft and softfp are compatible as they use the same procedure calling standard). In this case floating-point registers could leak to non-secure state as the non-secure won't have cleared them assuming no floating point has been used.
Differential Revision: https://reviews.llvm.org/D109153
|
 | llvm/test/CodeGen/ARM/cmse-clear.ll |
 | llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp |
 | llvm/test/CodeGen/ARM/cmse.ll |
Commit
1bd5ea968e9262a09512a64bca1624818640bc5b
by alexandros.lamprineas[ARM] Mitigate the cve-2021-35465 security vulnurability.
Recently a vulnerability issue is found in the implementation of VLLDM instruction in the Arm Cortex-M33, Cortex-M35P and Cortex-M55. If the VLLDM instruction is abandoned due to an exception when it is partially completed, it is possible for subsequent non-secure handler to access and modify the partial restored register values. This vulnerability is identified as CVE-2021-35465.
The mitigation sequence varies between v8-m and v8.1-m as follows:
v8-m.main --------- mrs r5, control tst r5, #8 /* CONTROL_S.SFPA */ it ne .inst.w 0xeeb00a40 /* vmovne s0, s0 */ 1: vlldm sp /* Lazy restore of d0-d16 and FPSCR. */
v8.1-m.main ----------- vscclrm {vpr} /* Clear VPR. */ vlldm sp /* Lazy restore of d0-d16 and FPSCR. */
More details on developer.arm.com/support/arm-security-updates/vlldm-instruction-security-vulnerability
Differential Revision: https://reviews.llvm.org/D109157
|
 | llvm/lib/Target/ARM/ARM.td |
 | llvm/test/CodeGen/ARM/cmse-vlldm-no-reorder.mir |
 | llvm/test/CodeGen/ARM/cmse-cve-2021-35465.ll |
 | clang/lib/Driver/ToolChains/Arch/ARM.cpp |
 | llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp |
 | clang/include/clang/Driver/Options.td |
 | llvm/lib/Target/ARM/ARMSubtarget.h |
 | clang/docs/ClangCommandLineReference.rst |
 | clang/test/Driver/arm-cmse-cve-2021-35465.c |
 | llvm/test/CodeGen/ARM/cmse-cve-2021-35465-return.ll |
Commit
95ba9f957aa9887c0c1d41948529cfe1fc74d889
by fmayer[hwasan] print globals in symbolizer-friendly format.
Reviewed By: eugenis
Differential Revision: https://reviews.llvm.org/D109698
|
 | compiler-rt/lib/hwasan/hwasan_report.cpp |
 | compiler-rt/test/hwasan/TestCases/global.c |
Commit
2f97ff8e7bcf35595682b53fce8ecb7b4aabee6d
by flo[SLP] Add additional memory versioning tests.
|
 | llvm/test/Transforms/SLPVectorizer/AArch64/memory-runtime-checks-in-loops.ll |
 | llvm/test/Transforms/SLPVectorizer/AArch64/memory-runtime-checks.ll |
Commit
05ea321f716390abda1632cca71dc9441662cf62
by thakis[clang-cl] Fix test after 951f362e256 on systems where default target isn't x86_64
|
 | clang/test/Driver/cl-sysroot.cpp |
Commit
ab41eef9aca3ad5e9321e045a57d36e288a75d17
by bjorn.a.pettersson[NewPM] Use a separate struct for ModuleMemorySanitizerPass
Split MemorySanitizerPass into MemorySanitizerPass (as a function pass) and ModuleMemorySanitizerPass (as a module pass). Main reason is to make sure that we have a unique mapping from ClassName to PassName in the new passmanager framework, making it possible to correctly identify the passes when dealing with options such as -print-after and -print-pipeline-passes.
This is a follow-up to D105006 and D105007.
|
 | llvm/lib/Passes/PassRegistry.def |
 | llvm/test/Other/new-pm-print-pipeline.ll |
 | clang/lib/CodeGen/BackendUtil.cpp |
 | llvm/include/llvm/Transforms/Instrumentation/MemorySanitizer.h |
 | llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp |
Commit
8f8616655c4d643d73601c6bf4b492fb9d3b52c8
by bjorn.a.pettersson[NewPM] Use a separate struct for ModuleThreadSanitizerPass
Split ThreadSanitizerPass into ThreadSanitizerPass (as a function pass) and ModuleThreadSanitizerPass (as a module pass). Main reason is to make sure that we have a unique mapping from ClassName to PassName in the new passmanager framework, making it possible to correctly identify the passes when dealing with options such as -print-after and -print-pipeline-passes.
This is a follow-up to D105006 and D105007.
|
 | clang/lib/CodeGen/BackendUtil.cpp |
 | llvm/include/llvm/Transforms/Instrumentation/ThreadSanitizer.h |
 | llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp |
 | llvm/lib/Passes/PassRegistry.def |
Commit
d9fc3d879e6da153f9b892642e2fe28bed6254a7
by bjorn.a.pettersson[NewPM] Replace 'kasan-module' by 'asan-module<kernel>'
Change the asan-module pass into a MODULE_PASS_WITH_PARAMS in the pass registry, and add a single parameter called 'kernel' that can be set instead of having a special pass name 'kasan-module' to trigger that special pass config.
Main reason is to make sure that we have a unique mapping from ClassName to PassName in the new passmanager framework, making it possible to correctly identify the passes when dealing with options such as -print-after and -print-pipeline-passes.
This is a follow-up to D105006 and D105007.
|
 | llvm/lib/Passes/PassBuilder.cpp |
 | llvm/include/llvm/Transforms/Instrumentation/AddressSanitizer.h |
 | llvm/lib/Passes/PassRegistry.def |
 | llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp |
Commit
1b0a71c5fc052322a45a8cb9a9fcaa2c36105b89
by zarko[PowerPC][AIX] Add support for varargs for complex types on AIX
Remove the previous error and add support for special handling of small complex types as in PPC64 ELF ABI. As in, generate code to load from varargs location and pack it in a temp variable, then return a pointer to the struct.
Reviewed By: sfertile
Differential Revision: https://reviews.llvm.org/D106393
|
 | clang/test/CodeGen/ppc64-varargs-complex.c |
 | clang/test/CodeGen/aix32-complex-varargs.c |
 | clang/lib/CodeGen/TargetInfo.cpp |
Commit
baa18ee63e83ee534a5844e6219665ce42b57707
by zhijianAdd a new API seek for the Cursor class in the DataExtractor.cpp
Summary:
add a new API seek for the Cursor class in the DataExtractor.cpp
Reviewers: James Henderson, Fangrui Song
Differential Revision: https://reviews.llvm.org/D109603
|
 | llvm/unittests/Support/DataExtractorTest.cpp |
 | llvm/include/llvm/Support/DataExtractor.h |
Commit
a773db7d76222ccf4365979e01dd582fd2b5b3df
by aschwaighoferAdd a command-line flag to control the Swift extended async frame info.
Introduce a new command-line flag `-swift-async-fp={auto|always|never}` that controls how code generation sets the Swift extended async frame info bit. There are three possibilities:
* `auto`: which determines how to set the bit based on deployment target, either statically or dynamically via `swift_async_extendedFramePointerFlags`. * `always`: the default, always set the bit statically, regardless of deployment target. * `never`: never set the bit, regardless of deployment target.
Patch by Doug Gregor <dgregor@apple.com>
Reviewed By: doug.gregor
Differential Revision: https://reviews.llvm.org/D109392
|
 | llvm/include/llvm/CodeGen/CommandFlags.h |
 | llvm/test/CodeGen/AArch64/swift-dynamic-async-frame.ll |
 | llvm/lib/Target/X86/X86FrameLowering.cpp |
 | llvm/test/CodeGen/X86/swift-dynamic-async-frame.ll |
 | llvm/lib/Target/AArch64/AArch64FrameLowering.cpp |
 | llvm/lib/CodeGen/CommandFlags.cpp |
 | llvm/include/llvm/Target/TargetOptions.h |
Commit
45a738363ee39754a0e93d9f779bda2cad83fa18
by Jake.EganIncrease expected line number for ExtDebugInfo.cpp
This patch increases the expected line number for one of the checks so that it doesn't have to be updated for any added/removed lines in the RUN section.
This change is in preparation for the following patch: https://reviews.llvm.org/D109060
Reviewed By: jsji
Differential Revision: https://reviews.llvm.org/D109541
|
 | clang/test/Modules/ExtDebugInfo.cpp |
Commit
ea79b77da3eeba926e16c3dd8a4f6626c139e185
by kadircet[clangd] Dont work on diags if we are not going to emit
Don't install clang-tidy checks and IncludeFixer or process clang diags when they're going to be dropped. Also disables analysis for some warnings completely.
Differential Revision: https://reviews.llvm.org/D109884
|
 | clang-tools-extra/clangd/unittests/ParsedASTTests.cpp |
 | clang-tools-extra/clangd/ParsedAST.cpp |
Commit
abe8b354e37d8d6a163a6402d8e68ddcfc462dfc
by Yaxun.LiuFix vtbl field addr space
Storing the vtable field of an object should use the same address space as the this pointer. Currently it is assumed to be addr space 0 but this may not be true.
This assumption (added in 054cc3b1b469de4b0cb25d1dc3af43c679c5dc44) caused issues for the out-of-tree CHERI targets.
Reviewed by: John McCall, Alexander Richardson
Differential Revision: https://reviews.llvm.org/D109841
|
 | clang/lib/CodeGen/CGClass.cpp |
Commit
64fe0458866d7bcadacb776a1fa7d827ba8ab916
by kadircet[clangd] PreamblePatch should be no-op if includes arent patched
Don't create a useless functional patch with only filename in it when there is only include directives to be patched but they're not requested.
Differential Revision: https://reviews.llvm.org/D109880
|
 | clang-tools-extra/clangd/Preamble.cpp |
 | clang-tools-extra/clangd/unittests/PreambleTests.cpp |
Commit
720766a50cab7a143f0aa04e3ae344769072511d
by erich.keaneRemove trailing whitespace in ASTReaderDecl.cpp
|
 | clang/lib/Serialization/ASTReaderDecl.cpp |
Commit
ffa5c3a555a8d5d9931d1ae6d6c9e873ff8c5510
by michael.hliaoFix warning on `llvm-else-after-return`. NFC.
|
 | llvm/lib/Analysis/AliasAnalysis.cpp |
Commit
cfc74024195e3be44d023a505d80b7e19f4041fc
by kazu[llvm] Use drop_begin (NFC)
|
 | llvm/lib/CodeGen/TailDuplicator.cpp |
 | llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp |
 | llvm/lib/TextAPI/TextStub.cpp |
 | llvm/lib/Target/MSP430/MSP430FrameLowering.cpp |
 | llvm/utils/TableGen/CodeGenRegisters.cpp |
 | llvm/lib/CodeGen/BranchFolding.cpp |
 | llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp |
 | llvm/lib/Target/AVR/AVRFrameLowering.cpp |
Commit
f670c5aeeef09cd7b88e72cf8c1f2505d044a8ea
by aschwaighoferAdd a new frontend flag `-fswift-async-fp={auto|always|never}`
Summary: Introduce a new frontend flag `-fswift-async-fp={auto|always|never}` that controls how code generation sets the Swift extended async frame info bit. There are three possibilities:
* `auto`: which determines how to set the bit based on deployment target, either statically or dynamically via `swift_async_extendedFramePointerFlags`. * `always`: default, always set the bit statically, regardless of deployment target. * `never`: never set the bit, regardless of deployment target.
Differential Revision: https://reviews.llvm.org/D109451
|
 | clang/include/clang/Basic/CodeGenOptions.h |
 | clang/lib/Driver/ToolChains/Clang.cpp |
 | clang/include/clang/Basic/CodeGenOptions.def |
 | clang/test/CodeGen/swift-async-extended-fp.c |
 | clang/lib/CodeGen/BackendUtil.cpp |
 | clang/include/clang/Driver/Options.td |
Commit
003fed8269b3f6d2b1618b670fc73d28972999e4
by matthew.voss[test] Fix test failure in Clang :: Lexer/char-escapes-delimited.c
Specify the C and C++ standards explicitly for this test. This avoids failures for drivers that default to older standards.
Differential Revision: https://reviews.llvm.org/D109857
|
 | clang/test/Lexer/char-escapes-delimited.c |
Commit
1613ab8a4a3e6f8ab74fadd7e9a2dfe2219e3b43
by koraq[libcxx][libcxxabi] CMAKE_REQUIRED_FLAGS is a string, not a list
When `libcxx` or `libcxxabi` is built with `-DLLVM_USE_SANITIZER=MemoryWithOrigins` **and** `-DLIBCXX[ABI]_USE_COMPILER_RT=ON`, all of the `LIBCXX[ABI]_SUPPORTS_*_FLAG` checks fail, since the value of `CMAKE_REQUIRED_FLAGS` is not set correctly.
Bugzilla: https://bugs.llvm.org/show_bug.cgi?id=51774
Reviewed By: #libc, #libc_abi, compnerd, ldionne
Differential Revision: https://reviews.llvm.org/D109342
|
 | libcxxabi/cmake/config-ix.cmake |
 | libcxx/cmake/config-ix.cmake |
Commit
a2c319fdc6b35ae6d8578459f07c89042775e5ec
by koraq[LLVM][CMake][NFC] Resolve FIXME: Rename LLVM_CMAKE_PATH to LLVM_CMAKE_DIR throughout the project
This way, we do not need to set LLVM_CMAKE_PATH to LLVM_CMAKE_DIR when (NOT LLVM_CONFIG_FOUND)
Reviewed By: #libc, ldionne
Differential Revision: https://reviews.llvm.org/D107717
|
 | libunwind/CMakeLists.txt |
 | flang/CMakeLists.txt |
 | libcxx/cmake/Modules/HandleOutOfTreeLLVM.cmake |
 | lldb/cmake/modules/LLDBStandalone.cmake |
 | lld/CMakeLists.txt |
 | compiler-rt/cmake/Modules/CompilerRTUtils.cmake |
 | lldb/source/CMakeLists.txt |
 | runtimes/CMakeLists.txt |
 | clang/lib/Basic/CMakeLists.txt |
 | llvm/CMakeLists.txt |
 | compiler-rt/cmake/Modules/CompilerRTMockLLVMCMakeConfig.cmake |
 | clang/CMakeLists.txt |
 | llvm/include/llvm/Support/CMakeLists.txt |
 | lld/Common/CMakeLists.txt |
Commit
976d474bec357d7712884ce4691be45d247325bd
by cchen[OpenMP] Support construct trait set for Clang
This patch supports construct trait set selector by using the existed declare variant infrastructure inside `OMPContext` and simd selector is currently not supported. The goal of this patch is to pass the declare variant test inside sollve test suite.
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D109635
|
 | clang/lib/AST/OpenMPClause.cpp |
 | clang/lib/Parse/ParseOpenMP.cpp |
 | clang/test/OpenMP/declare_variant_messages.c |
 | clang/include/clang/AST/OpenMPClause.h |
 | clang/test/OpenMP/declare_variant_ast_print.cpp |
 | clang/test/OpenMP/declare_variant_ast_print.c |
 | clang/test/OpenMP/declare_variant_construct_codegen_1.c |
 | clang/lib/Sema/SemaOpenMP.cpp |
Commit
ee2e414dde4f2ea2c758d23cedb07b767b8fd891
by nicolas.vasilache[mlir][Linalg] Cleanup doc and improve logging and readability in ComprehensiveBufferize.cpp - NFC
|
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp |
Commit
2a1ac2e318c60955aecefb493e4707f0d609c35d
by sjoerd.meijer[FuncSpec] Add force flag to test case to trigger the transform. NFC.
|
 | llvm/test/Transforms/FunctionSpecialization/function-specialization-constant-expression.ll |
Commit
860cbeb15992a385d9a3fffb3f1a8443cc99b663
by ajcbik[mlir][sparse] add more asserts to sparse support lib
We are having issues running the integration test of the sparse compiler on AArch64 (crashing in the lib). This revision adds more assertions.
Reviewed By: jsetoain
Differential Revision: https://reviews.llvm.org/D109861
|
 | mlir/lib/ExecutionEngine/SparseUtils.cpp |
Commit
aefb81a33a6d44048186010677eb1c0e6c6cac12
by aaronRemoving some spurious whitespace; NFC
|
 | clang/lib/CodeGen/CGDebugInfo.cpp |
Commit
c5f480fcbec04f46a9cfcad08914665ff83d8d8a
by i[OpenMP] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off build after D109635
|
 | clang/lib/Sema/SemaOpenMP.cpp |
Commit
afb6223bc53034973379863d08cbee322149569e
by aaronSupport Unicode 14 identifiers
This update the UAX tables to support new Unicode 14 identifiers.
|
 | clang/test/Lexer/unicode.c |
 | clang/lib/Lex/UnicodeCharSets.h |
Commit
446e21623c285f335714297aa14f13c21b298931
by aktoon[llvm-profgen] Use context-sensitive byte size cost for preinliner decisions by default
Turn on `use-context-cost-for-preinliner` to use context-sensitive byte size cost for preinliner decisions by default.
This is a more accurate proxy of inline cost than profile size. We tested on our large workload that it delivers measureable CPU improvement.
Differential Revision: https://reviews.llvm.org/D109893
|
 | llvm/test/tools/llvm-profgen/cs-preinline-cost.test |
 | llvm/tools/llvm-profgen/CSPreInliner.cpp |
Commit
c0afb0092423a534d6a4f81a233845ef65f93930
by Dávid Bolvanský[NFC] Added tests for llvm.powi optimizations
|
 | llvm/test/Transforms/InstCombine/powi.ll |
Commit
a4a426c9e0da06b9ff4c58d3a15a1e789efebfb6
by Dávid Bolvanský[InstCombine] Added llvm.powi optimizations
If power is even: powi(-x, p) -> powi(x, p) powi(fabs(x), p) -> powi(x, p) powi(copysign(x, y), p) -> powi(x, p)
|
 | llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp |
 | llvm/test/Transforms/InstCombine/powi.ll |
Commit
f1e8ceb3054a02f4225ff7ab74cde10b70826707
by Saleem Abdulrasooldocs: correct SPHNIX document reference
The trailing `>` was missing, which resulted in the reference not being processed properly.
|
 | clang-tools-extra/docs/ReleaseNotes.rst |
Commit
d49cb5b3035b02ffdd0cc8cf4c69c6e5369558f6
by aeubanks[SimplifyCFG] Add bonus when seeing vector ops to branch fold to common dest
This makes some tests in vector-reductions-logical.ll more stable when applying D108837.
The cost of branching is higher when vector ops are involved due to potential SLP transformations.
Reviewed By: spatel
Differential Revision: https://reviews.llvm.org/D108935
|
 | llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-logical.ll |
 | llvm/lib/Transforms/Utils/SimplifyCFG.cpp |
Commit
106959acc15c4b98e252af0c43406aa9342a2e05
by Vang.Thao[AMDGPU] Inline non-kernel functions using extern lds
In https://reviews.llvm.org/D100481, forceful inline of all non-kernel functions using lds was disabled since AMDGPULowerModuleLDS pass now handles static lds. However that pass does not handle extern lds so non-kernel functions using extern lds must sill be inline.
Reviewed By: hsmhsm, arsenm
Differential Revision: https://reviews.llvm.org/D109773
|
 | llvm/test/CodeGen/AMDGPU/hip.extern.shared.array.ll |
 | llvm/lib/Target/AMDGPU/AMDGPUAlwaysInlinePass.cpp |
Commit
c96d45700f6d3cb2b8d1972bb8de03522b3ff8d7
by Jonas Devlieghere[lldb] Remove SBExecutionContext::reset (NFC)
This is a protected function that's not implemented.
|
 | lldb/include/lldb/API/SBExecutionContext.h |
Commit
b4fa71eed34d967195514fe9b0a5211fca2bc5bc
by akhuang[LLD] Remove global state in lld/COFF
This patch removes globals from the lldCOFF library, by moving globals into a context class (COFFLinkingContext) and passing it around wherever it's needed.
See https://lists.llvm.org/pipermail/llvm-dev/2021-June/151184.html for context about removing globals from LLD.
I also haven't moved the `driver` or `config` variables yet.
Differential Revision: https://reviews.llvm.org/D109634
|
 | lld/COFF/CallGraphSort.h |
 | lld/COFF/Writer.cpp |
 | lld/COFF/CallGraphSort.cpp |
 | lld/COFF/DLL.h |
 | lld/COFF/MapFile.cpp |
 | lld/COFF/LTO.h |
 | lld/COFF/Chunks.h |
 | lld/Common/Timer.cpp |
 | lld/COFF/LTO.cpp |
 | lld/COFF/PDB.cpp |
 | lld/COFF/Writer.h |
 | lld/COFF/MapFile.h |
 | llvm/utils/gn/secondary/lld/COFF/BUILD.gn |
 | lld/COFF/Driver.h |
 | lld/COFF/Driver.cpp |
 | lld/COFF/DebugTypes.cpp |
 | lld/COFF/COFFLinkerContext.cpp |
 | lld/COFF/ICF.cpp |
 | lld/COFF/InputFiles.cpp |
 | lld/COFF/DebugTypes.h |
 | lld/COFF/PDB.h |
 | lld/COFF/LLDMapFile.cpp |
 | lld/include/lld/Common/Timer.h |
 | lld/COFF/ICF.h |
 | lld/COFF/MarkLive.cpp |
 | lld/COFF/MinGW.cpp |
 | lld/COFF/SymbolTable.cpp |
 | lld/COFF/MinGW.h |
 | lld/COFF/CMakeLists.txt |
 | lld/COFF/MarkLive.h |
 | lld/COFF/InputFiles.h |
 | lld/COFF/DLL.cpp |
 | lld/COFF/SymbolTable.h |
 | lld/COFF/TypeMerger.h |
 | lld/COFF/LLDMapFile.h |
 | lld/COFF/Chunks.cpp |
 | lld/COFF/COFFLinkerContext.h |
Commit
73e5b9ea90ba857dd7f0f6b79dc39dfc90ad66ea
by craig.topper[RISCV] Select (srl (sext_inreg X, i32), uimm5) to SRAIW if only lower 32 bits are used.
SimplifyDemandedBits can turn srl into sra if the bits being shifted in aren't demanded. This patch can recover the original sra in some cases.
I've renamed the tablegen class for detecting W users since the "overflowing operator" term I originally borrowed from Operator.h does not include srl.
Reviewed By: luismarques
Differential Revision: https://reviews.llvm.org/D109162
|
 | llvm/lib/Target/RISCV/RISCVInstrInfoM.td |
 | llvm/test/CodeGen/RISCV/srem-lkk.ll |
 | llvm/lib/Target/RISCV/RISCVInstrInfo.td |
 | llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp |
 | llvm/test/CodeGen/RISCV/rv64i-exhaustive-w-insts.ll |
Commit
22f01cd4fc5d2a02a156722e1dab0398fc860e74
by Jake.Egan[AIX][ZOS] Disable LIT tests on AIX and z/OS due to lack of Objective-C support
AIX and z/OS lack Objective-C support, so mark these tests as unsupported for AIX and z/OS.
Reviewed By: jsji
Differential Revision: https://reviews.llvm.org/D109060
|
 | clang/test/Modules/ModuleDebugInfoDwoId.cpp |
 | clang/test/Modules/ExtDebugInfo.m |
 | clang/test/Import/forward-declared-objc-class/test.m |
 | clang/test/PCH/objc_literals.mm |
 | clang/test/Modules/ModuleModuleDebugInfo.cpp |
 | clang/test/Import/objc-autoreleasepool/test.m |
 | clang/test/Modules/pch-used.m |
 | clang/test/Modules/DebugInfoNamespace.cpp |
 | clang/test/Import/objc-arc/test-cleanup-object.m |
 | clang/test/Modules/debug-info-moduleimport.m |
 | clang/test/PCH/objc_container.m |
 | clang/test/CodeGenObjCXX/lit.local.cfg |
 | clang/test/PCH/objcxx-ivar-class.mm |
 | clang/test/Modules/autolink.m |
 | clang/test/Modules/cxx-irgen.cpp |
 | clang/test/Import/objc-method/test.m |
 | clang/test/Import/objc-param-decl/test.m |
 | clang/test/CodeGenObjC/lit.local.cfg |
 | clang/test/Modules/use-exportas-for-link.m |
 | clang/test/Modules/autolinkTBD.m |
 | clang/test/PCH/externally-retained.m |
 | clang/test/PCH/objc_literals.m |
 | clang/test/PCH/pending-ids.m |
 | clang/test/Import/objc-definitions-in-expression/test.m |
 | clang/test/Modules/ExtDebugInfo.cpp |
 | clang/test/Modules/merge-record-definition-nonmodular.m |
 | clang/test/PCH/irgen-rdar13114142.mm |
 | clang/test/Import/objc-try-catch/test.m |
 | clang/test/Modules/DebugInfoTransitiveImport.m |
 | clang/test/Modules/merge-record-definition-visibility.m |
 | clang/test/Modules/module_file_info.m |
 | clang/test/Modules/objc-initializer.m |
 | clang/test/Modules/merge-record-definition.m |
 | clang/test/Modules/direct-module-import.m |
Commit
6b20ea6963561f2c91490c0993390b7f2ff8f71c
by tra[CUDA] Pass ExecConfig through BuildCallToMemberFunction
Otherwise, we fail to compile calls to CUDA kernels that are static members.
Differential Revision: https://reviews.llvm.org/D108787
|
 | clang/lib/Sema/SemaOverload.cpp |
 | clang/include/clang/Sema/Sema.h |
 | clang/lib/Sema/SemaExpr.cpp |
 | clang/test/SemaCUDA/kernel-call.cu |
Commit
e03c7e367adb8f228332e3c2ef8f45484597b719
by akhuang[lld] Add test to check for timer output
This test checks that timers are working and printing as expected.
I also seem to have changed the order of the timers in my globals refactoring patch, so I fixed it here.
Differential Revision: https://reviews.llvm.org/D109904
|
 | lld/test/COFF/timers.ll |
 | lld/COFF/COFFLinkerContext.h |
 | lld/COFF/COFFLinkerContext.cpp |
Commit
8662a2f2081c2a6bf51a490caa045648c88dd230
by rob.suderman[mlir][tosa] Relax ranked constraint on quantization builder
TosaOp defintion had an artificial constraint that the input/output types needed to be ranked to invoke the quantization builder. This is correct as an unranked tensor could still be quantized.
Reviewed By: NatashaKnk
Differential Revision: https://reviews.llvm.org/D109863
|
 | mlir/lib/Dialect/Tosa/IR/TosaOps.cpp |
 | mlir/lib/Dialect/Tosa/Utils/QuantUtils.cpp |
Commit
5de8c7f1387dd5e2ad3b79a145baf41b21fa4952
by mvanotti[fuzzer][fuchsia] Close exception channel before exiting.
On Fuchsia, killing or exiting a process that has a thread listening to its own process's debugger exception channel can hang. Zircon may kill all the threads, send a synthetic exceptions to debugger, and wait for the debugger to have received them. This means the thread listening to the debug exception channel may be killed even as Zircon is waiting for that thread to drain the exception channel, and the process can become stuck in a half-dead state.
This situation is "weird" as it only arises when a process is trying to debug itself. Unfortunately, this is exactly the scenario for libFuzzer on Fuchsia: FuzzerUtilFuchsia spawns a crash-handling thread that acts like a debugger in order to be able to rewrite the crashed threads stack and resume them into libFuzzer's usual POSIX signal handlers. In practice, approximately 25% of fuzzers appear to hang on exit, after generating output and artifacts. These processes hang around until the platform is torn done, which is typically a ClusterFuzz VM. Thus, real-world impact has been somewhat mitigated. The issue should still be resolved for local users, though.
This change improves the behavior of exit() in libFuzzer by adding an atexit handler which closes an event shared with the crash handling thread. This signals to the crash handler that it should close the exception channel and be joined before the process actually exits.
Reviewed By: charco
Differential Revision: https://reviews.llvm.org/D109258
|
 | compiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp |
Commit
a2fd05ada9030eab2258fff25e77a05adccae128
by akhuangTemporarily revert "[LLD] Remove global state in lld/COFF" and "[lld] Add test to check for timer output"
Seems to be causing a number of asan test failures.
This reverts commit b4fa71eed34d967195514fe9b0a5211fca2bc5bc and e03c7e367adb8f228332e3c2ef8f45484597b719.
|
 | lld/COFF/InputFiles.cpp |
 | lld/Common/Timer.cpp |
 | lld/COFF/Chunks.cpp |
 | lld/COFF/Driver.h |
 | lld/COFF/Driver.cpp |
 | lld/COFF/ICF.h |
 | lld/COFF/LTO.h |
 | lld/COFF/CallGraphSort.cpp |
 | lld/COFF/DLL.h |
 | lld/COFF/TypeMerger.h |
 | lld/COFF/SymbolTable.h |
 | lld/test/COFF/timers.ll |
 | llvm/utils/gn/secondary/lld/COFF/BUILD.gn |
 | lld/COFF/CallGraphSort.h |
 | lld/COFF/MapFile.cpp |
 | lld/COFF/MarkLive.h |
 | lld/COFF/DebugTypes.cpp |
 | lld/COFF/MinGW.h |
 | lld/COFF/DebugTypes.h |
 | lld/COFF/COFFLinkerContext.cpp |
 | lld/COFF/SymbolTable.cpp |
 | lld/COFF/PDB.cpp |
 | lld/COFF/Chunks.h |
 | lld/COFF/LLDMapFile.cpp |
 | lld/COFF/MarkLive.cpp |
 | lld/COFF/MinGW.cpp |
 | lld/COFF/MapFile.h |
 | lld/COFF/LLDMapFile.h |
 | lld/COFF/Writer.h |
 | lld/COFF/LTO.cpp |
 | lld/COFF/COFFLinkerContext.h |
 | lld/COFF/ICF.cpp |
 | lld/COFF/Writer.cpp |
 | lld/COFF/DLL.cpp |
 | lld/COFF/PDB.h |
 | lld/COFF/CMakeLists.txt |
 | lld/COFF/InputFiles.h |
 | lld/include/lld/Common/Timer.h |
Commit
0fc624f029f568e91caf74d90abc5d8d971151c2
by nikita.ppv[IR] Return AAMDNodes from Instruction::getMetadata() (NFC)
getMetadata() currently uses a weird API where it populates a structure passed to it, and optionally merges into it. Instead, we can return the AAMDNodes and provide a separate merge() API. This makes usages more compact.
Differential Revision: https://reviews.llvm.org/D109852
|
 | llvm/lib/Transforms/Utils/SimplifyCFG.cpp |
 | llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp |
 | llvm/lib/Transforms/Scalar/SROA.cpp |
 | llvm/lib/Transforms/IPO/ArgumentPromotion.cpp |
 | llvm/lib/Transforms/Scalar/GVN.cpp |
 | llvm/include/llvm/IR/Instruction.h |
 | llvm/lib/CodeGen/SelectionDAG/FastISel.cpp |
 | llvm/lib/Transforms/InstCombine/InstructionCombining.cpp |
 | llvm/lib/Analysis/MemoryLocation.cpp |
 | llvm/lib/Transforms/Scalar/LICM.cpp |
 | llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp |
 | llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp |
 | llvm/lib/Transforms/IPO/FunctionAttrs.cpp |
 | llvm/include/llvm/IR/Metadata.h |
 | polly/lib/Analysis/ScopDetection.cpp |
 | llvm/lib/Transforms/Scalar/JumpThreading.cpp |
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp |
Commit
f79ce5875f560528c801c404b1be1ce3e203c2e1
by listmailautogen a SCEV test for ease of update
|
 | llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll |
Commit
88cb3e2cb6fe80dec27d8ed3cad0f63555470910
by tejohnson[MemProf] Don't instrument stack accesses unless requested
Skip stack accesses unless requested, as the memory profiler runtime does not currently look at or report accesses for these addresses.
Differential Revision: https://reviews.llvm.org/D109868
|
 | llvm/lib/Transforms/Instrumentation/MemProfiler.cpp |
 | llvm/test/Instrumentation/HeapProfiler/stack.ll |
Commit
45a8608d7ba4519ce890b74db20087ba22343c50
by i[OpenMP] Fix -Wunused-variable in -DLLVM_ENABLE_ASSERTIONS=off build after D109635
|
 | clang/lib/Sema/SemaOpenMP.cpp |
Commit
47dd1f642846d476e3d789f4aa941699dc0ed3fe
by Augusto Noronha[lldb] Skip TestAppleSimulatorOSType if json parsing fails
xcodebuild, which is invoked by the apple_simulator_test decorator, may may return a successful status even if it was unable to run due to the authorization agent denying it. This causes the TestAppleSimulatorOSType to run when it shouldn't, and throw an excpection when parsing the JSON that lists the simulators available. Wrap the json parsing in a try/except block and if it fails, skip the ttest.
Differential Revision: https://reviews.llvm.org/D109336
|
 | lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py |
Commit
df7c2bcf4e45e8e20539d9024893c42f6cf1c0fd
by listmailprecommit tests for D109457
|
 | llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll |
Commit
4c1023b4b7900db3ddeec16e16018c1413ecc3db
by jacob.lambert[AMDGPU] NFC: Fixing small spelling errors in AMDGPU header files
Nonfunctional commit fixing several minor spelling errors in llvm/lib/Target/AMDGPU header files. Testing workflow as a new contributor.
Differential Revision: https://reviews.llvm.org/D109733
|
 | llvm/lib/Target/AMDGPU/R600InstrInfo.h |
 | llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h |
 | llvm/lib/Target/AMDGPU/AMDGPU.h |
 | llvm/lib/Target/AMDGPU/GCNSchedStrategy.h |
 | llvm/lib/Target/AMDGPU/GCNSubtarget.h |
Commit
a65f6aafe2d357cd83de62832a2bdae49a2d6749
by apl[lldb] Refactor and rename CPlusPlusLanguage::FindAlternateFunctionManglings
I have 2 goals with this change: 1. Disambiguate between CPlusPlus::FindAlternateFunctionManglings and IRExecutionUnit::FindBestAlternateMangledName. These are named very similar things, they try to do very similar things, but their approaches are different. This change should make it clear that one is generating possible alternate manglings (through some heuristics-based approach) and the other is finding alternate manglings (through searching the SymbolFile for potential matches). 2. Change GenerateAlternateFunctionManglings from a static method in CPlusPlusLanguage to a virtual method in Language. This will allow us to remove a direct use of CPlusPlusLanguage in IRExecutionUnit, further pushing it to be more general. This change doesn't meet this goal completely but allows for it to happen later.
Though this doesn't remove IRExecutionUnit's dependency on CPlusPlusLanguage, it does bring us closer to that goal.
Differential Revision: https://reviews.llvm.org/D109785
|
 | lldb/source/Expression/IRExecutionUnit.cpp |
 | lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp |
 | lldb/include/lldb/Target/Language.h |
 | lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h |
 | lldb/unittests/Language/CPlusPlus/CPlusPlusLanguageTest.cpp |
Commit
7eb67748f9d7186419d678e807c01fc2a3811a80
by Vedant Kumar[MachCore] Report arm64 thread exception state
A MachO userspace corefile may contain LC_THREAD commands which specify thread exception state.
For arm64* only (for now), report a human-readable version of this state as the thread stop reason, instead of 'SIGSTOP'.
As a follow-up, similar functionality can be implemented for x86 cores by translating the trapno/err exception registers.
rdar://82898146
Differential Revision: https://reviews.llvm.org/D109795
|
 | lldb/source/Plugins/Process/mach-core/ThreadMachCore.cpp |
 | lldb/test/API/macosx/corefile-exception-reason/Makefile |
 | lldb/include/lldb/Target/AppleArm64ExceptionClass.h |
 | lldb/include/lldb/module.modulemap |
 | lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp |
 | lldb/test/API/macosx/corefile-exception-reason/main.cpp |
 | lldb/include/lldb/Target/AppleArm64ExceptionClass.def |
 | lldb/test/API/macosx/corefile-exception-reason/TestCorefileExceptionReason.py |
Commit
79e48f3c7c8ca205048f584b7658ef001a677c6d
by Vedant KumarRevert "[MachCore] Report arm64 thread exception state"
This reverts commit 7eb67748f9d7186419d678e807c01fc2a3811a80. It causes TestMachCore.MachCoreTestCase to fail.
|
 | lldb/include/lldb/Target/AppleArm64ExceptionClass.h |
 | lldb/source/Plugins/Process/mach-core/ThreadMachCore.cpp |
 | lldb/test/API/macosx/corefile-exception-reason/TestCorefileExceptionReason.py |
 | lldb/test/API/macosx/corefile-exception-reason/main.cpp |
 | lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp |
 | lldb/include/lldb/module.modulemap |
 | lldb/include/lldb/Target/AppleArm64ExceptionClass.def |
 | lldb/test/API/macosx/corefile-exception-reason/Makefile |
Commit
8fb86011026c56204e54a2806d598249c6297d08
by Augusto NoronhaRevert "[lldb] Skip TestAppleSimulatorOSType if json parsing fails"
This reverts commit 47dd1f642846d476e3d789f4aa941699dc0ed3fe. After discussing with Jim Ingham, we agreed to leave the test as-is so we can catch any CI problems instead of silently skipping the test.
|
 | lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py |
Commit
2aa8474210044e41b527bd68870991b4104c4f2f
by gcmn[Bazel] Use posix definitions for FreeBSD
Presently, definitions default to those for Linux which are not defined for FreeBSD (HAVE_LSEEK64, HAVE_MALLINFO, etc.). Patch sets os_defines to posix definitions under FreeBSD.
Reviewed By: GMNGeoffrey
Differential Revision: https://reviews.llvm.org/D109913
|
 | utils/bazel/llvm-project-overlay/llvm/config.bzl |
Commit
e6020b2a42245d888e941eba66fbce9d0c4ab0a8
by danielrodriguez[clang][NFC] refactor GlobalMethodPool to encapsulate its map
This refactor changes the GlobalMethodPool to a class that contains the DenseMap of methods. This is to allow for the addition of a separate DenseSet in a follow-up diff that will handle method de-duplication when inserting methods into the global method pool.
Changes: - the `GlobalMethods` pair becomes `GlobalMethodPool::Lists` - the `GlobalMethodPool` becomes a class containing the `DenseMap` of methods - pass through methods are added to maintain most of the existing code without changing `MethodPool` -> `MethodPool.Methods` everywhere
Reviewed By: dexonsmith
Differential Revision: https://reviews.llvm.org/D109898
|
 | clang/lib/Serialization/ASTReader.cpp |
 | clang/include/clang/Sema/Sema.h |
 | clang/lib/Sema/SemaDeclObjC.cpp |
Commit
233b42a8bbdc4e604b6f3454d8d91702bebe008b
by ajcbik[mlir][sparse] remove unused TENSOR environment
Reviewed By: bixia
Differential Revision: https://reviews.llvm.org/D109919
|
 | mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_cast.mlir |
Commit
04a66f8d2b8f3dfba32ba3f7652dbeb3427a3df4
by ravishankarmFixing vector add pattern that incorrectly returns success.
The pattern is returning success even if it does no work leading to pattern application running up to the max iteration count and failing.
Reviewed By: nicolasvasilache, mravishankar
Differential Revision: https://reviews.llvm.org/D109791
|
 | mlir/lib/Dialect/Vector/VectorOps.cpp |
Commit
65feb9f4447364e103f17e6feec552a3c51ccb86
by 31459023+hctim[symbolizer] Change libcxx paths in buildscript.
D107799 changed the paths from lib/libcxx(abi)?.a to lib/<triple>/libcxx(abi)?.a. The build script needs to know to pick up the files from the triple subfolder instead.
See https://lab.llvm.org/buildbot/#/builders/37/builds/6764 for buildbot log failure.
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D109924
|
 | compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh |
Commit
4b19e7dfaee9a966f4bfb8e4378adb3bd43539de
by Jon Roelofs[LoopIdiomRecognize][Remarks] Track loop-strided store to/from blocks
Differential revision: https://reviews.llvm.org/D109929
|
 | llvm/test/Transforms/LoopIdiom/memset-debugify-remarks.ll |
 | llvm/test/Transforms/LoopIdiom/memcpy-debugify-remarks.ll |
 | llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp |
Commit
5f2b7879f16ad5023f0684febeb0a20f7d53e4a8
by dsuchkovNFC. Add tests exposing missing analysis invalidation in LoopPredication.
|
 | llvm/test/Transforms/LoopPredication/invalidate-analyses.ll |
Commit
0e362883182db53da9d6dd8e90f8eafb4e3b916c
by dsuchkov[LoopPredication] Report changes correctly when attempting loop exit predication
To make the IR easier to analyze, this pass makes some minor transformations. After that, even if it doesn't decide to optimize anything, it can't report that it changed nothing and preserved all the analyses.
Reviewed By: reames
Differential Revision: https://reviews.llvm.org/D109855
|
 | llvm/lib/Transforms/Scalar/LoopPredication.cpp |
 | llvm/test/Transforms/LoopPredication/invalidate-analyses.ll |
Commit
d9195d6603f2c95124e29beacec9129ae8fd616e
by pklausler[flang] More precise checks for NULL() operands
Improve checking for NULL() and NULL(MOLD=) when used as variables and expressions outside the few contexts where a disassociated pointer can be valid. There were both inappropriate errors and missing checks.
Differential Revision: https://reviews.llvm.org/D109905
|
 | flang/lib/Semantics/expression.cpp |
 | flang/lib/Semantics/check-call.cpp |
 | flang/lib/Semantics/check-omp-structure.cpp |
 | flang/include/flang/Evaluate/expression.h |
 | flang/lib/Evaluate/tools.cpp |
 | flang/test/Semantics/resolve63.f90 |
Commit
646299d183ca72cbafd3a2d64629ce8cb3fcdd9d
by thakis[Support] Convert BinaryStream class zoo to 64-bit offsets
Most PDB fields on disk are 32-bit but describe the file in terms of MSF blocks, which are 4 kiB by default.
So PDB files can be a bit larger than 4 GiB, and much larger if you create them with a block size > 4 kiB.
This is a first (necessary, but by far not not sufficient) step towards supporting such PDB files. Now we don't truncate in-memory file offsets (which are in terms of bytes, not in terms of blocks).
No effective behavior change. lld-link will still error out if it were to produce PDBs > 4 GiB.
Differential Revision: https://reviews.llvm.org/D109923
|
 | llvm/lib/Support/BinaryStreamRef.cpp |
 | llvm/include/llvm/Support/BinaryItemStream.h |
 | llvm/include/llvm/Support/BinaryStreamRef.h |
 | llvm/lib/DebugInfo/PDB/Native/NativeEnumInjectedSources.cpp |
 | llvm/unittests/DebugInfo/MSF/MappedBlockStreamTest.cpp |
 | llvm/include/llvm/Support/BinaryStream.h |
 | llvm/tools/llvm-pdbutil/LinePrinter.h |
 | llvm/include/llvm/DebugInfo/MSF/MappedBlockStream.h |
 | llvm/include/llvm/Support/BinaryStreamReader.h |
 | llvm/include/llvm/Support/BinaryStreamWriter.h |
 | llvm/lib/Support/BinaryStreamWriter.cpp |
 | llvm/lib/DebugInfo/MSF/MappedBlockStream.cpp |
 | llvm/unittests/Support/BinaryStreamTest.cpp |
 | llvm/lib/Support/BinaryStreamReader.cpp |
 | llvm/tools/llvm-pdbutil/LinePrinter.cpp |
 | llvm/include/llvm/Support/BinaryByteStream.h |
Commit
19afc495dc2797803b3da7f0797f214483215bb8
by pklausler[flang] Enforce array conformance in actual arguments to ELEMENTALs
When the shapes of actual arguments to ELEMENTAL procedures are sufficiently well known during semantics, require them to conform.
Differential Revision: https://reviews.llvm.org/D109909
|
 | flang/lib/Semantics/check-call.cpp |
 | flang/test/Semantics/call22.f90 |
Commit
fe950cba8f463562072e196a01409425b6ca0d40
by dsuchkovUpdate LoopPredication test to fix buildbot failure.
This patch updates tests added in 5f2b7879f16ad5023f0684febeb0a20f7d53e4a8.
|
 | llvm/test/Transforms/LoopPredication/invalidate-analyses.ll |
Commit
78b083dbb725e1ec568d1b8ee523f5f025d25798
by Lang Hames[ORC] Add finalization & deallocation actions, SimpleExecutorMemoryManager class
Finalization and deallocation actions are a key part of the upcoming JITLinkMemoryManager redesign: They generalize the existing finalization and deallocate concepts (basically "copy-and-mprotect", and "munmap") to include support for arbitrary registration and deregistration of parts of JIT linked code. This allows us to register and deregister eh-frames, TLV sections, language metadata, etc. using regular memory management calls with no additional IPC/RPC overhead, which should both improve JIT performance and simplify interactions between ORC and the ORC runtime.
The SimpleExecutorMemoryManager class provides executor-side support for memory management operations, including finalization and deallocation actions.
This support is being added in advance of the rest of the memory manager redesign as it will simplify the introduction of an EPC based RuntimeDyld::MemoryManager (since eh-frame registration/deregistration will be expressible as actions). The new RuntimeDyld::MemoryManager will in turn allow us to remove older remote allocators that are blocking the rest of the memory manager changes.
|
 | llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt |
 | llvm/tools/llvm-jitlink/llvm-jitlink-executor/llvm-jitlink-executor.cpp |
 | llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h |
 | llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.cpp |
 | llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleExecutorMemoryManager.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/Shared/TargetProcessControlTypes.h |
 | llvm/lib/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.cpp |
 | llvm/lib/ExecutionEngine/Orc/TargetProcess/OrcRTBootstrap.cpp |
 | llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt |
 | llvm/unittests/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManagerTest.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleExecutorMemoryManager.h |
 | llvm/lib/ExecutionEngine/Orc/SimpleRemoteEPC.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.h |
 | llvm/unittests/ExecutionEngine/Orc/SimpleExecutorMemoryManagerTest.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/ExecutorBootstrapService.h |
 | llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.h |
Commit
a9a6cdc1bdc0beeb55129e2b502b7c73101e139a
by llvmgnsyncbot[gn build] Port 78b083dbb725
|
 | llvm/utils/gn/secondary/llvm/unittests/ExecutionEngine/Orc/BUILD.gn |
 | llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/TargetProcess/BUILD.gn |
Commit
47373f94a431d7fcc78c760ca6ca321f3742b746
by leonardchan[compiler-rt][test] Add int128 requirement to TestCases/Misc/Linux/static-link.cpp
We hit some undefined symbol errors to 128-bit floating point functions when linking this test.
ld.lld: error: undefined symbol: __multf3 >>> referenced by strtof128_l.o:(round_and_return) in archive /usr/lib/x86_64-linux-gnu/libc.a >>> referenced by strtof128_l.o:(round_and_return) in archive /usr/lib/x86_64-linux-gnu/libc.a >>> referenced by strtof128_l.o:(round_and_return) in archive /usr/lib/x86_64-linux-gnu/libc.a >>> referenced 4 more times >>> did you mean: __muldf3 >>> defined in: /usr/local/google/home/leonardchan/llvm-monorepo/llvm-build-1-master-fuchsia-toolchain/lib/clang/14.0.0/lib/x86_64-unknown-linux-gnu/libclang_rt.builtins.a
Host libc expects these to be defined, and compiler-rt will only define these for certain platforms (see definition for CRT_LDBL_128BIT). Since we likely can't do anything about the host libc, we can at least restrict the test to check that these functions are supported.
Differential Revision: https://reviews.llvm.org/D109709
|
 | compiler-rt/test/ubsan/TestCases/Misc/Linux/static-link.cpp |
Commit
26aff847d8860c14bc3e829e4bfe7980058504c0
by pklausler[flang] Fold COUNT()
Complete folding of the intrinsic reduction function COUNT() for all cases, including partial reductions with DIM= arguments.
Differential Revision: https://reviews.llvm.org/D109911
|
 | flang/lib/Evaluate/fold-implementation.h |
 | flang/lib/Evaluate/fold-reduction.cpp |
 | flang/test/Evaluate/folding29.f90 |
 | flang/lib/Evaluate/CMakeLists.txt |
 | flang/lib/Evaluate/fold-logical.cpp |
 | flang/lib/Evaluate/fold-integer.cpp |
 | flang/lib/Evaluate/fold-reduction.h |
Commit
1d08a19a38a588a1ba39d1e0776ea331a451debd
by i[ELF] Clarify --export-dynamic-symbol/--dynamic-list. NFC
|
 | lld/ELF/Driver.cpp |
Commit
f4092c769031f4dde5844ce57f1d47a7e7080311
by leonardchan[compiler-rt][test] Ensure CMAKE_SYSROOT is added as a test cflag if provided
When running tests like SanitizerCommon-asan-x86_64-Linux :: Linux/crypt_r.cpp, it may attempt to use the host header crypt.h rather than a sysroot header. This is significant in the event where struct crypt_data defined on host is different from the sysroot used to make the sanitizer runtime libraries. This can result in logical differences between the expected size/layout of struct crypt_data known by sanitizers and the strict crypt_data provided by the host crypt.h.
Since tests should still use the CMAKE_SYSROOT, this ensures that CMAKE_SYSROOT is propagated to compiler-rt tests.
Differential Revision: https://reviews.llvm.org/D109796
|
 | compiler-rt/test/sanitizer_common/CMakeLists.txt |