Commit
a3378063ff6c65a2335a5eca42858b2a968c1094
by dljFix an unused variable introduced in rL374955 / rG21703543. Even though this is a unit test, it still may be run under optimization. llvm-svn: 374961
|
 | llvm/unittests/Support/VirtualFileSystemTest.cpp |
Commit
8bb47cd8c30c29d064cefe2b69510160535727ae
by yitzhakm[libTooling] Put all Transformer declarations in a single namespace. Summary: This revision introduces a new namespace, `clang::transformer`, to hold the declarations for the Transformer library. Reviewers: gribozavr Subscribers: cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D68876 llvm-svn: 374962
|
 | clang/lib/Tooling/Transformer/Transformer.cpp |
 | clang/unittests/Tooling/TransformerTest.cpp |
 | clang/include/clang/Tooling/Transformer/RewriteRule.h |
 | clang/include/clang/Tooling/Transformer/MatchConsumer.h |
 | clang/include/clang/Tooling/Transformer/Transformer.h |
 | clang/lib/Tooling/Transformer/RangeSelector.cpp |
 | clang/lib/Tooling/Transformer/RewriteRule.cpp |
 | clang/lib/Tooling/Transformer/Stencil.cpp |
 | clang/unittests/Tooling/StencilTest.cpp |
 | clang/include/clang/Tooling/Transformer/Stencil.h |
 | clang/unittests/Tooling/RangeSelectorTest.cpp |
 | clang/include/clang/Tooling/Transformer/RangeSelector.h |
Commit
9d10b9d99b4d93114eb5d879878fcbb70f2d5b75
by hiradityaCodeExtractor: NFC: Use Range based loop Reviewers: vsk, tejohnson, fhahn Subscribers: llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D68924 llvm-svn: 374963
|
 | llvm/lib/Transforms/Utils/CodeExtractor.cpp |
Commit
b07823f3e2da9b1c6f1866bf1725cfff5eea5b48
by lawrence_dannaupdate ScriptInterpreterPython to use File, not FILE* Summary: ScriptInterpreterPython needs to save and restore sys.stdout and friends when LLDB runs a python script. It currently does this using FILE*, which is not optimal. If whatever was in sys.stdout can not be represented as a FILE*, then it will not be restored correctly when the script is finished. It also means that if the debugger's own output stream is not representable as a file, ScriptInterpreterPython will not be able to redirect python's output correctly. This patch updates ScriptInterpreterPython to represent files with lldb_private::File, and to represent whatever the user had in sys.stdout as simply a PythonObject. This will make lldb interoperate better with other scripts or programs that need to manipulate sys.stdout. Reviewers: JDevlieghere, jasonmolenda, labath Reviewed By: labath Subscribers: lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D68962 llvm-svn: 374964
|
 | lldb/packages/Python/lldbsuite/test/python_api/file_handle/TestFileHandle.py |
 | lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h |
 | lldb/source/Core/Debugger.cpp |
 | lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp |
Commit
ecc4680c06999828e0f9e9b576164a9ebee735d0
by jlettnerRevert "[ASan] Refine diagnoses messages" This reverts commit 4d1ecadda59ce82e5fa6e28dd15bf794eee88363. llvm-svn: 374965
|
 | compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_report.cpp |
Commit
5e34ad109ced8dbdea9500ee28180315b2aeba3d
by saar[Concepts] ConceptSpecializationExprs mangling Implement mangling for CSEs to match regular template-ids. Reviewed as part of D41569. llvm-svn: 374967
|
 | clang/lib/Sema/SemaTemplate.cpp |
 | clang/test/CodeGenCXX/mangle-concept.cpp |
 | clang/lib/AST/ItaniumMangle.cpp |
Commit
8200dbbcae933e79682b0f50f344befd3890c882
by rprichard[libunwind][Android] Improve workaround for PIE zero-dlpi_addr bug Summary: The workaround added in https://reviews.llvm.org/rL299575 appears to be working around a bug in Android JB 4.1.x and 4.2.x (API 16 and 17). Starting in API 16, Android added support for PIE binaries, but the dynamic linker failed to initialize dlpi_addr to the address that the executable was loaded at. The bug was fixed in Android JB 4.3.x (API 18). Improve the true load bias calculation: * The code was assuming that the first segment would be the PT_PHDR segment. I think it's better to be explicit and search for PT_PHDR. (It will be almost as fast in practice.) * It's more correct to use p_vaddr rather than p_offset. If a PIE executable is linked with a non-zero image base (e.g. lld's -Wl,--image-base=xxxx), then we must use p_vaddr here. The "phdr->p_vaddr < image_base" condition seems unnecessary and maybe slightly wrong. If the OS were to load a binary at an address smaller than a vaddr in the binary, we would still want to do this workaround. The workaround is safe when the linker bug isn't present, because it should calculate an image_base equal to dlpi_addr. Note that with API 21 and up, this workaround should never activate for dynamically-linked objects, because non-PIE executables aren't allowed. Consolidate the fix into a single block of code that calculates the true image base, and make it clear that the fix no longer applies after API 18. See https://github.com/android/ndk/issues/505 for details. Reviewers: mclow.lists, srhines, danalbert, compnerd Reviewed By: compnerd Subscribers: srhines, krytarowski, christof, libcxx-commits Tags: #libc Differential Revision: https://reviews.llvm.org/D68971 llvm-svn: 374969
|
 | libunwind/src/AddressSpace.hpp |
Commit
7b49e8ac359bc35f95af548fbed4b7afd625caab
by craig.topper[LegalizeTypes] Don't call PromoteTargetBoolean from SplitVecOp_VSETCC. PromoteTargetBoolean calls getSetccResultType to get the return type. But we were passing it the setcc result type rather than the setcc input type. This causes an issue on X86 with avx512vl where the setcc result type for vXf16 vectors is vXi16 while the result type for vXi16 vectors is vXi1. There's really no guarantee that getSetccResultType is the type we need here. So now we just grab the extend type from getExtendForContent and extend to the original result VT of the node we're splitting. llvm-svn: 374970
|
 | llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp |
 | llvm/test/CodeGen/X86/avx512-vec-cmp.ll |
Commit
1e3e77e0b689fc3d2eab48d3a5179d6fed1941eb
by saarFix failing mangle-concept.cpp test. llvm-svn: 374971
|
 | clang/test/CodeGenCXX/mangle-concept.cpp |
Commit
8995daafa0499821ea270c9d0dc0ef96ffa54968
by craig.topper[LegalizeTypes] Don't use PromoteTargetBoolean in WidenVecOp_SETCC. Similar to r374970, but I don't have a test for this. PromoteTargetBoolean is intended to be use for legalizing an operand that needs to be promoted. It picks its type based on the return from getSetccResultType and is intended to be used when we have freedom to pick the new type. But the return type we need for WidenVecOp_SETCC is completely determined by the type of the input node. llvm-svn: 374972
|
 | llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp |
Commit
8a5bfbe6db2824642bf9a1d27a24c5b6132b244f
by dan[CMake] Disable building all Darwin libraries (except builtins) for macOS i386 when the SDK is >= 10.15. Summary: In the macOS 10.15 SDK the ability to link i386 binaries was removed and in the corresponding OS it is not possible to run macOS i386 binaries. The consequence of these changes meant that targets like `check-asan` would fail because: * Unit tests could not be linked for i386 * Lit tests for i386 would fail due to not being able to execute compiled binaries. The simplest fix to this is to simply disable building for i386 for macOS when using the 10.15 SDK (or newer). This disables building the i386 slice for most compiler-rt libraries and consequently disables the unit and lit tests for macOS i386. Note that because the `DARWIN_osx_ARCHS` CMake variable is a cache variable this patch will have no affect on existing builds unless the existing cache variable is deleted. The simplest way to deal with this is delete existing builds and just do a fresh configure. Note this should not affect the builtins which are managed with the `DARWIN_osx_BUILTIN_ARCHS` CMake cache variable. For those who wish to force using a particular set of architectures when using newer SDKs passing `-DDARWIN_osx_ARCHS=i386;x86_64;x86_64h` to CMake should provide a usable (but completely unsupported) workaround. rdar://problem/55668535 rdar://problem/47939978 Reviewers: kubamracek, yln, azhar, kcc, dvyukov, vitalybuka, cryptoad, eugenis, thakis, phosek Subscribers: mgorny, #sanitizers, llvm-commits Tags: #llvm, #sanitizers Differential Revision: https://reviews.llvm.org/D68292 llvm-svn: 374977
|
 | compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake |
Commit
8af5ada09319e5a021d57a1a03715b2fd022e415
by orlando.hyams[NFC] Replace a linked list in LiveDebugVariables pass with a DenseMap In LiveDebugVariables.cpp: Prior to this patch, UserValues were grouped into linked list chains. Each chain was the union of two sets: { A: Matching Source variable } or { B: Matching virtual register }. A ptr to the heads (or 'leaders') of each of these chains were kept in a map with the { Source variable } used as the key (set A predicate) and another with { Virtual register } as key (set B predicate). There was a search through the chains in the function getUserValue looking for UserValues with matching { Source variable, Complex expression, Inlined-at location }. Essentially searching for a subset of A through two interleaved linked lists of set A and B. Importantly, by design, the subset will only contain one or zero elements here. That is to say a UserValue can be uniquely identified by the tuple { Source variable, Complex expression, Inlined-at location } if it exists. This patch removes the linked list and instead uses a DenseMap to map the tuple { Source variable, Complex expression, Inlined-at location } to UserValue ptrs so that the getUserValue search predicate is this map key. The virtual register map now maps a vreg to a SmallVector<UserVal *> so that set B is still available for quick searches. Reviewers: aprantl, probinson, vsk, dblaikie Reviewed By: aprantl Subscribers: russell.gallop, gbedwell, bjope, hiraditya, llvm-commits Tags: #debug-info, #llvm Differential Revision: https://reviews.llvm.org/D68816 llvm-svn: 374979
|
 | llvm/lib/CodeGen/LiveDebugVariables.cpp |
Commit
ad763751565b9663bc338fa2ca5ade86c6ca22ec
by sjoerd.meijer[HardwareLoops] Optimisation remarks This adds the initial plumbing to support optimisation remarks in the IR hardware-loop pass. I have left a todo in a comment where we can improve the reporting, and will iterate on that now that we have this initial support in. Differential Revision: https://reviews.llvm.org/D68579 llvm-svn: 374980
|
 | llvm/test/CodeGen/ARM/O3-pipeline.ll |
 | llvm/test/Transforms/HardwareLoops/ARM/structure.ll |
 | llvm/test/Transforms/HardwareLoops/unconditional-latch.ll |
 | llvm/lib/CodeGen/HardwareLoops.cpp |
Commit
1c3ca61294de428c93639a35afac725b7cbb1ffb
by sam.parker[ARM][ParallelDSP] Change smlad insertion order Instead of inserting everything after the 'root' of the reduction, insert all instructions as close to their operands as possible. This can help reduce register pressure. Differential Revision: https://reviews.llvm.org/D67392 llvm-svn: 374981
|
 | llvm/test/CodeGen/ARM/ParallelDSP/pr43073.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/smladx-1.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/smlaldx-1.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/multi-use-loads.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/smlaldx-2.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/inner-full-unroll.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/exchange.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/smlad11.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/complex_dot_prod.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/blocks.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/overlapping.ll |
 | llvm/test/CodeGen/ARM/ParallelDSP/unroll-n-jam-smlad.ll |
 | llvm/lib/Target/ARM/ARMParallelDSP.cpp |
Commit
b62b4541216887fad9613f5b944d7dce120757b7
by usx[clangd] Add RemoveUsingNamespace tweak. Summary: Removes the 'using namespace' under the cursor and qualifies all accesses in the current file. E.g.: using namespace std; vector<int> foo(std::map<int, int>); Would become: std::vector<int> foo(std::map<int, int>); Subscribers: mgorny, ilya-biryukov, MaskRay, jkorous, mgrang, arphaman, kadircet, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D68562 llvm-svn: 374982
|
 | clang-tools-extra/clangd/AST.cpp |
 | clang-tools-extra/clangd/refactor/tweaks/CMakeLists.txt |
 | clang-tools-extra/clangd/unittests/TweakTests.cpp |
 | clang-tools-extra/clangd/AST.h |
 | clang-tools-extra/clangd/refactor/tweaks/RemoveUsingNamespace.cpp |
Commit
9604624ebffcbfcf56d48381d5a15e87731b358e
by llvmgnsyncbotgn build: Merge r374982 llvm-svn: 374983
|
 | llvm/utils/gn/secondary/clang-tools-extra/clangd/refactor/tweaks/BUILD.gn |
Commit
02baaca742f7cfb16e21bac916c427bcec2b0af5
by Piotr Sobczak[AMDGPU] Extend the SI Load/Store optimizer Summary: Extend the SI Load/Store optimizer to merge MIMG load instructions. Handle different flavours of image_load and image_sample instructions. When the instructions of the same subclass differ only in dmask, merge them and update dmask accordingly. Reviewers: nhaehnle Reviewed By: nhaehnle Subscribers: arsenm, kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D64911 llvm-svn: 374984
|
 | llvm/test/CodeGen/AMDGPU/merge-image-load.mir |
 | llvm/test/CodeGen/AMDGPU/merge-image-sample.mir |
 | llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp |
Commit
b13d257028a671439aea51f0ddd66c81134592bf
by nicolasweberRevert 374967 "[Concepts] ConceptSpecializationExprs mangling" This reverts commit 5e34ad109ced8dbdea9500ee28180315b2aeba3d. The mangling test fails on Windows: http://lab.llvm.org:8011/builders/clang-x64-ninja-win7/builds/15944 It also fails on ppc64le: http://lab.llvm.org:8011/builders/clang-ppc64le-linux-lnt/builds/21092 Also revert follow-up 374971 "Fix failing mangle-concept.cpp test." (it did not help on Win/ppc64le). llvm-svn: 374985
|
 | clang/lib/Sema/SemaTemplate.cpp |
 | clang/lib/AST/ItaniumMangle.cpp |
 | clang/test/CodeGenCXX/mangle-concept.cpp |
Commit
c598ef7f2432ab72fda58113cbe7a11a1a7e130c
by llvm-devSimpleLoopUnswitch - fix uninitialized variable and null dereference warnings. NFCI. llvm-svn: 374986
|
 | llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp |
Commit
729a2f6c2bd8a4f2254e3f8a93e8e0c5120ebd35
by llvm-devCGBuiltin - silence static analyzer getAs<> null dereference warnings. NFCI. The static analyzer is warning about potential null dereferences, but in these cases we should be able to use castAs<> directly and if not assert will fire for us. llvm-svn: 374987
|
 | clang/lib/CodeGen/CGBuiltin.cpp |
Commit
cebfddc0b589037909e12308ccf8dde6a2c167f2
by llvm-devCGExprConstant - silence static analyzer getAs<> null dereference warning. NFCI. The static analyzer is warning about a potential null dereference, but in these cases we should be able to use castAs<> directly and if not assert will fire for us. llvm-svn: 374988
|
 | clang/lib/CodeGen/CGExprConstant.cpp |
Commit
cfee2efc57b27ce7eed932528e219a99f934d3ca
by llvm-devCGDebugInfo - silence static analyzer dyn_cast<> null dereference warnings. NFCI. The static analyzer is warning about potential null dereferences, but in these cases we should be able to use cast<> directly and if not assert will fire for us. llvm-svn: 374989
|
 | clang/lib/CodeGen/CGDebugInfo.cpp |
Commit
95b5d459a0eb18d3a563f8ef84489635d85cdecd
by mikhail.maltsev[ARM] Add a register class for GPR pairs without SP and use it. NFCI Summary: Currently Thumb2InstrInfo.cpp uses a register class which is auto-generated by tablegen. Such approach is fragile because auto-generated classes might change when other register classes are added. For example, before https://reviews.llvm.org/D62667 we were using GPRPair_with_gsub_1_in_rGPRRegClass, but had to change it to GPRPair_with_gsub_1_in_GPRwithAPSRnospRegClass because the former class stopped being generated (this did not change the functionality though). This patch adds a register class consisting of even-odd GPR register pairs from (R0, R1) to (R10, R11), which excludes (R12, SP) and uses it in Thumb2InstrInfo.cpp instead of GPRPair_with_gsub_1_in_GPRwithAPSRnospRegClass. Reviewers: ostannard, simon_tatham, dmgreen, efriedma Reviewed By: simon_tatham Subscribers: kristof.beyls, hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D69026 llvm-svn: 374990
|
 | llvm/lib/Target/ARM/Thumb2InstrInfo.cpp |
 | llvm/test/CodeGen/ARM/ipra-reg-usage.ll |
 | llvm/lib/Target/ARM/ARMRegisterInfo.td |
Commit
b150494fc7b34b728024380782fcb5c26d125364
by llvm-devRewriteModernObjC - silence static analyzer getAs<> null dereference warnings. NFCI. The static analyzer is warning about potential null dereferences, but in these cases we should be able to use castAs<> directly and if not assert will fire for us. llvm-svn: 374991
|
 | clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp |
Commit
5a131889665fadca1306e75cd463f0da320d6717
by sjoerd.meijerRevert "[HardwareLoops] Optimisation remarks" while I investigate the PPC build bot failures. This reverts commit ad763751565b9663bc338fa2ca5ade86c6ca22ec. llvm-svn: 374992
|
 | llvm/test/Transforms/HardwareLoops/unconditional-latch.ll |
 | llvm/test/Transforms/HardwareLoops/ARM/structure.ll |
 | llvm/lib/CodeGen/HardwareLoops.cpp |
 | llvm/test/CodeGen/ARM/O3-pipeline.ll |
Commit
79769a4475b37fa011203c688985e36b972328ff
by Piotr Sobczak[InstCombine][AMDGPU] Fix crash with v3i16/v3f16 buffer intrinsics Summary: This is something of a workaround to avoid a crash later on in type legalizer (WidenVectorResult()). Also added some f16 tests, including a non-working v3f16 case with a FIXME. Reviewers: arsenm, tpr, nhaehnle Reviewed By: arsenm Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D68865 llvm-svn: 374993
|
 | llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-demanded-vector-elts.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp |
Commit
115a6ecdf173d116b253617ee529efac1ff6f2bb
by llvm-devRealFile - fix self-initialization warning in constructor. llvm-svn: 374994
|
 | llvm/lib/Support/VirtualFileSystem.cpp |
Commit
0caee2762086f6f3bb5657c1d7798df6b4789337
by llvm-devRedirectingFileSystem::openFileForRead - replace bitwise & with boolean && to fix warning Seems to be just a typo - now matches other instances which do something similar llvm-svn: 374995
|
 | llvm/lib/Support/VirtualFileSystem.cpp |