SuccessChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [LegalizeVectorOps][AArch64] Stop asking for v4f16 fp_round and (details)
  2. [X86] Use carry flag from add for (seteq (add X, -1), -1). (details)
  3. [X86][InstCombine] Add constant folding and simplification support for (details)
  4. [X86] Constant fold KSHIFT of an all zeros vector to just an all zeros (details)
  5. [ELF][RISCV] Improve error message for unknown relocations (details)
  6. DAG: Stop trying to fold FP -(x-y) -> y-x in getNode with nsz (details)
  7. [X86] Add X87 FCMOV support to X86FlagsCopyLowering. (details)
  8. [X86] Fix typo in getCMovOpcode. (details)
  9. [Attributor] AAValueConstantRange: Value range analysis using constant (details)
  10. [ELF][RISCV][test] Test absolute/PC-relative/branch relocations to (details)
  11. [MC][TargetMachine] Delete MCTargetOptions::MCPIECopyRelocations (details)
  12. add strict float for round operation (details)
  13. clang-tidy doc: Remove severities as they don't make consensus (details)
  14. [ARM] Add +mve feature to mve tests. NFC (details)
  15. [lldb][NFC] Make some checks more readable in (details)
  16. [NFC] Fixes -Wrange-loop-analysis warnings (details)
  17. Adds fixit hints to the -Wrange-loop-analysis (details)
  18. Improve Wrange-loop-analyses for rvalue reference (details)
  19. Adds -Wrange-loop-analysis to -Wall (details)
  20. [X86] Call SimplifyMultipleUseDemandedBits from combineVSelectToBLENDV (details)
  21. [InstCombine] Add tests for sub nuw of geps; NFC (details)
  22. [InstCombine] Regenerate test checks; NFC (details)
  23. [InstCombine] Add tests for PR44423 and PR44425; NFC (details)
  24. [MachineScheduler] improve reuse of 'releaseNode'method (details)
  25. [InstCombine] Fix incorrect inbounds on GEP of GEP (PR44425) (details)
  26. Revert "Adds -Wrange-loop-analysis to -Wall" (details)
  27. [lldb][NFC] Simplify CompilerType constructors/destructors and fix (details)
  28. [InstCombine] Preserve inbounds when merging with zero-index GEP (details)
  29. tests: XFAIL/UNSUPPORTED tests on Windows (details)
  30. [mlir] Fix warnings when compiling with Clang 9.0 (details)
  31. [mlir] Fix linking with LLD (details)
  32. [mlir] Fix compilation warnings (details)
  33. [polly][Support] Un-break polly tests Previously, the polly unit tests (details)
  34. [lld] Fix -Wrange-loop-analysis warnings (details)
  35. [mlir] Fix -Wrange-loo-analysis warnings (details)
  36. build: reduce CMake handling for zlib (details)
  37. build: make `LLVM_ENABLE_ZLIB` a tri-bool for users (details)
  38. [Coroutines] Rename "legacy" passes (NFC) (details)
  39. [RegisterClassInfo] Use SmallVector::assign instead of resize to make (details)
  40. [X86] Add test cases for regcall function that takes a long double as a (details)
  41. [Coroutines] const-ify internal helpers (NFC) (details)
  42. [gn build] (manually) merge 68a235d07f9e70 (details)
  43. [X86] Add x86_regcallcc calling convention to function declaration (details)
  44. [mlir][spirv] Fix links in docs and update dialect docs (details)
  45. [mlir][spirv] NFC: Move shader ABI attributes to a new file (details)
  46. [XRay][test] Fix xray-empty-firstmbb.mir and delete incorrect (details)
  47. [NFC] Make the type of X86AlignBranchBoundary compatible (details)
