Changes

Summary

  1. llvm-objdump: refactor SourcePrinter into separate file. NFC. (details)
  2. [mlir] Support masked N-D vector transfer ops in ProgressiveVectorToSCF. (details)
  3. [gn build] Port c623945d707c (details)
  4. Revert "[Clang] Propagate guaranteed alignment for malloc and others" (details)
  5. [X86][AMX][NFC] Make comparison operators to be complete (details)
  6. Re-reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands" (details)
  7. Recommit "[NewGVN] Track simplification dependencies for phi-of-ops." (details)
  8. [doc] Clarify constrained fcmps behavior (details)
  9. [dexter] Add keyword argument 'on_line' to DexLabel (details)
  10. [lldb][NFC] Remove a stray unicode character in the LLDB test docs (details)
  11. [RISCV] Custom lower vector F(MIN|MAX)NUM to vf(min|max) (details)
  12. [clang] Do not crash on template specialization following a fatal error (details)
  13. [InstCombine] Fixed crash when setting align attr for memalign (details)
  14. Reland "[Clang] Propagate guaranteed alignment for malloc and others" (details)
  15. [InstCombine][NFC] add tests for printf("%s", str) --> puts(str)/noop transformation. (details)
  16. [InstCombine] Fixed newly added tests; NFC (details)
  17. [llvm][NFC] Fix assert indentation (details)
  18. AMDGPU: Fix assert on inline asm on gfx90a (details)
  19. [X86] combineSetCCAtomicArith - pull out repeated ops. NFCI. (details)
  20. [lld-macho] Have tests default to targeting macos 10.15 (details)
  21. [InstCombine] Added tests for PR50096; NFC (details)
  22. [OpenCL] Fix typo in the test. (details)
  23. [OpenMP] Replace global InfoLevel with a reference to an internal one. (details)
  24. [TableGen] [docs] Improve description of NAME in Programmer's Reference (details)
  25. [X86] Add Win32/64 mulo test coverage (details)
  26. [TableGen] Correct some comments in the TableGen parser [NFC] (details)
  27. [AMDGPU] Save WWM registers in functions (details)
  28. [Hexagon] Remove redundant HVX intrinsic selection patterns, NFC (details)
  29. [AMDGPU][NFC] Update auto-gen test (details)
  30. Revert "[AMDGPU] Save WWM registers in functions" (details)
  31. [AMDGPU] Fix typo in implicit operand lists (details)
  32. [AArch64][SVE] Fix bug in lowering of fixed-length integer vector divides (details)
  33. [TTI] Fix ScalarizationCost initialization. (details)
  34. [TTI] NFC: Use InstructionCost to store ScalarizationCost in IntrinsicCostAttributes. (details)
  35. [TTI] NFC: Change getAddressComputationCost to return InstructionCost (details)
  36. [TTI] NFC: Change getGEPCost to return InstructionCost (details)
  37. [TTI] NFC: Change getMemcpyCost to return InstructionCost (details)
  38. [TTI] NFC: Change getScalingFactorCost to return InstructionCost (details)
  39. [TTI] NFC: Change getIntImmCost[Inst|Intrin] to return InstructionCost (details)
  40. [flang] Switch from %f18 to %flang_fc1 in a test (details)
  41. [AST] Sort introspection results without instantiating other data (details)
  42. [Analyzer][StdLibraryFunctionsChecker] Describe arg constraints (details)
  43. fix comment typo to cycle bots (details)
  44. [CostModel][X86] Improve v2f32 fadd reduction cost (details)
  45. [cmake] Configure policy CMP0116 (details)
  46. [PowerPC] Add vec_ctsl and vec_ctul to altivec.h (details)
  47. [TableGen] [docs] Improve BNF for the 'multiclass' statement [NFC] (details)
Commit c623945d707c8d50d0cae79b5c95a57166cd066c by Tim Northover
llvm-objdump: refactor SourcePrinter into separate file. NFC.

Preparatory patch for MachO feature.
The file was addedllvm/tools/llvm-objdump/SourcePrinter.cpp
The file was modifiedllvm/tools/llvm-objdump/CMakeLists.txt (diff)
The file was addedllvm/tools/llvm-objdump/SourcePrinter.h
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.cpp (diff)
The file was modifiedllvm/tools/llvm-objdump/llvm-objdump.h (diff)
Commit 64f7fb5dfca14bead0e4b12142da2135f950034f by springerm
[mlir] Support masked N-D vector transfer ops in ProgressiveVectorToSCF.

Mask vectors are handled similar to data vectors in N-D TransferWriteOp. They are copied into a temporary memory buffer, which can be indexed into with non-constant values.

Differential Revision: https://reviews.llvm.org/D101136
The file was modifiedmlir/test/Integration/Dialect/Vector/CPU/test-transfer-read-2d.mlir (diff)
The file was modifiedmlir/lib/Conversion/VectorToSCF/ProgressiveVectorToSCF.cpp (diff)
Commit f2bf9322b575c7c91e3ccd44be43e280c2c97e53 by llvmgnsyncbot
[gn build] Port c623945d707c
The file was modifiedllvm/utils/gn/secondary/llvm/tools/llvm-objdump/BUILD.gn (diff)
Commit 6914a0ed2b30924b188968e59a83efa07ac5fe57 by Dávid Bolvanský
Revert "[Clang] Propagate guaranteed alignment for malloc and others"

This reverts commit c2297544c04764237cedc523083c7be2fb3833d4. Some buildbots are broken.
The file was modifiedclang/lib/CodeGen/CGCall.cpp (diff)
The file was modifiedclang/include/clang/Basic/TargetInfo.h (diff)
The file was removedclang/test/CodeGen/alloc-fns-alignment.c
Commit 151e244fe687901e69e4a3c569ef3bb252b7e4fc by pengfei.wang
[X86][AMX][NFC] Make comparison operators to be complete

The previous D101039 didn't fix the SmallSet insertion issue, due to we
always return false for the comparison between 2 different nonnull BBs.
This patch makes the the comparison to be complete by comparing `MBB`
first, so that we can always get the invariant order by a single
operator.
The file was modifiedllvm/lib/Target/X86/X86PreTileConfig.cpp (diff)
Commit 791930d74087b8ae8901172861a0fd21a211e436 by stephen.tozer
Re-reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands"

Previous build failures were caused by an error in bitcode reading and
writing for DIArgList metadata, which has been fixed in e5d844b587.
There were also some unnecessary asserts that were being triggered on
certain builds, which have been removed.

This reverts commit dad5caa59e6b2bde8d6cf5b64a972c393c526c82.
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h (diff)
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-info.ll (diff)
The file was modifiedllvm/test/Transforms/InstCombine/debuginfo-sink.ll (diff)
The file was modifiedllvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h (diff)
The file was modifiedllvm/lib/IR/IntrinsicInst.cpp (diff)
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h (diff)
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp (diff)
The file was addedllvm/test/DebugInfo/salvage-nonconst-binop.ll
The file was modifiedllvm/lib/IR/DebugInfoMetadata.cpp (diff)
The file was modifiedllvm/test/Transforms/Reassociate/undef_intrinsics_when_deleting_instructions.ll (diff)
The file was modifiedllvm/include/llvm/IR/Operator.h (diff)
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp (diff)
The file was modifiedllvm/lib/IR/Operator.cpp (diff)
The file was modifiedllvm/include/llvm/IR/DebugInfoMetadata.h (diff)
The file was modifiedllvm/lib/IR/Instructions.cpp (diff)
The file was modifiedllvm/include/llvm/IR/Instructions.h (diff)
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp (diff)
The file was addedllvm/test/DebugInfo/salvage-gep.ll
Commit 2b15262f89bc0923361e1ed5b596a2d18d22afd9 by flo
Recommit "[NewGVN] Track simplification dependencies for phi-of-ops."

This recommits 4f5da356ff35a218f23f0b0c4d08aee90da7de6e, including
explicit implementations of move a constructor and deleted copy
constructors/assignment operators, to fix failures with some compilers.

This reverts the revert 74854d00e854196445727a49df58fe5768d9ed5b.
The file was modifiedllvm/lib/Transforms/Scalar/NewGVN.cpp (diff)
The file was addedllvm/test/Transforms/NewGVN/phi-of-ops-simplification-dependencies.ll
Commit 2fdedf905a6bd8e44a28191bb91f74a705b9c3f6 by thomasp
[doc] Clarify constrained fcmps behavior

Reviewed By: uweigand

Differential Revision: https://reviews.llvm.org/D101053
The file was modifiedllvm/docs/LangRef.rst (diff)
Commit 487ab5345920b2cfd2162f04b467dd39fb1a8627 by orlando.hyams
[dexter] Add keyword argument 'on_line' to DexLabel

Add optional keyword argument 'on_line' to DexLabel to label the specifed line
instead of the line the command is found on.

This will be helpful when used alongside DexDeclareFile (D99651).

Reviewed By: TWeaver

Differential Revision: https://reviews.llvm.org/D101055
The file was addeddebuginfo-tests/dexter/feature_tests/subtools/test/err_label_kwarg.cpp
The file was modifieddebuginfo-tests/dexter/Commands.md (diff)
The file was modifieddebuginfo-tests/dexter/dex/command/commands/DexLabel.py (diff)
The file was addeddebuginfo-tests/dexter/feature_tests/subtools/test/label_another_line.cpp
Commit f3e6f856c2905362f54acebc5ef500df10cb06fa by Raphael Isemann
[lldb][NFC] Remove a stray unicode character in the LLDB test docs

There was a U+2028 character in this line (a special paragraph separator).
The file was modifiedlldb/docs/resources/test.rst (diff)
Commit 83b8f8da828383074f59d331c262200d65a4833e by fraser
[RISCV] Custom lower vector F(MIN|MAX)NUM to vf(min|max)

This patch adds support for both scalable- and fixed-length vector code
lowering of the llvm.minnum and llvm.maxnum intrinsics to the equivalent
RVV instructions.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D101035
The file was addedllvm/test/CodeGen/RISCV/rvv/vfmin-sdnode.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td (diff)
The file was addedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmax.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.h (diff)
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td (diff)
The file was addedllvm/test/CodeGen/RISCV/rvv/vfmax-sdnode.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp (diff)
The file was addedllvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmin.ll
Commit ddfbdbfefae04ea71391a38ed5e9cb6975f6630b by adamcz
[clang] Do not crash on template specialization following a fatal error

There was a missing isInvalid() check leading to an attempt to
instantiate template with an empty instantiation stack.

Differential Revision: https://reviews.llvm.org/D100675
The file was addedclang/test/SemaCXX/template-specialization-fatal.cpp
The file was modifiedclang/lib/Sema/SemaTemplateDeduction.cpp (diff)
Commit 5f77e7708aa76a250d649845acf408b9564b514f by Dávid Bolvanský
[InstCombine] Fixed crash when setting align attr for memalign
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineCalls.cpp (diff)
The file was modifiedllvm/test/Transforms/InstCombine/deref-alloc-fns.ll (diff)
Commit 2cae7025c1d9e83d971f670c9a66497a8c1094ec by Dávid Bolvanský
Reland "[Clang] Propagate guaranteed alignment for malloc and others"

This relands commit 6914a0ed2b30924b188968e59a83efa07ac5fe57. Crash in InstCombine was fixed.
The file was addedclang/test/CodeGen/alloc-fns-alignment.c
The file was modifiedclang/include/clang/Basic/TargetInfo.h (diff)
The file was modifiedclang/lib/CodeGen/CGCall.cpp (diff)
Commit 05c912a439cc5ef0f76888e59188582f35fdc0bc by Dávid Bolvanský
[InstCombine][NFC] add tests for printf("%s", str) --> puts(str)/noop transformation.

Split off from D100724.

Reviewed By: xbolva00

Differential Revision: https://reviews.llvm.org/D101149
The file was modifiedllvm/test/Transforms/InstCombine/printf-2.ll (diff)
Commit 8a9fbaa0715baf9461dae899f8f20fc564917230 by Dávid Bolvanský
[InstCombine] Fixed newly added tests; NFC
The file was modifiedllvm/test/Transforms/InstCombine/printf-2.ll (diff)
Commit e60d6e91e196d91a1b9bfcc93d9f43946ea29299 by tbaeder
[llvm][NFC] Fix assert indentation

This triggers GCC's misleading-indentation checker.
The file was modifiedllvm/lib/Transforms/Scalar/MergeICmps.cpp (diff)
Commit b58332774f85efc1d7b88cd7985a93b63bf8de74 by Matthew.Arsenault
AMDGPU: Fix assert on inline asm on gfx90a

This was assuming all mayLoad instructions have one def.
The file was modifiedllvm/lib/Target/AMDGPU/SIFoldOperands.cpp (diff)
The file was addedllvm/test/CodeGen/AMDGPU/swdev282079.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/swdev282079.mir (diff)
Commit 7b32e8b96a29e7c90521019915fe73634354cb5c by llvm-dev
[X86] combineSetCCAtomicArith - pull out repeated ops. NFCI.

Reduces diff in D101074
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp (diff)
Commit fd28f71872f74cfa23f676e87e1c27c4431d6dfa by jezng
[lld-macho] Have tests default to targeting macos 10.15

D101114 enforced proper version checks, which exposed a variety of version
mismatch issues in our tests. We previously changed the test inputs to
target 10.0, which was the simpler thing to do, but we should really
just have our lit.local.cfg default to targeting 10.15, which is what is done
here. We're not likely to ever have proper support for the older versions
anyway, as that would require more work for unclear benefit; for instance,
llvm-mc seems to generate a different compact unwind format for older macOS
versions, which would cause our compact-unwind.s test to fail.

Targeting 10.15 by default causes the following behavioral changes:
* `__mh_execute_header` is now a section symbol instead of an absolute symbol
* LC_BUILD_VERSION gets emitted instead of LC_VERSION_MIN_MACOSX. The former is
  32 bytes in size whereas the latter is 16 bytes, so a bunch of hardcoded
  address offsets in our tests had to be updated.
* >= 10.6 executables are PIE by default

Note that this diff was stacked atop of a local revert of most of the test
changes in rG8c17a875150f8e736e8f9061ddf084397f45f4c5, to make review easier.

Reviewed By: #lld-macho, oontvoo

Differential Revision: https://reviews.llvm.org/D101119
The file was modifiedlld/test/MachO/map-file.s (diff)
The file was modifiedlld/test/MachO/module-asm.ll (diff)
The file was modifiedlld/test/MachO/x86-64-reloc-unsigned.s (diff)
The file was modifiedlld/test/MachO/load-command-sequence.s (diff)
The file was modifiedlld/test/MachO/lto-save-temps.ll (diff)
The file was modifiedlld/test/MachO/objc.s (diff)
The file was modifiedlld/test/MachO/compact-unwind.s (diff)
The file was modifiedlld/test/MachO/invalid/compact-unwind-bad-reloc.s (diff)
The file was modifiedlld/test/MachO/lit.local.cfg (diff)
The file was modifiedlld/test/MachO/lto-object-path.ll (diff)
The file was modifiedlld/test/MachO/invalid/invalid-relocation-pcrel.yaml (diff)
The file was modifiedlld/test/MachO/lc-linker-option.ll (diff)
The file was modifiedlld/test/MachO/invalid/invalid-relocation-length.yaml (diff)
The file was modifiedlld/test/MachO/mh-header-link.s (diff)
The file was modifiedlld/test/MachO/symtab.s (diff)
The file was modifiedlld/test/MachO/lto-archive.ll (diff)
The file was modifiedlld/test/MachO/invalid/compact-unwind-personalities.s (diff)
The file was modifiedlld/test/MachO/x86-64-stubs.s (diff)
The file was modifiedlld/test/MachO/compact-unwind-generated.test (diff)
The file was modifiedlld/test/MachO/x86-64-relocs.s (diff)
The file was modifiedlld/test/MachO/internalize.ll (diff)
The file was modifiedlld/test/MachO/linkonce.ll (diff)
The file was modifiedlld/test/MachO/local-got.s (diff)
The file was modifiedlld/test/MachO/t.s (diff)
The file was modifiedlld/test/MachO/export-trie.s (diff)
Commit 2912f42f8439184ff7bb723d43a20778195058d4 by Dávid Bolvanský
[InstCombine] Added tests for PR50096; NFC
The file was modifiedllvm/test/Transforms/InstCombine/ctpop.ll (diff)
Commit fcb45b544d3da87e0aab895eaac7903197a6c58c by anastasia.stulova
[OpenCL] Fix typo in the test.
The file was modifiedclang/test/SemaOpenCL/func.cl (diff)
Commit 59b68490122ae6ef92b1ebe45e8a5f2f7d88a401 by huberjn
[OpenMP] Replace global InfoLevel with a reference to an internal one.

Summary:
This patch improves the implementation of D100774 by replacing the global
variable introduced with a function that returns a reference to an internal
one. This removes the need to define the variable in every plugin that uses it.

Reviewed By: JonChesterfield

Differential Revision: https://reviews.llvm.org/D101102
The file was modifiedopenmp/libomptarget/src/interface.cpp (diff)
The file was modifiedopenmp/libomptarget/plugins/generic-elf-64bit/src/rtl.cpp (diff)
The file was modifiedopenmp/libomptarget/include/Debug.h (diff)
The file was modifiedopenmp/libomptarget/plugins/remote/src/rtl.cpp (diff)
The file was modifiedopenmp/libomptarget/plugins/cuda/src/rtl.cpp (diff)
The file was modifiedopenmp/libomptarget/plugins/amdgpu/src/rtl.cpp (diff)
Commit 6a067cdb06a0d7afd2d74ec7303a97403bc096ec by Paul C. Anagnostopoulos
[TableGen] [docs] Improve description of NAME in Programmer's Reference

Also use "parent class" consistently and add a note about the term.

Differential Revision: https://reviews.llvm.org/D100867
The file was modifiedllvm/docs/TableGen/ProgRef.rst (diff)
Commit c2da0cdff5683550b0ceb8739c862dc0e4e9b204 by llvm-dev
[X86] Add Win32/64 mulo test coverage

Part of an investigation to solve the windows regressions caused by rG13ec913bdf50
The file was modifiedllvm/test/CodeGen/X86/xmulo.ll (diff)
Commit 9d609adcb0b595972e3384c2172bb205677b02fc by Paul C. Anagnostopoulos
[TableGen] Correct some comments in the TableGen parser [NFC]

Differential Revision: https://reviews.llvm.org/D101088
The file was modifiedllvm/lib/TableGen/TGParser.cpp (diff)
Commit 91464c30bfcf731ccb7f9d6ef6d26e8c1657a6e6 by sebastian.neubauer
[AMDGPU] Save WWM registers in functions

The values of registers in inactive lanes needs to be saved during
function calls.

Save all registers used for whole wave mode, similar to how it is done
for VGPRs that are used for SGPR spilling.

Differential Revision: https://reviews.llvm.org/D99429
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp (diff)
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h (diff)
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp (diff)
The file was modifiedllvm/lib/Target/AMDGPU/SIPreAllocateWWMRegs.cpp (diff)
The file was addedllvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
Commit 8ebdb58aac01484c68106f7566e6d163955ba540 by kparzysz
[Hexagon] Remove redundant HVX intrinsic selection patterns, NFC

Deleted HexagonMapAsm2IntrinV65.gen.td that wasn't included anywhere,
moved V6_vrmpy*_rtt* patterns to HexagonIntrinsics.td.

Touch CMakeLists.txt to force re-cmake (somehow the unused file was
listed as a dependency in the generated makefiles).
The file was modifiedllvm/lib/Target/Hexagon/HexagonIntrinsics.td (diff)
The file was modifiedllvm/lib/Target/Hexagon/CMakeLists.txt (diff)
The file was removedllvm/lib/Target/Hexagon/HexagonMapAsm2IntrinV65.gen.td
Commit 83a3395b30d2158067ad31e9a7a3e0adfff74139 by Piotr Sobczak
[AMDGPU][NFC] Update auto-gen test

Most likely the "glc" was not added to the test when
the volatile loads started generating those bits.
The file was modifiedllvm/test/CodeGen/AMDGPU/multilevel-break.ll (diff)
Commit 22d99cb63f9688039598ed2815424854663fbf48 by sebastian.neubauer
Revert "[AMDGPU] Save WWM registers in functions"

This reverts commit 91464c30bfcf731ccb7f9d6ef6d26e8c1657a6e6.

Seems to break tests on windows.
The file was modifiedllvm/lib/Target/AMDGPU/SIFrameLowering.cpp (diff)
The file was modifiedllvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h (diff)
The file was modifiedllvm/lib/Target/AMDGPU/SIPreAllocateWWMRegs.cpp (diff)
The file was removedllvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
The file was modifiedllvm/lib/Target/AMDGPU/SIRegisterInfo.cpp (diff)
Commit 5802cbefc1bffce10ecd0611f08f8433283cdeeb by jay.foad
[AMDGPU] Fix typo in implicit operand lists

Several tests had a typo where they mentioned sgpr17 twice instead of
sgpr17 and sgpr27. This had a significant effect on the
"scavenge_sgpr_pei_no_sgprs" tests because there was actually an sgpr
available, namely sgpr27.

Differential Revision: https://reviews.llvm.org/D100960
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir (diff)
The file was modifiedllvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir (diff)
Commit c19c0ad6813d05802d4f9e7a7d25b897beb87525 by joe.ellis
[AArch64][SVE] Fix bug in lowering of fixed-length integer vector divides

The function AArch64TargetLowering::LowerFixedLengthVectorIntDivideToSVE
previously assumed the operands were full vectors, but this is not
always true. This function would produce bogus if the division operands
are not full vectors, resulting in miscompiles when dividing 8-bit or
16-bit vectors.

The fix is to perform an extend + div + truncate for non-full vectors,
instead of the usual unpacking and unzipping logic. This is an additive
change which reduces the non-full integer vector divisions to a pattern
recognised by the existing lowering logic.

For future reference, an example of code that would miscompile before
this patch is below:

     1  int8_t foo(unsigned N, int8_t *a, int8_t *b, int8_t *c) {
     2      int8_t result = 0;
     3      for (int i = 0; i < N; ++i) {
     4          result += (a[i] / b[i]) / c[i];
     5      }
     6      return result;
     7  }

Differential Revision: https://reviews.llvm.org/D100370
The file was modifiedllvm/test/CodeGen/AArch64/sve-fixed-length-int-div.ll (diff)
The file was modifiedllvm/test/CodeGen/AArch64/sve-fixed-length-int-rem.ll (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp (diff)
Commit f79d055791f938236309620d5118556cd8fcbfe2 by daniil.fukalov
[TTI] Fix ScalarizationCost initialization.

In cases when ScalarizationCostPassed has no value, UINT_MAX is actually used
for cost estimation in `return ScalarCalls * ScalarCost + ScalarizationCost`.

Reviewed By: sdesmalen

Differential Revision: https://reviews.llvm.org/D101099
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h (diff)
The file was modifiedllvm/test/Analysis/CostModel/X86/masked-intrinsic-cost.ll (diff)
The file was modifiedllvm/test/Analysis/CostModel/X86/masked-intrinsic-cost-inseltpoison.ll (diff)
Commit 9ab17a60ebf7145bd02578024b76a6191a4fdec5 by daniil.fukalov
[TTI] NFC: Use InstructionCost to store ScalarizationCost in IntrinsicCostAttributes.

This patch migrates the TTI cost interfaces to return an InstructionCost.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Reviewed By: samparker

Differential Revision: https://reviews.llvm.org/D101151
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp (diff)
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h (diff)
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp (diff)
Commit e0edfa052fdb984efb6a746fcbbdc3519433757e by sander.desmalen
[TTI] NFC: Change getAddressComputationCost to return InstructionCost

This patch migrates the TTI cost interfaces to return an InstructionCost.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Differential Revision: https://reviews.llvm.org/D100561
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp (diff)
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp (diff)
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h (diff)
The file was modifiedllvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h (diff)
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h (diff)
Commit 9ba07f37f8e0641dfc6360ad4a67e0be0bd58267 by sander.desmalen
[TTI] NFC: Change getGEPCost to return InstructionCost

This patch migrates the TTI cost interfaces to return an InstructionCost.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Differential Revision: https://reviews.llvm.org/D100562
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp (diff)
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h (diff)
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h (diff)
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h (diff)
Commit 008a072ded63e3342fab94f4923bf3acdac6780e by sander.desmalen
[TTI] NFC: Change getMemcpyCost to return InstructionCost

This patch migrates the TTI cost interfaces to return an InstructionCost.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Differential Revision: https://reviews.llvm.org/D100563
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h (diff)
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h (diff)
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp (diff)
Commit 43ace8b5ce07a90b3562bbd0488f88e6290627c4 by sander.desmalen
[TTI] NFC: Change getScalingFactorCost to return InstructionCost

This patch migrates the TTI cost interfaces to return an InstructionCost.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Differential Revision: https://reviews.llvm.org/D100564
The file was modifiedllvm/include/llvm/CodeGen/TargetLowering.h (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp (diff)
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h (diff)
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h (diff)
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp (diff)
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.h (diff)
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h (diff)
The file was modifiedllvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp (diff)
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h (diff)
The file was modifiedllvm/include/llvm/CodeGen/BasicTTIImpl.h (diff)
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp (diff)
Commit f9a50f04bacdbb4dde147e8994443377f33e5f46 by sander.desmalen
[TTI] NFC: Change getIntImmCost[Inst|Intrin] to return InstructionCost

This patch migrates the TTI cost interfaces to return an InstructionCost.

See this patch for the introduction of the type: https://reviews.llvm.org/D91174
See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2020-November/146408.html

Differential Revision: https://reviews.llvm.org/D100565
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Target/ARM/ARMTargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Target/Lanai/LanaiTargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp (diff)
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/Target/PowerPC/PPCTargetTransformInfo.h (diff)
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h (diff)
The file was modifiedllvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h (diff)
The file was modifiedllvm/lib/Transforms/Scalar/ConstantHoisting.cpp (diff)
The file was modifiedllvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp (diff)
The file was modifiedllvm/lib/CodeGen/CodeGenPrepare.cpp (diff)
Commit 2f67267a93c87261414a4aa4c6cb9d20a489a0df by andrzej.warzynski
[flang] Switch from %f18 to %flang_fc1 in a test

This patch updates the final test that can be shared between the old and
the new Flang drivers and that has not been ported yet. %f18 (always
expanded as `f18`) is replaced with %flang_fc1 (expanded as either `f18`
or `flang-new -fc1`, depending on `FLANG_BUILD_NEW_DRIVER`).

This test should've been updated in https://reviews.llvm.org/D100309,
but I missed it then. That's because this test contains non-ascii
characters and `grep -I %f18` (as well as other grep-like tools) skips
it because it's interpreted as a data/binary file. In fact, it's just a
text file with non-ascii chars.

Since this is an obvious omission from D100309 (reviewed, accepted and
merged), I'm sending this without a review to reduce the noise on
Phabricator.
The file was modifiedflang/test/Evaluate/folding05.f90 (diff)
Commit 35918bcb6f507cb3d28f80ab4408125ba292400c by steveire
[AST] Sort introspection results without instantiating other data

Avoid string allocation in particular, but also avoid attempting to
impose any particular ordering based on formatted results.

Differential Revision: https://reviews.llvm.org/D101054
The file was modifiedclang/lib/Tooling/NodeIntrospection.cpp (diff)
Commit a7cb951fa40df14d98c51059194ae42855b96a08 by gabor.marton
[Analyzer][StdLibraryFunctionsChecker] Describe arg constraints

In this patch, I provide a detailed explanation for each argument
constraint. This explanation is added in an extra 'note' tag, which is
displayed alongside the warning.
Since these new notes describe clearly the constraint, there is no need
to provide the number of the argument (e.g. 'Arg3') within the warning.
However, I decided to keep the name of the constraint in the warning (but
this could be a subject of discussion) in order to be able to identify
the different kind of constraint violations easily in a bug database
(e.g. CodeChecker).

Differential Revision: https://reviews.llvm.org/D101060
The file was modifiedclang/test/Analysis/std-c-library-functions-arg-constraints.c (diff)
The file was modifiedclang/test/Analysis/std-c-library-functions-arg-constraints.cpp (diff)
The file was modifiedclang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp (diff)
The file was addedclang/test/Analysis/std-c-library-functions-arg-constraints-notes.cpp
Commit fcf59cc917e093980389dd6d124c544ea345fcbf by thakis
fix comment typo to cycle bots
The file was modifiedlld/ELF/Arch/AVR.cpp (diff)
Commit 043bc88dbada3efd8bc811efc9fef610f57d47f4 by llvm-dev
[CostModel][X86] Improve v2f32 fadd reduction cost

This was being reported as a similar cost to v4f32 when its a lot cheaper (just a shufps+addps).
The file was modifiedllvm/test/Analysis/CostModel/X86/reduce-fadd.ll (diff)
The file was modifiedllvm/lib/Target/X86/X86TargetTransformInfo.cpp (diff)
Commit 638d84b60b7e7b7fa9099939ab4de2ec1e0c52c3 by davelee.com
[cmake] Configure policy CMP0116

Using `cmake` >=3.20 results in many warnings about this new policy. This change silences the warnings by explicitly declaring use of the "OLD" behavior.

This policy currently affects only one place: the `tablegen()` function in `TableGen.cmake`.

Differential Revision: https://reviews.llvm.org/D101083
The file was modifiedllvm/CMakeLists.txt (diff)
Commit 6725b90a02c6d2696385c0328bd000516913ce4b by nemanja.i.ibm
[PowerPC] Add vec_ctsl and vec_ctul to altivec.h

These are added for compatibility with XLC. They are similar to
vec_cts and vec_ctu except that the result is a doubleword vector
regardless of the parameter type.
The file was modifiedllvm/test/CodeGen/PowerPC/builtins-ppc-elf2-abi.ll (diff)
The file was modifiedclang/include/clang/Basic/BuiltinsPPC.def (diff)
The file was modifiedclang/lib/Headers/altivec.h (diff)
The file was modifiedllvm/include/llvm/IR/IntrinsicsPowerPC.td (diff)
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td (diff)
The file was modifiedclang/test/CodeGen/builtins-ppc-vsx.c (diff)
Commit d9187f50b98f14df55a1d9a675b39e7367ac3b43 by Paul C. Anagnostopoulos
[TableGen] [docs] Improve BNF for the 'multiclass' statement [NFC]
The file was modifiedllvm/docs/TableGen/ProgRef.rst (diff)