Commit 4ae3120ed81cb2f1f73f59a52e2a9965515ea6bf by craig.topper
[LegalizeVectorOps][AArch64] Stop asking for v4f16 fp_round and
fp_extend to be promoted.
These operations are needed as building blocks for promoting so they
can't be promoted themselves.
This appeared to work because the fp_extend query type for operation
actions is the result type, not the input type so it never triggered in
the legalizer.
For fp_round, the vector op legalizer just ended up creating a nop
fp_extend that was elided by getNode, followed by a nop fp_round that
was also elided by getNode. This was followed by a final fp_round from
v4f32 back to vf416 which was CSEd to the original node. Then legalize
vector ops just believed that node legalized to itself. LegalizeDAG took
another crack at promoting it, but didn't have a handler so just skipped
it with a debug message saying it wasn't promoted.
This patch just removes the operation actions to avoid this non-sense.
Found while trying to refactor LegalizeVectorOps to handle multiple
result nodes better.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Commit 1cc8a74de345b66fd340ddc71580ad412e8e2abf by craig.topper
[X86] Use carry flag from add for (seteq (add X, -1), -1).
If we just subtracted 1 and are checking if the result is -1. We can use
the carry flag from the ADD instead of an explicit CMP. I'm using the
same checks for the add users as EmitTest.
Fixes one case from PR44412
Differential Revision: https://reviews.llvm.org/D72019
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/pr44412.ll
Commit 374e0299cf08dc1ff2c68e7f6c159b98ab55dfb8 by craig.topper
[X86][InstCombine] Add constant folding and simplification support for
pdep and pext
The instructions use a mask to either pack disjoint bits together(pext)
or spread bits to disjoint locations(pdep). If the mask is all 0s then
no bits are extracted or deposited. If the mask is all ones, then the
source value is written to the result since no compression or expansion
happens. Otherwise if both the source and mask are constant we can walk
the bits in the source/mask and calculate the result.
There other crazier things we could do like computeKnownBits or turning
pext into shift/and if only a single contiguous range of bits is
extracted.
Fixes PR44389
Differential Revision: https://reviews.llvm.org/D71952
The file was modifiedllvm/test/Transforms/InstCombine/X86/x86-bmi-tbm.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
Commit 26bdc603f76f41a9831f6b980b5fc9a947446544 by craig.topper
[X86] Constant fold KSHIFT of an all zeros vector to just an all zeros
vector.
The file was modifiedllvm/test/CodeGen/X86/masked_store.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit e3e13db714e0d642ae44d5d392b137ec64d93a00 by maskray
[ELF][RISCV] Improve error message for unknown relocations
Like rLLD354040.
The file was modifiedlld/ELF/Arch/RISCV.cpp
Commit 4d7201e7b988b62a6ca30416fd03847b5a39dae0 by arsenm2
DAG: Stop trying to fold FP -(x-y) -> y-x in getNode with nsz
This was increasing the number of instructions when fsub was legalized
on AMDGPU with no signed zeros enabled. This fold should be guarded by
hasOneUse, and I don't think getNode should be doing that. The same fold
is already done as a regular combine through isNegatibleForFree.
This does require duplicating, even though isNegatibleForFree does this
combine already (and properly checks hasOneUse) to avoid one PPC
regression. In the regression, the outer fneg has nsz but the fsub
operand does not. isNegatibleForFree only sees the operand, and doesn't
see it's used from a nsz context. A nsz parameter needs to be added and
threaded through isNegatibleForFree to avoid this.
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/fneg-fold-legalize-dag-increase-insts.ll
The file was modifiedllvm/test/CodeGen/AArch64/arm64-fp.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit 468a0cb5f39454a26c99f1d80fa7e24936f47bf7 by craig.topper
[X86] Add X87 FCMOV support to X86FlagsCopyLowering.
Fixes PR44396
The file was modifiedllvm/lib/Target/X86/X86FlagsCopyLowering.cpp
The file was addedllvm/test/CodeGen/X86/pr44396.ll
Commit 86f48999f46f41687f152e0854bdd352250b117c by craig.topper
[X86] Fix typo in getCMovOpcode.
The 64-bit HasMemoryOperand line was using CMOV32rm instead of CMOV64rm.
Not sure how to test this. We have no test coverage that passes true for
HasMemoryOperand.
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
Commit e9963034314edf49a12ea5e29f694d8f9f52734a by uenoku.tokotoko
[Attributor] AAValueConstantRange: Value range analysis using constant
range
This patch introduces `AAValueConstantRange`, which answers a possible
range for integer value in a specific program point. One of the
motivations is propagating existing `range` metadata. (I think we need
to change the situation that `range` metadata cannot be put to
Argument).
The state is a tuple of `ConstantRange` and it is initialized to (known,
assumed) = ([-∞, +∞], empty).
Currently, AAValueConstantRange is created when AAValueSimplify cannot
simplify the value.
Supported
- BinaryOperator(add, sub, ...)
- CmpInst(icmp eq, ...)
- !range metadata
`AAValueConstantRange` is not intended to extend to polyhedral range
value analysis.
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D71620
The file was modifiedllvm/test/Transforms/Attributor/IPConstantProp/solve-after-each-resolving-undefs-for-function.ll
The file was modifiedllvm/include/llvm/Transforms/IPO/Attributor.h
The file was addedllvm/test/Transforms/Attributor/range.ll
The file was modifiedllvm/test/Transforms/Attributor/value-simplify.ll
The file was addedllvm/test/Transforms/Attributor/lvi-for-ashr.ll
The file was modifiedllvm/test/Transforms/Attributor/dereferenceable-1.ll
The file was modifiedllvm/lib/Transforms/IPO/Attributor.cpp
The file was addedllvm/test/Transforms/Attributor/lvi-after-jumpthreading.ll
The file was modifiedllvm/test/Transforms/Attributor/IPConstantProp/return-constant.ll
Commit 47e3d3ec0c5607ae3bc6181537c0622080f3af27 by maskray
[ELF][RISCV][test] Test absolute/PC-relative/branch relocations to
undefined weak symbols
The file was addedlld/test/ELF/riscv-undefined-weak.s
Commit d2bb8c16e711602481c8b33d0e2ccc9994eb6641 by maskray
[MC][TargetMachine] Delete MCTargetOptions::MCPIECopyRelocations
clang/lib/CodeGen/CodeGenModule performs the -mpie-copy-relocations
check and sets dso_local on applicable global variables. We don't need
to duplicate the work in TargetMachine shouldAssumeDSOLocal.
Verified that -mpie-copy-relocations can still emit PC relative
relocations for external variable accesses.
clang -target x86_64 -fpie -mpie-copy-relocations -c => R_X86_64_PC32
clang -target aarch64 -fpie -mpie-copy-relocations -c =>
R_AARCH64_ADR_PREL_PG_HI21+R_AARCH64_LDST64_ABS_LO12_NC
The file was modifiedclang/lib/CodeGen/BackendUtil.cpp
The file was modifiedllvm/lib/Target/TargetMachine.cpp
The file was removedllvm/test/CodeGen/X86/global-access-pie-copyrelocs.ll
The file was modifiedllvm/include/llvm/MC/MCTargetOptions.h
The file was modifiedllvm/lib/MC/MCTargetOptions.cpp
The file was modifiedllvm/include/llvm/MC/MCTargetOptionsCommandFlags.inc
Commit 8af492ade1bc5367ae529e451b9c9cd9e3d55e53 by chen3.liu
add strict float for round operation
Differential Revision: https://reviews.llvm.org/D72026
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was addedllvm/test/CodeGen/X86/vec-strict-round-128.ll
The file was addedllvm/test/CodeGen/X86/fp-strict-scalar-round.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrAVX512.td
The file was modifiedllvm/lib/Target/X86/X86InstrSSE.td
The file was modifiedllvm/test/CodeGen/X86/vec-strict-256.ll
The file was modifiedllvm/test/CodeGen/X86/vec-strict-512.ll
The file was modifiedllvm/lib/Target/X86/X86InstrFragmentsSIMD.td
Commit 773667b8c20d35c18334f8c7663df8ceacfdd2e5 by sylvestre
clang-tidy doc: Remove severities as they don't make consensus
Reviewers: jdoerfert, aaron.ballman
Reviewed By: aaron.ballman
Subscribers: whisperity, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D72049
The file was modifiedclang-tools-extra/docs/clang-tidy/checks/list.rst
Commit f323ab919a70cf9b731c93f50172c6fd9d0a918f by david.green
[ARM] Add +mve feature to mve tests. NFC
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update2.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update3.mir
The file was modifiedllvm/test/CodeGen/Thumb2/LowOverheadLoops/dont-remove-loop-update.mir
Commit 9b24dad6c06bba771b805ffd9bd047af25317e52 by Raphael Isemann
[lldb][NFC] Make some checks more readable in
Variable::PrivateAutoComplete
The file was modifiedlldb/source/Symbol/Variable.cpp
Commit 8dc7b982b4556c243e0502e6e230bdd53ddd65ff by koraq
[NFC] Fixes -Wrange-loop-analysis warnings
This avoids new warnings due to D68912 adds -Wrange-loop-analysis to
-Wall.
Differential Revision: https://reviews.llvm.org/D71857
The file was modifiedllvm/lib/Analysis/DomTreeUpdater.cpp
The file was modifiedclang-tools-extra/clang-doc/MDGenerator.cpp
The file was modifiedlldb/source/Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp
The file was modifiedclang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
The file was modifiedllvm/lib/CodeGen/InterleavedLoadCombinePass.cpp
The file was modifiedclang-tools-extra/clangd/index/MemIndex.cpp
The file was modifiedclang/lib/CodeGen/ItaniumCXXABI.cpp
The file was modifiedllvm/include/llvm/Analysis/LoopInfoImpl.h
The file was modifiedllvm/lib/MCA/Stages/InstructionTables.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
The file was modifiedllvm/lib/Support/CommandLine.cpp
The file was modifiedllvm/lib/CodeGen/InlineSpiller.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/IR/TypeFinder.cpp
The file was modifiedllvm/lib/MCA/HardwareUnits/ResourceManager.cpp
The file was modifiedclang/lib/Tooling/ASTDiff/ASTDiff.cpp
The file was modifiedclang/tools/clang-refactor/TestSupport.cpp
The file was modifiedllvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
The file was modifiedllvm/lib/Analysis/MemoryDependenceAnalysis.cpp
The file was modifiedlldb/source/Plugins/Platform/Android/AdbClient.cpp
The file was modifiedllvm/lib/ObjectYAML/CodeViewYAMLDebugSections.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
The file was modifiedclang/lib/CodeGen/CodeGenPGO.cpp
The file was modifiedlldb/source/Target/StackFrameRecognizer.cpp
The file was modifiedllvm/include/llvm/Support/GenericDomTree.h
The file was modifiedllvm/include/llvm/Analysis/LoopInfo.h
The file was modifiedllvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
The file was modifiedclang-tools-extra/clang-tidy/cppcoreguidelines/SlicingCheck.cpp
The file was modifiedllvm/lib/MC/XCOFFObjectWriter.cpp
The file was modifiedllvm/lib/Analysis/ScalarEvolution.cpp
The file was modifiedllvm/lib/Linker/IRMover.cpp
The file was modifiedllvm/lib/DebugInfo/Symbolize/Symbolize.cpp
The file was modifiedllvm/lib/Support/TargetParser.cpp
The file was modifiedclang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
The file was modifiedllvm/lib/CodeGen/RegAllocFast.cpp
Commit f022a5a792fd39a4c33f49583d24d96c70177066 by koraq
Adds fixit hints to the -Wrange-loop-analysis
Differential Revision: https://reviews.llvm.org/D68913
The file was modifiedclang/lib/AST/Decl.cpp
The file was modifiedclang/test/SemaCXX/warn-range-loop-analysis.cpp
The file was modifiedclang/lib/Sema/SemaStmt.cpp
The file was modifiedclang/include/clang/AST/Decl.h
Commit e5ab1e49f958cd8388bab617819ba78167e557d3 by koraq
Improve Wrange-loop-analyses for rvalue reference
The Wrange-loop-analyses warns if a copy is made. Suppress this warning
when a temporary is bound to a rvalue reference.
While fixing this issue also found a copy-paste error in test6, which is
also fixed.
Differential Revision: https://reviews.llvm.org/D71806
The file was modifiedclang/test/SemaCXX/warn-range-loop-analysis.cpp
The file was modifiedclang/lib/Sema/SemaStmt.cpp
Commit d8117542ac57f6051674ca70ea14c0e0d7d9b046 by koraq
Adds -Wrange-loop-analysis to -Wall
This makes the range loop warnings part of -Wall.
Fixes PR32823: Warn about accidental coping of data in range based for
Differential Revision: https://reviews.llvm.org/D68912
The file was modifiedclang/test/SemaCXX/warn-range-loop-analysis.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticGroups.td
The file was modifiedclang/test/Misc/warning-wall.c
Commit c36763d8943d3d5f6ce5f49c103d28eb8d8e0ada by craig.topper
[X86] Call SimplifyMultipleUseDemandedBits from combineVSelectToBLENDV
if the condition is used by something other than select conditions.
We might be able to bypass some nodes on the condition path.
Differential Revision: https://reviews.llvm.org/D71984
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vselect.ll
Commit 8756cd09639e9a74e8579cddcf177944dfd2b275 by nikita.ppv
[InstCombine] Add tests for sub nuw of geps; NFC
Tests for PR44419.
The file was addedllvm/test/Transforms/InstCombine/sub-gep.ll
Commit 7f48171d2f7ac8840b936cb202780fb90bc665be by nikita.ppv
[InstCombine] Regenerate test checks; NFC
The file was modifiedllvm/test/Transforms/InstCombine/pr26992.ll
The file was modifiedllvm/test/Transforms/InstCombine/getelementptr.ll
Commit 11552433ebfc7243c0b66367bdffaba52e74b354 by nikita.ppv
[InstCombine] Add tests for PR44423 and PR44425; NFC
The file was modifiedllvm/test/Transforms/InstCombine/getelementptr.ll
Commit f9f78cf6ac73d9148be9b626f418bf6770e512f6 by flo
[MachineScheduler] improve reuse of 'releaseNode'method
The 'SchedBoundary::releaseNode' is merely invoked for releasing the
Top/Bottom root nodes. However,  'SchedBoundary::releasePending' uses
its same logic to check if the Pending queue has any releasable SUnit.
It is possible to slightly modify the body of the two, allowing re-use
of the former ('releaseNode') in the latter.
Patch by Lorenzo Casalino <lorenzo.casalino93@gmail.com>
Reviewers: MatzeB, fhahn, atrick
Reviewed By: fhahn
Differential Revision: https://reviews.llvm.org/D65506
The file was modifiedllvm/lib/CodeGen/MachineScheduler.cpp
The file was modifiedllvm/include/llvm/CodeGen/MachineScheduler.h
Commit 6ba5f8c4acb494ecd99a472706075b2153ddccf3 by nikita.ppv
[InstCombine] Fix incorrect inbounds on GEP of GEP (PR44425)
This fixes https://bugs.llvm.org/show_bug.cgi?id=44425. We need to drop
inbounds if one of the GEPs is not inbounds. This was already done when
creating a new GEP, but not when modifying in place.
Differential Revision: https://reviews.llvm.org/D72059
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
The file was modifiedllvm/test/Transforms/InstCombine/pr26992.ll
The file was modifiedllvm/test/Transforms/InstCombine/phi-equal-incoming-pointers.ll
The file was modifiedllvm/test/Transforms/InstCombine/getelementptr.ll
Commit 8ca79dac559219358b0c6bb00bded30935c7aa6a by koraq
Revert "Adds -Wrange-loop-analysis to -Wall"
The sanitizer-x86_64-linux buildbot failed to build lld with -Werror.
This reverts commit d8117542ac57f6051674ca70ea14c0e0d7d9b046.
The file was modifiedclang/test/Misc/warning-wall.c
The file was modifiedclang/include/clang/Basic/DiagnosticGroups.td
The file was modifiedclang/test/SemaCXX/warn-range-loop-analysis.cpp
Commit 8dbe2f02c6d300e7222b5064b28c4d82a031647d by Raphael Isemann
[lldb][NFC] Simplify CompilerType constructors/destructors and fix
unused variable warning
CompilerType has no virtual functions and no statements in its
constructors, so we can simplify this code. This also allows Clang to
emit unused variable warnings for CompilerType, so I also removed one
unused variable that otherwise causes -Werror builds to fail.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangPersistentVariables.cpp
The file was modifiedlldb/source/Symbol/CompilerType.cpp
The file was modifiedlldb/include/lldb/Symbol/CompilerType.h
Commit 8dd9a1361958f0cc53d100124e158cbe691c4628 by nikita.ppv
[InstCombine] Preserve inbounds when merging with zero-index GEP
(PR44423)
This addresses https://bugs.llvm.org/show_bug.cgi?id=44423. If one of
the GEPs is inbounds and the other is zero-index, we can also preserve
inbounds.
Differential Revision: https://reviews.llvm.org/D72060
The file was modifiedllvm/test/Transforms/InstCombine/getelementptr.ll
The file was modifiedllvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Commit fb170fd652bf2fcc4c2cd54aaf384591d8df266b by Saleem Abdulrasool
tests: XFAIL/UNSUPPORTED tests on Windows
Now that we are building the python bindings on Windows once more, the
extended testsuite is running.  Mark a few failing tests and skip a few
tests which hang.  This should at least bring the bot back to green
without reverting the Python changes which are an improvement for the
build system and enable another ~35% of the test suite which was
previously disabled.
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/dead-strip/Makefile
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
The file was modifiedlldb/packages/Python/lldbsuite/test/commands/settings/TestSettings.py
The file was modifiedlldb/packages/Python/lldbsuite/test/functionalities/dead-strip/TestDeadStrip.py
The file was modifiedlldb/packages/Python/lldbsuite/test/source-manager/TestSourceManager.py
Commit 2b223bd1c7d5bdd019aac4f540e8b60d339348a3 by alexandre.ganea
[mlir] Fix warnings when compiling with Clang 9.0
Fixes: warning: comparison of integers of different signs: 'const
unsigned int' and '(anonymous namespace)::OperationPrinter::(anonymous
enum at F:\llvm-project\mlir\lib\IR\AsmPrinter.cpp:1444:3)'
[-Wsign-compare]
The file was modifiedmlir/lib/IR/AsmPrinter.cpp
Commit 316f6003ef2b3361919bbc421b26357bf10129ee by alexandre.ganea
[mlir] Fix linking with LLD
The issue is that /WHOLEARCHIVE is interpreted differently in LLD, which
needs the same exact path as the .lib; whereas link.exe can take the
library name, withoutout a path or extension, if that was already
supplied on the cmd-line. I'll write a follow-up patch to fix the issue
in LLD.
The file was modifiedmlir/CMakeLists.txt
Commit 6656e961c08393c3949412ef945ade0272b66fca by alexandre.ganea
[mlir] Fix compilation warnings
Fixes:
- (MSVC)
F:\llvm-project\mlir\lib\Dialect\Linalg\Analysis\DependenceAnalysis.cpp(103):
warning C4551: function call missing argument list
- (Clang) tools\mlir\lib\Dialect\SPIRV\SPIRVCanonicalization.inc(232,1):
warning: unused function 'populateWithGenerated' [-Wunused-function]
The file was modifiedmlir/lib/Dialect/Linalg/Analysis/DependenceAnalysis.cpp
The file was modifiedmlir/tools/mlir-tblgen/RewriterGen.cpp
Commit 92b68c1937cd065a2fc44d18c1099de7da19b356 by alexandre.ganea
[polly][Support] Un-break polly tests Previously, the polly unit tests
were stuck in a infinite loop. There was an edge case in
StringRef::count() introduced by
9f6b13e5cce96066d7262d224c971d93c2724795, where an empty 'Str' would
cause the function to never exit. Also fixed usage in polly.
The file was modifiedllvm/lib/Support/StringRef.cpp
The file was modifiedllvm/unittests/ADT/StringRefTest.cpp
The file was modifiedpolly/lib/Analysis/ScopDetection.cpp
Commit 681b1be774964a804beabfb7c5e3bdab8f979e4a by maskray
[lld] Fix -Wrange-loop-analysis warnings
One instance looks like a false positive:
lld/ELF/Relocations.cpp:1622:14: note: use reference type 'const
std::pair<ThunkSection *, uint32_t> &' (aka 'cons t
pair<lld::elf::ThunkSection *, unsigned int> &') to prevent copying
       for (const std::pair<ThunkSection *, uint32_t> ts :
isd->thunkSections)
It is not changed in this commit.
The file was modifiedlld/ELF/Driver.cpp
The file was modifiedlld/COFF/InputFiles.cpp
The file was modifiedlld/ELF/SyntheticSections.cpp
The file was modifiedlld/lib/ReaderWriter/MachO/MachONormalizedFileFromAtoms.cpp
The file was modifiedlld/wasm/Driver.cpp
Commit eeef50b1fee91dbe993187324003d2665ceae331 by maskray
[mlir] Fix -Wrange-loo-analysis warnings
for (const auto &x : llvm::zip(..., ...))
->
for (auto x : llvm::zip(..., ...))
The return type of zip() is a wrapper that wraps a tuple of references.
> warning: loop variable 'p' is always a copy because the range of type
'detail::zippy<detail::zip_shortest, ArrayRef<long> &, ArrayRef<long>
&>' does not return a reference [-Wrange-loop-analysis]
The file was modifiedmlir/lib/Dialect/Traits.cpp
The file was modifiedmlir/lib/IR/TypeUtilities.cpp
The file was modifiedmlir/lib/Conversion/LoopsToGPU/LoopsToGPU.cpp
The file was modifiedmlir/lib/Parser/Parser.cpp
The file was modifiedmlir/tools/mlir-tblgen/StructsGen.cpp
The file was modifiedmlir/lib/Target/LLVMIR/ModuleTranslation.cpp
The file was modifiedmlir/lib/Dialect/VectorOps/VectorOps.cpp
Commit 68a235d07f9e7049c7eb0c8091f37e385327ac28 by Saleem Abdulrasool
build: reduce CMake handling for zlib
Rather than handling zlib handling manually, use `find_package` from
CMake to find zlib properly. Use this to normalize the
`LLVM_ENABLE_ZLIB`,
`HAVE_ZLIB`, `HAVE_ZLIB_H`. Furthermore, require zlib if
`LLVM_ENABLE_ZLIB` is set to `YES`, which requires the distributor to
explicitly select whether zlib is enabled or not. This simplifies the
CMake handling and usage in the rest of the tooling.
The file was modifiedllvm/test/lit.site.cfg.py.in
The file was modifiedllvm/lib/Support/CMakeLists.txt
The file was modifiedllvm/unittests/Support/CompressionTest.cpp
The file was modifiedlld/test/lit.site.cfg.py.in
The file was modifiedclang/test/lit.site.cfg.py.in
The file was modifiedllvm/lib/Support/CRC.cpp
The file was modifiedlld/test/CMakeLists.txt
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
The file was modifiedlldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
The file was modifiedllvm/cmake/config-ix.cmake
The file was modifiedcompiler-rt/test/lit.common.configured.in
The file was modifiedllvm/test/CMakeLists.txt
The file was modifiedllvm/lib/Support/Compression.cpp
The file was modifiedclang/test/CMakeLists.txt
The file was modifiedllvm/include/llvm/Config/config.h.cmake
Commit e6c7ed6d2164a0659fd9f6ee44f1375d301e3cad by Saleem Abdulrasool
build: make `LLVM_ENABLE_ZLIB` a tri-bool for users
Treat the flag `LLVM_ENABLE_ZLIB` as a tri-bool, `FORCE_ON` being `ON`,
and `ON` being an auto-detect.  This is needed as many of the builders
enable the flag without having zlib available.
The file was modifiedllvm/lib/Support/CMakeLists.txt
The file was modifiedllvm/cmake/config-ix.cmake
The file was modifiedllvm/CMakeLists.txt
Commit 2fcf7691dfb470e57a940e3a045695515fb44e13 by modocache
[Coroutines] Rename "legacy" passes (NFC)
A series of patches beginning with https://reviews.llvm.org/D71898
propose to add an implementation of the coroutine passes to the new pass
manager. As part of these changes, the coroutine passes that implement
the legacy pass manager interface are renamed, to `<PassName>Legacy`.
This mirrors similar changes that have been made to many other passes in
LLVM as they've been transitioned to support both old and new pass
managers.
This commit splits out the renaming portion of that patch and commits it
in advance as an NFC (no functional change intended) commit. It renames:
* `CoroEarly` => `CoroEarlyLegacy`
* `CoroSplit` => `CoroSplitLegacy`
* `CoroElide` => `CoroElideLegacy`
* `CoroCleanup` => `CoroCleanupLegacy`
The file was modifiedllvm/include/llvm/Transforms/Coroutines.h
The file was modifiedllvm/lib/Transforms/Coroutines/CoroInternal.h
The file was modifiedllvm/lib/Transforms/Coroutines/CoroCleanup.cpp
The file was modifiedllvm/include/llvm-c/Transforms/Coroutines.h
The file was modifiedllvm/lib/Transforms/Coroutines/Coroutines.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroElide.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroEarly.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
Commit dac98a22052eac66295ce443eed20e21bf37d28d by craig.topper
[RegisterClassInfo] Use SmallVector::assign instead of resize to make
sure we erase previous contents from all entries of the vector.
resize only writes to elements that get added. Any elements that already
existed maintain their previous value. In this case we're trying to
erase cached information so we should use assign which will write to
every element.
Found while trying to add new tests to an existing X86 test and
noticed register allocation changing in other functions.
The file was modifiedllvm/lib/CodeGen/RegisterClassInfo.cpp
Commit 0b7b21dce46572c335c0d94b0f24464611389a36 by craig.topper
[X86] Add test cases for regcall function that takes a long double as a
parameter, but does not return a long double.
I believe we are incorrectly doing some FP stack manipulations after the
call.
The file was modifiedllvm/test/CodeGen/X86/avx512-regcall-NoMask.ll
Commit 9ce0ff2eefcd9e41fa59a6a6aadbb7fd1de87f34 by modocache
[Coroutines] const-ify internal helpers (NFC)
Several helpers internal to llvm/Transforms/Coroutines do not use
'const' for parameters that are not modified. Add const where possible.
The file was modifiedllvm/lib/Transforms/Coroutines/Coroutines.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroInternal.h
The file was modifiedllvm/lib/Transforms/Coroutines/CoroSplit.cpp
Commit 6ff6d32ebfec3150aa462cd31042b5719edb84da by thakis
[gn build] (manually) merge 68a235d07f9e70
The file was modifiedllvm/utils/gn/secondary/compiler-rt/test/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/test/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/lld/test/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/clang/test/BUILD.gn
The file was modifiedllvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
Commit 45765c52bc3d70d83e1f95640b299b2b2c978129 by craig.topper
[X86] Add x86_regcallcc calling convention to function declaration
recently added in a test.
The callsite had the calling convention, but not the function itself.
The file was modifiedllvm/test/CodeGen/X86/avx512-regcall-NoMask.ll
Commit 5d38b2610f5805525c2b6d15898d6ccf0cc12bdd by antiagainst
[mlir][spirv] Fix links in docs and update dialect docs
Summary: This commit fixes links to code directories and uses doc links
on mlir.llvm.org where possible. The docs in TableGen dialect definition
is also updated to reflect recent developments.
Reviewed By: mravishankar
Differential Revision: https://reviews.llvm.org/D72051
The file was modifiedmlir/docs/Dialects/SPIR-V.md
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVBase.td
Commit 0359e1d6be2e4449ece5063c6b2a08a5094798b4 by antiagainst
[mlir][spirv] NFC: Move shader ABI attributes to a new file
This allows us to include the definitions of these attributes in other
files without pulling in all dependencies for lowering.
Reviewed By: mravishankar
Differential Revision: https://reviews.llvm.org/D72054
The file was modifiedmlir/lib/Dialect/SPIRV/CMakeLists.txt
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVLowering.cpp
The file was modifiedmlir/include/mlir/Dialect/SPIRV/SPIRVLowering.h
The file was modifiedmlir/lib/Dialect/SPIRV/Transforms/LowerABIAttributesPass.cpp
The file was addedmlir/include/mlir/Dialect/SPIRV/TargetAndABI.h
The file was addedmlir/include/mlir/Dialect/SPIRV/TargetAndABI.td
The file was addedmlir/lib/Dialect/SPIRV/TargetAndABI.cpp
The file was modifiedmlir/include/mlir/Dialect/SPIRV/CMakeLists.txt
The file was removedmlir/include/mlir/Dialect/SPIRV/SPIRVLowering.td
Commit aa8217289864d27b023b31e3efbaa7eb05e77092 by maskray
[XRay][test] Fix xray-empty-firstmbb.mir and delete incorrect
xray-empty-function.mir
xray-empty-firstmbb.mir does not test the intended code path. Change
xray-instruction-threshold to 0 to exercise the code path.
Delete xray-empty-function.mir . Empty MachineFunction does not work.
Various passes (e.g. MachineDominatorTree) assume the presence of an
entry block.
The file was removedllvm/test/CodeGen/X86/xray-empty-function.mir
The file was modifiedllvm/test/CodeGen/X86/xray-empty-firstmbb.mir
Commit a2976c490da3b6d7253d4034ae507a760457ea18 by shengchen.kan
[NFC] Make the type of X86AlignBranchBoundary compatible
Change the type of X86AlignBranchBoundary from cl::opt<uint64_t> to
cl::opt<unsigned> since the template class cl::opt is only instantiated
with type unsigned, int, std::string, char and bool.
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp