SuccessChanges

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

Summary

  1. [FileCheck] Add missing %ProtectFileCheckOutput to FileCheck tests (details)
  2. Add a Type::Payload typedef. (NFC) (details)
  3. Replace uint32_t with typedef (NFC) (details)
  4. HIP: Ensure new denormal mode attributes are set (details)
  5. [PPCInstPrinter] Print conditional branches as `bt 2, $target` instead of `bt 2, .+$imm` (details)
  6. AMDGPU: Make HIPToolChain a subclass of AMDGPUToolChain (details)
  7. [ELF][test] Add 'REQUIRES: x86' to threads.s (details)
  8. Fix MSan false positive due to select folding. (details)
  9. [mlir][spirv] Include SPIR-V op definitions in main SPIR-V doc (details)
  10. [libomptarget][nfc] Move non-freestanding headers out of common (details)
  11. [OPENMP50]Fix size calculation for array shaping expression in the (details)
  12. [debugserver/ARM64] Make sure watchpoints hit are attributed correctly. (details)
  13. [lit] Refine adoption of argparse --version action (details)
  14. [OPENMP50]Codegen for array shaping expression in map clauses. (details)
  15. [OPENMP][DOCS]Mark array shaping as done, NFC. (details)
  16. Forward WrapperFrontendAction::shouldEraseOutputFiles() (details)
  17. Fix leak in GVNSink introduced in D72467. (details)
  18. [analyzer] Use IgnoreImpCasts() instead of reimplementing it. (details)
  19. [Support] Delete ioctl TIOCGWINSZ (details)
  20. AMDGPU/GlobalISel: Fix insert point when lowering G_FMAD (details)
  21. [VectorOps] Implement a simple folder for identity vector.transpose operations. (details)
  22. [Driver] Don't pass -fmessage-length=0 to CC1 (details)
  23. Fix diagnostics where _Atomic can't be applied (details)
  24. [Driver] Don't pass -fobjc-rumtime= for non-ObjC input (details)
  25. Fix simultaneous .gcda creation (details)
  26. [X86][MC] Disable Prefix padding after hardcode/prefix (details)
  27. [PowerPC] Don't generate ST_VSR_SCAL_INT if power8-vector is disabled (details)
  28. [RISCV] Split RISCVISelDAGToDAG.cpp to RISCVISelDAGToDAG.h and RISCVISelDAGToDAG.cpp (details)
  29. [clang][xray] Add xray attributes to functions without decls too (details)
  30. [mlir][Linalg] Introduce linalg.pooling_min/max/sum op. (details)
  31. [mlir][Linalg] Extend fusion to support WAW atm on buffers. (details)
  32. [lld][WebAssembly] Early error if output file cannot be created. (details)
  33. [Driver] Flip the CC1 default of -fdiagnostics-show-option (details)
  34. [Frontend] Replace CC1 option -masm-verbose with -fno-verbose-asm (details)
  35. [clangd] Add a flag to turn on recovery-expr. (details)
  36. [X86] Run XOP vector rotation tests with/without AVX2 (details)
  37. [X86][AVX] Add additional 256/512-bit test cases for PACKSS/PACKUS shuffle patterns (details)
  38. [lldb] Allow expect_expr without a running target (details)
  39. [VectorUtils][X86] De-templatize scaleShuffleMask and 2 X86 shuffle mask helpers and move their implementation to cpp files (details)
  40. [TTI] Remove getCallCost (details)
  41. [MLIR] Replace OpBuilder(Block) with atBlockBegin and atBlockEnd (details)
  42. [lldb][NFC] Modernize TestCallUserAnonTypedef (details)
  43. [AVR] Fix function pointer address space (details)
  44. [MLIR] Rename collapsePLoops -> collapseParallelLoops (details)
  45. [lldb][NFC] Modernize call-function tests (details)
  46. [lldb][NFC] Modernize TestXValuePrinting (details)
  47. [Verifier] Verify matrix dimensions operands match vector size. (details)
  48. [DAGCombiner] Require ninf for sqrt recip estimation (details)
  49. [Matrix] Add new test case with getelementptr constant exprs. (details)
  50. tsan: fix Go build on Windows (details)
  51. Add a method to build affine maps with zero or more results. (details)
  52. [clang] Minor cleanup in CloneDetectionTest (details)
  53. [ConstantRange] Use APInt::or/APInt::and for single elements. (details)
Commit 8f8c4950fead500bf1086f36f21b0b52e93b2b05 by jdenny.ornl
[FileCheck] Add missing %ProtectFileCheckOutput to FileCheck tests

I'm committing this fixup without review because it's an obvious
continuation of D65121 (committed at f471eb8e99b5).
The file was modifiedllvm/test/FileCheck/numeric-defines-diagnostics.txt
The file was modifiedllvm/test/FileCheck/numeric-expression.txt
Commit 00efcd6fffa533e5a4aa5646e678d57df0f9aca8 by Adrian Prantl
Add a Type::Payload typedef. (NFC)

This addresses review feedback from Raphael that I missed before
landing the change that introduced the payload field.
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
The file was modifiedlldb/include/lldb/Symbol/Type.h
Commit ec11c5615a7c153a68d098903edebbb92719f5f9 by Adrian Prantl
Replace uint32_t with typedef (NFC)
The file was modifiedlldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
Commit c9d65a48af1d7bbfed7e785613cc9d9acf71821b by arsenm2
HIP: Ensure new denormal mode attributes are set

Apparently HIPToolChain does not subclass from AMDGPUToolChain, so
this was not applying the new denormal attributes. I'm not sure why
this doesn't subclass. Just copy the implementation for now.
The file was modifiedclang/lib/Driver/ToolChains/HIP.h
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
The file was modifiedclang/test/Driver/cuda-flush-denormals-to-zero.cu
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.cpp
The file was modifiedclang/lib/Driver/ToolChains/AMDGPU.h
Commit 4af7560b3751259c4acf63411f42ab5c9989ef26 by maskray
[PPCInstPrinter] Print conditional branches as `bt 2, $target` instead of `bt 2, .+$imm`

Follow-up of D76591.

Reviewed By: #powerpc, sfertile

Differential Revision: https://reviews.llvm.org/D76907
The file was modifiedlld/test/ELF/ppc64-reloc-rel.s
The file was modifiedlld/test/ELF/ppc64-split-stack-prologue-adjust-success.s
The file was modifiedlld/test/ELF/ppc32-reloc-rel.s
The file was modifiedllvm/test/tools/llvm-objdump/XCOFF/disassemble-all.test
The file was modifiedllvm/test/tools/llvm-objdump/ELF/PowerPC/branch-offset.s
The file was modifiedlld/test/ELF/ppc32-long-thunk.s
The file was modifiedllvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp
The file was modifiedlld/test/ELF/ppc32-call-stub-pic.s
The file was modifiedlld/test/ELF/ppc64-split-stack-adjust-size-success.s
The file was modifiedllvm/test/MC/PowerPC/ppc64-prefix-align.s
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrInfo.td
The file was modifiedllvm/test/CodeGen/PowerPC/alignlongjumptest.mir
The file was modifiedlld/test/ELF/ppc64-split-stack-adjust-overflow.s
The file was modifiedllvm/test/CodeGen/PowerPC/aix-return55.ll
Commit 175e42303bb2a4253c65126666b1ae05b32b0004 by arsenm2
AMDGPU: Make HIPToolChain a subclass of AMDGPUToolChain

This fixes some code duplication. This is also a step towards
consolidating builtin library handling.
The file was modifiedclang/lib/Driver/ToolChains/HIP.h
The file was modifiedclang/lib/Driver/ToolChains/HIP.cpp
Commit 0f44a09757f4f45e527e2bb79f15eb16967457a1 by maskray
[ELF][test] Add 'REQUIRES: x86' to threads.s
The file was modifiedlld/test/ELF/threads.s
Commit f9471b001089c744050c7a9cff39ebda2ff69011 by eugenis
Fix MSan false positive due to select folding.

Summary:
Select folding in JumpThreading can create a conditional branch on a
code patch that did not have one in the original program. This is not a
valid transformation in sanitize_memory functions.

Note that JumpThreading does select folding in 3 different places. Two
of them seem safe - they apply to a select instruction in a BB that ends
with an unconditional branch to another BB, which (in turn) ends with a
conditional branch or a switch with the same condition.

Fixes PR45220.

Reviewers: glider, dvyukov, efriedma

Subscribers: hiraditya, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76332
The file was addedllvm/test/Transforms/JumpThreading/select-unfold-msan.ll
The file was modifiedllvm/lib/Transforms/Scalar/JumpThreading.cpp
Commit ee77607ca6ceaf13801bdb98307fd26c78fbc92a by antiagainst
[mlir][spirv] Include SPIR-V op definitions in main SPIR-V doc

Differential Revision: https://reviews.llvm.org/D77174
The file was modifiedmlir/include/mlir/Dialect/SPIRV/CMakeLists.txt
The file was modifiedmlir/docs/Dialects/SPIR-V.md
Commit 09834f976125545c74b8c1161be5204352165368 by jonchesterfield
[libomptarget][nfc] Move non-freestanding headers out of common

Summary:
[libomptarget][nfc] Move non-freestanding headers out of common

Lowers the bar for building deviceRTL.
Drops math.h entirely as it wasn't used and libm is a big dependency.

Reviewers: jdoerfert, ABataev, grokos

Reviewed By: jdoerfert

Subscribers: jvesely, openmp-commits

Tags: #openmp

Differential Revision: https://reviews.llvm.org/D77071
The file was modifiedopenmp/libomptarget/deviceRTLs/amdgcn/src/target_impl.h
The file was modifiedopenmp/libomptarget/deviceRTLs/common/debug.h
The file was modifiedopenmp/libomptarget/deviceRTLs/common/omptarget.h
The file was modifiedopenmp/libomptarget/deviceRTLs/nvptx/src/target_impl.h
The file was modifiedopenmp/libomptarget/deviceRTLs/common/src/data_sharing.cu
Commit e094dd5adcbdd7f49226d93c3964f99bf5a25ba6 by a.bataev
[OPENMP50]Fix size calculation for array shaping expression in the
codegen.

Need to include the size of the pointee type when trying to calculate
the total size of the array shaping expression.
The file was modifiedclang/test/OpenMP/task_codegen.c
The file was modifiedclang/lib/Sema/SemaExpr.cpp
The file was modifiedclang/test/OpenMP/depobj_codegen.cpp
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/test/OpenMP/task_depend_messages.cpp
Commit 64799fbebddc9877f78c7501b0b986b7afe84d6b by ditaliano
[debugserver/ARM64] Make sure watchpoints hit are attributed correctly.

This didn't happen for arm64 if you have watches for variables
that are contigous in memory.

<rdar://problem/55135006>
The file was addedlldb/test/API/commands/watchpoints/watchpoint_count/TestWatchpointCount.py
The file was addedlldb/test/API/commands/watchpoints/watchpoint_count/main.c
The file was addedlldb/test/API/commands/watchpoints/watchpoint_count/Makefile
The file was modifiedlldb/tools/debugserver/source/MacOSX/arm64/DNBArchImplARM64.cpp
Commit a3fab31acd6b99dd70334df7fbfae22b914e3214 by julian.lettner
[lit] Refine adoption of argparse --version action

The real work for this was already done by serge-sans-paille [1].
Thanks for this!

[1] 1d4849379f71a0f5d73202a291c0b709f7cafbc5
The file was modifiedllvm/utils/lit/lit/cl_arguments.py
The file was modifiedllvm/utils/lit/tests/usage.py
The file was removedllvm/utils/lit/tests/version.py
The file was modifiedllvm/utils/lit/lit/main.py
Commit c2aa543237843fa7b7c0191b6685062b3512f245 by a.bataev
[OPENMP50]Codegen for array shaping expression in map clauses.

Added codegen support for array shaping operations in map/to/from
clauses.
The file was modifiedclang/test/OpenMP/target_map_codegen.cpp
The file was modifiedclang/lib/Sema/SemaOpenMP.cpp
The file was modifiedclang/test/OpenMP/target_update_codegen.cpp
The file was modifiedclang/lib/CodeGen/CGOpenMPRuntime.cpp
The file was modifiedclang/test/OpenMP/target_update_ast_print.cpp
The file was modifiedclang/test/OpenMP/target_data_ast_print.cpp
The file was modifiedclang/test/OpenMP/target_map_messages.cpp
Commit 39ada4688936d165adf1a3c22b250034bab8f8a3 by a.bataev
[OPENMP][DOCS]Mark array shaping as done, NFC.
The file was modifiedclang/docs/OpenMPSupport.rst
Commit c322d328aa331639f647711aee44c5dddfadd337 by blangmuir
Forward WrapperFrontendAction::shouldEraseOutputFiles()

Per the documentation, this class is supposed to forward every virtual
method, but we had missed on (shouldEraseOutputFiles). This fixes using
a wrapped frontend action over the PCH generator when using
-fallow-pch-with-compiler-errors. I do not think any upstream wrapper
actions can test this.

Differential Revision: https://reviews.llvm.org/D77180

rdar://61110294
The file was modifiedclang/include/clang/Frontend/FrontendAction.h
The file was modifiedclang/lib/Frontend/FrontendAction.cpp
Commit ba4764c2cc14b0b495af539a913de10cf8268420 by efriedma
Fix leak in GVNSink introduced in D72467.
The file was modifiedllvm/lib/Transforms/Scalar/GVNSink.cpp
Commit 7ea64ae3afe4ad98e6753b9f74b30019113f719c by thakis
[analyzer] Use IgnoreImpCasts() instead of reimplementing it.

No intended behavior change.

Differential Revision: https://reviews.llvm.org/D77022
The file was modifiedclang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
Commit a3eb3d3d92d037fe3c9deaad87f6fc42fe9ea766 by maskray
[Support] Delete ioctl TIOCGWINSZ

D61326 essentially disabled `ioctl(FileID, TIOCGWINSZ, &ws)`.  Nobody
has complained for one year. So let's just delete the code.
The file was modifiedllvm/lib/Support/Unix/Process.inc
Commit 43e576593e78b1a9b7d22abdc2f6d339a116fa6b by arsenm2
AMDGPU/GlobalISel: Fix insert point when lowering G_FMAD
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-urem.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-udiv.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmad.s16.mir
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fmad.s32.mir
Commit 855e738be250fe9dea211082a4acf668ddb4aca1 by grosul
[VectorOps] Implement a simple folder for identity vector.transpose operations.

Differential Revision: https://reviews.llvm.org/D77088
The file was modifiedmlir/lib/Dialect/Vector/VectorOps.cpp
The file was modifiedmlir/test/Dialect/Vector/canonicalize.mlir
The file was modifiedmlir/include/mlir/Dialect/Vector/VectorOps.td
Commit 4805901930f27f80d3b97ccd88e4f5240b784abd by maskray
[Driver] Don't pass -fmessage-length=0 to CC1

-fmessage-length=0 is common (unless the environment variable COLUMNS
is set and exported. This simplifies a common CC1 command line.
The file was modifiedclang/test/Misc/message-length.c
The file was modifiedclang/test/Misc/unprintable.c
The file was modifiedclang/test/Frontend/source-col-map.c
The file was modifiedclang/include/clang/Driver/CC1Options.td
The file was modifiedclang/test/Misc/unnecessary-elipses.cpp
The file was modifiedclang/test/Misc/diag-line-wrapping.cpp
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was addedclang/test/Driver/fmessage-length.c
The file was modifiedclang/test/Misc/wrong-encoding2.c
The file was modifiedclang/test/Driver/rewrite-legacy-objc.m
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/Driver/rewrite-objc.m
The file was modifiedclang/include/clang/Driver/Options.td
Commit f93aed66f22f230213a99205f8bcec975c45d8ba by rtrieu
Fix diagnostics where _Atomic can't be applied

adb290d97482aa9311ee4b4b5917a0f2ece55b30 added a new case to
err_atomic_specifier_bad_type.  The diagnostic has two %select's
controlled by the same argument, but only the first was updated to have
the new case.  Add the extra case for the second %select and add a
test case that exercises the last case.
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/test/SemaCXX/atomic-type.cpp
Commit 3341dc7339969d3cb1bff30b49d866db041d689b by maskray
[Driver] Don't pass -fobjc-rumtime= for non-ObjC input
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/Driver/darwin-objc-options.m
The file was modifiedclang/lib/Driver/ToolChains/Clang.h
Commit 9180c14fe4d7f9d6f65da8bc593cd61796fdc50a by t-kawashima
Fix simultaneous .gcda creation

The intent of the `llvm_gcda_start_file` function is that only
one process create the .gcda file and initialize it to be updated
by other processes later.

Before this change, if multiple processes are started simultaneously,
some of them may initialize the file because both the first and
second `open` calls may succeed in a race condition and `new_file`
becomes 1 in those processes. This leads incorrect coverage counter
values. This often happens in MPI (Message Passing Interface) programs.
The test program added in this change is a simple reproducer.

This change ensures only one process creates/initializes the file by
using the `O_EXCL` flag.

Differential Revision: https://reviews.llvm.org/D76206
The file was addedcompiler-rt/test/profile/Posix/instrprof-gcov-parallel.test
The file was modifiedcompiler-rt/lib/profile/GCDAProfiling.c
The file was addedcompiler-rt/test/profile/Inputs/instrprof-gcov-parallel.driver.c
The file was addedcompiler-rt/test/profile/Inputs/instrprof-gcov-parallel.target.c
Commit d0efd7bfcf689c2a72664265e59dd7a3e1a52762 by shengchen.kan
[X86][MC] Disable Prefix padding after hardcode/prefix

Reviewers: reames, MaskRay, craig.topper, LuoYuanke, jyknight, eli.friedman

Reviewed By: craig.topper

Subscribers: hiraditya, llvm-commits, annita.zhang

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D76475
The file was modifiedllvm/include/llvm/MC/MCFragment.h
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
The file was addedllvm/test/MC/X86/align-via-padding-corner.s
Commit 8eb40e41f6ec99985a292e342ec303a0bd6f5f41 by lkail
[PowerPC] Don't generate ST_VSR_SCAL_INT if power8-vector is disabled

Summary:
In https://bugs.llvm.org/show_bug.cgi?id=45297, it fails selecting
instructions for `PPCISD::ST_VSR_SCAL_INT`. The reason it generate the
`PPCISD::ST_VSR_SCAL_INT` with `-power8-vector` in IR is PPC's
combiner checks `hasP8Altivec` rather than `hasP8Vector`. This patch
should resolve PR45297.

Differential Revision: https://reviews.llvm.org/D76773
The file was modifiedllvm/test/CodeGen/PowerPC/pr45297.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
Commit af0cd9073c3de5655fe3078b195d34c3e6440852 by shiva0217
[RISCV] Split RISCVISelDAGToDAG.cpp to RISCVISelDAGToDAG.h and RISCVISelDAGToDAG.cpp

For the downstream RISCV maintenance, it would be easier to inherent
RISCVISelDAGToDAG by including header and only override the method that needs
to be customized for the provider non-standard ISA extension without touching
RISCVISelDAGToDAG.cpp which may cause conflict when upgrading the downstream
LLVM version.

Differential Revision: https://reviews.llvm.org/D77117
The file was modifiedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
The file was addedllvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
Commit bb3111cbaf7b181bcda94415456a69b2a6b767ad by ianlevesque
[clang][xray] Add xray attributes to functions without decls too

Summary: This allows instrumenting things like global initializers

Reviewers: dberris, MaskRay, smeenai

Subscribers: cfe-commits, johnislarry

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77191
The file was modifiedclang/lib/CodeGen/CodeGenFunction.cpp
The file was addedclang/test/CodeGen/xray-global-init.cpp
Commit 69ddee1d2aadaa0b9ac4549f366d1bf5701a65f0 by hanchung
[mlir][Linalg] Introduce linalg.pooling_min/max/sum op.

Summary:
Performs an N-D pooling operation similarly to the description in the TF
documentation:
https://www.tensorflow.org/api_docs/python/tf/nn/pool

Different from the description, this operation doesn't perform on batch and
channel. It only takes tensors of rank `N`.

```
  output[x[0], ..., x[N-1]] =
    REDUCE_{z[0], ..., z[N-1]}
      input[
            x[0] * strides[0] - pad_before[0] + dilation_rate[0]*z[0],
            ...
            x[N-1]*strides[N-1] - pad_before[N-1] + dilation_rate[N-1]*z[N-1]
            ],
```

The required optional arguments are:
  - strides: an i64 array specifying the stride (i.e. step) for window
    loops.
  - dilations: an i64 array specifying the filter upsampling/input
    downsampling rate
  - padding: an i64 array of pairs (low, high) specifying the number of
    elements to pad along a dimension.

If strides or dilations attributes are missing then the default value is
one for each of the input dimensions. Similarly, padding values are zero
for both low and high in each of the dimensions, if not specified.

Differential Revision: https://reviews.llvm.org/D76414
The file was modifiedmlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp
The file was modifiedmlir/test/Dialect/Linalg/roundtrip.mlir
The file was modifiedmlir/test/Dialect/Linalg/invalid.mlir
The file was modifiedmlir/test/Dialect/Linalg/loops.mlir
The file was modifiedmlir/include/mlir/Dialect/Utils/StructuredOpsUtils.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
The file was modifiedmlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/LinalgToLoops.cpp
Commit 6dd696ae4fa1b1564e76e5531c268724d2c8b98f by hanchung
[mlir][Linalg] Extend fusion to support WAW atm on buffers.

Summary:
The RAW fusion happens only if the produecer block dominates the consumer block.
The WAW pattern also works with the precondition. I.e., if a producer can
dominate the consumer, they can fairly fuse together.

Since they are all tilable, we can think the pattern like this way:

Input:
```
linalg_op1 view

tile_loop
  subview_2
  linalg_op2 subview_2
```

Tile the first Linalg op as same as the second Linalg.
```
tile_loop
  subview_1
  linalg_op1 subview_1

tile_loop
  subview_2
  liangl_op2 subview_2
```

Since the first Linalg op is tilable in the same way and the computation are
independently, it's fair to fuse it with the second Linalg op.
```
tile_loop
  subview_1
  linalg_op1 subview_1
  linalg_op2 subview_2
```

In short, this patch includes:
- Handling both RAW and WAW pattern.
- Adding a interface method to get input and output buffers.
- Exposing a method to get a StringRef of a dependency type.
- Fixing existing WAW tests and add one more use case: initialize the buffer
  before conv op.

Differential Revision: https://reviews.llvm.org/D76897
The file was modifiedmlir/test/Dialect/Linalg/fusion.mlir
The file was modifiedmlir/lib/Dialect/Linalg/Analysis/DependenceAnalysis.cpp
The file was modifiedmlir/include/mlir/Dialect/Linalg/Analysis/DependenceAnalysis.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgTraits.h
The file was modifiedmlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOpsInterface.td
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
Commit b5767010a8ea2f5e2148da5f3e37041185211370 by sbc
[lld][WebAssembly] Early error if output file cannot be created.

This matches the behaviour of the ELF driver.

Also move the `createFiles` to be `checkConfig` and report `no input
files` there.   Again this is mostly to match the structure of the ELF
linker better.

Differential Revision: https://reviews.llvm.org/D76960
The file was modifiedlld/test/wasm/lto/opt-level.ll
The file was modifiedlld/wasm/Driver.cpp
The file was modifiedlld/test/wasm/responsefile.test
The file was addedlld/test/wasm/early-exit-for-bad-paths.s
Commit d0d076fed9681ebf2c2aed22e18cc5b89c5ac940 by maskray
[Driver] Flip the CC1 default of -fdiagnostics-show-option

The driver enables -fdiagnostics-show-option by default, so flip the CC1
default to reduce the lengths of common CC1 command lines.

This change also makes ParseDiagnosticArgs() consistently enable
-fdiagnostics-show-option by default.
The file was modifiedclang/test/Frontend/diagnostics-option-names.c
The file was modifiedclang/test/CXX/basic/basic.lookup/basic.lookup.classref/p1.cpp
The file was modifiedclang/include/clang/Driver/Options.td
The file was modifiedclang/test/CXX/dcl.decl/dcl.init/dcl.init.ref/p5-cxx03-extra-copy.cpp
The file was modifiedclang/test/Sema/parentheses.c
The file was modifiedclang/include/clang/Frontend/CompilerInvocation.h
The file was removedclang/test/Driver/show-option-names.c
The file was modifiedclang/test/Driver/rewrite-legacy-objc.m
The file was modifiedclang/test/CXX/basic/basic.lookup/basic.lookup.classref/p1-cxx11.cpp
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was addedclang/test/Driver/fdiagnostics-show-option.c
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/Misc/show-diag-options.c
The file was modifiedclang/test/Driver/rewrite-objc.m
Commit 531b3aff3094dcd2e7ffed7f72ebd932ea386baf by maskray
[Frontend] Replace CC1 option -masm-verbose with -fno-verbose-asm

Most OS✕target enable -fverbose-asm, so it makes sense to flip the CC1
option to reduce common command lines.
The file was modifiedclang/test/Driver/clang-translation.c
The file was modifiedclang/lib/Driver/ToolChains/Clang.cpp
The file was modifiedclang/test/CodeGenObjC/debug-info-property5.m
The file was modifiedclang/test/CodeGenObjC/debug-info-class-extension.m
The file was modifiedclang/test/CodeGenObjC/debug-info-property2.m
The file was modifiedclang/include/clang/Driver/CC1Options.td
The file was modifiedclang/test/CodeGenObjC/debug-info-class-extension2.m
The file was modifiedclang/test/CodeGenObjC/property-dbg.m
The file was modifiedclang/lib/Frontend/CompilerInvocation.cpp
The file was modifiedclang/test/Driver/integrated-as.c
The file was modifiedclang/test/CodeGenObjC/debug-info-property.m
The file was modifiedclang/test/CodeGenObjC/debug-info-property4.m
The file was modifiedclang/test/CodeGenObjC/debug-info-class-extension3.m
The file was modifiedclang/include/clang/Driver/Options.td
Commit 72439b6b9557d5c58ec7f95a14722ef581906a17 by hokein.wu
[clangd] Add a flag to turn on recovery-expr.

Reviewers: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77142
The file was modifiedclang-tools-extra/clangd/unittests/TestTU.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.cpp
The file was modifiedclang-tools-extra/clangd/tool/ClangdMain.cpp
The file was modifiedclang-tools-extra/clangd/ParsedAST.cpp
The file was modifiedclang-tools-extra/clangd/unittests/FindTargetTests.cpp
The file was modifiedclang-tools-extra/clangd/ClangdServer.h
The file was modifiedclang-tools-extra/clangd/Compiler.h
The file was modifiedclang-tools-extra/clangd/Preamble.cpp
Commit 3c9064ed963ebfc59e4164cbea0b932734785813 by llvm-dev
[X86] Run XOP vector rotation tests with/without AVX2

I noticed this while reviewing D77152 - by only testing bdver4 we weren't checking an XOP target that only had AVX1
The file was modifiedllvm/test/CodeGen/X86/rotate_vec.ll
Commit f9f401dba179038591ad066bfa063cd5f3d5b4d8 by llvm-dev
[X86][AVX] Add additional 256/512-bit test cases for PACKSS/PACKUS shuffle patterns

Also add lowerShuffleWithPACK call to lowerV32I16Shuffle - shuffle combining was catching it but we avoid a lot of temporary shuffle creations if we catch it at lowering first.
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-combining-avx512bw.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-512-v64.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-256-v16.ll
The file was modifiedllvm/test/CodeGen/X86/vector-shuffle-512-v32.ll
Commit 15f34ff2d8976f9211c6112531355ed5e2a92ea0 by Raphael Isemann
[lldb] Allow expect_expr without a running target

Summary:
If we don't have a current frame then we can still run many expressions
as long as we have an active target. With this patch `expect_expr` directly
calls the target's EvaluateExpression function when there is no current frame.

Reviewers: labath

Reviewed By: labath

Subscribers: JDevlieghere

Differential Revision: https://reviews.llvm.org/D77197
The file was modifiedlldb/packages/Python/lldbsuite/test/lldbtest.py
The file was modifiedlldb/test/API/commands/expression/call-function/TestCallBuiltinFunction.py
Commit f92563f9077d07f8cc97320e517eb1cdd6b34496 by craig.topper
[VectorUtils][X86] De-templatize scaleShuffleMask and 2 X86 shuffle mask helpers and move their implementation to cpp files

Summary: These were templated due to SelectionDAG using int masks for shuffles and IR using unsigned masks for shuffles. But now that D72467 has landed we have an int mask version of IRBuilder::CreateShuffleVector. So just use int instead of a template

Reviewers: spatel, efriedma, RKSimon

Reviewed By: efriedma

Subscribers: hiraditya, llvm-commits

Differential Revision: https://reviews.llvm.org/D77183
The file was modifiedllvm/unittests/Analysis/VectorUtilsTest.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/lib/Target/X86/X86InterleavedAccess.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.h
The file was modifiedllvm/include/llvm/Analysis/VectorUtils.h
The file was modifiedllvm/lib/Analysis/VectorUtils.cpp
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 2641a19981e71c887bece92074e00d1af3e716c9 by sam.parker
[TTI] Remove getCallCost

getCallCost is only used within the different layers of TTI, with no
backend implementing it so fold the base implementation into
getUserCost. I think this is an NFC.

Differential Revision: https://reviews.llvm.org/D77050
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfo.h
The file was modifiedllvm/include/llvm/Analysis/TargetTransformInfoImpl.h
The file was modifiedllvm/lib/Analysis/TargetTransformInfo.cpp
Commit 61bab7c31a1b42d4e8be5060877843eb20d94644 by tpopp
[MLIR] Replace OpBuilder(Block) with atBlockBegin and atBlockEnd

Summary:
OpBuilder(Block) is specifically replaced with
OpBuilder::atBlockEnd(Block);

This is to make insertion behavior clear due to there being no one
correct answer for which location in a block the default insertion
point should be.

Differential Revision: https://reviews.llvm.org/D77060
The file was modifiedmlir/include/mlir/IR/Builders.h
The file was modifiedmlir/lib/Dialect/SPIRV/SPIRVOps.cpp
Commit fa1b602ee6c3bd3dc245cbafe7534be5381e71e7 by Raphael Isemann
[lldb][NFC] Modernize TestCallUserAnonTypedef
The file was modifiedlldb/test/API/commands/expression/anonymous-struct/TestCallUserAnonTypedef.py
The file was modifiedlldb/test/API/commands/expression/anonymous-struct/main.cpp
Commit 57fd86de879cf2b4c7001b6d0a09df60877ce24d by me
[AVR] Fix function pointer address space

Summary:
Function pointers should be created with program address space.
This fixes function pointers on AVR.

Reviewers: dylanmckay

Reviewed By: dylanmckay

Subscribers: Jim, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77119
The file was modifiedclang/lib/CodeGen/CodeGenTypes.cpp
Commit 90b7bbffddc6f754bca8fba0596f2c8052cb52ec by tpopp
[MLIR] Rename collapsePLoops -> collapseParallelLoops

Summary:
Additionally, NFC code cleanups were done.

This is to address additional comments on
https://reviews.llvm.org/D76363

Differential Revision: https://reviews.llvm.org/D77052
The file was modifiedmlir/include/mlir/Transforms/LoopUtils.h
The file was modifiedmlir/lib/Transforms/ParallelLoopCollapsing.cpp
The file was modifiedmlir/lib/Transforms/Utils/LoopUtils.cpp
The file was modifiedmlir/test/Transforms/single-parallel-loop-collapsing.mlir
The file was modifiedmlir/test/Transforms/parallel-loop-collapsing.mlir
Commit edb0efca1e73ec5f791d9fe8c28f7c4c85a61c43 by Raphael Isemann
[lldb][NFC] Modernize call-function tests
The file was modifiedlldb/test/API/commands/expression/call-function/TestCallStopAndContinue.py
The file was modifiedlldb/test/API/commands/expression/call-function/main.cpp
The file was modifiedlldb/test/API/commands/expression/call-function/TestCallStdStringFunction.py
The file was modifiedlldb/test/API/commands/expression/call-function/TestCallUserDefinedFunction.py
Commit 48a5bdafba5e51244de627a50574d48c87a5249d by Raphael Isemann
[lldb][NFC] Modernize TestXValuePrinting
The file was modifiedlldb/test/API/commands/expression/xvalue/TestXValuePrinting.py
Commit 862766e01e9000ef1ad760ce602563cb0b4b9de4 by flo
[Verifier] Verify matrix dimensions operands match vector size.

This patch adds checks to the verifier to ensure the dimension arguments
passed to the matrix intrinsics match the vector types for their
arugments/return values.

Reviewers: anemet, Gerolf, andrew.w.kaylor, LuoYuanke

Reviewed By: anemet

Differential Revision: https://reviews.llvm.org/D77129
The file was addedllvm/test/Verifier/matrix-intrinsics.ll
The file was modifiedllvm/lib/IR/Verifier.cpp
Commit 95bcab8272ced7444bc25353784de96ad9375c02 by qiucofan
[DAGCombiner] Require ninf for sqrt recip estimation

Currently, DAG combiner uses (fmul (rsqrt x) x) to estimate square
root of x. However, this method would return NaN if x is +Inf, which
is incorrect.

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D76853
The file was modifiedllvm/test/CodeGen/NVPTX/fast-math.ll
The file was modifiedllvm/test/CodeGen/X86/sqrt-fastmath-mir.ll
The file was modifiedllvm/test/CodeGen/PowerPC/fmf-propagation.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/NVPTX/sqrt-approx.ll
The file was modifiedllvm/test/CodeGen/X86/sqrt-fastmath.ll
Commit e20cac365025d5af9e39b695bec0dd34f15f9871 by flo
[Matrix] Add new test case with getelementptr constant exprs.

The new test mostly ensures we keep doing the right thing for constant
expressions while lowering matrix instructions.
The file was addedllvm/test/Transforms/LowerMatrixIntrinsics/const-gep.ll
Commit e2d6023250b1645214967f58a310b73b22adb31e by dvyukov
tsan: fix Go build on Windows

Fix similar to https://reviews.llvm.org/D77111 but fow Windows.

gotsan.cpp:14071:16: error: missing terminating ' character [-Werror]
case 0b10'010:  // c.lwsp (rd != x0)
         ^

Reported-by: Keith Randall
The file was modifiedcompiler-rt/lib/tsan/go/build.bat
Commit 49af3809423bfe03a21cad22dda0a776c04cc5af by zinenko
Add a method to build affine maps with zero or more results.

Summary:
The commit provides a single method to build affine maps with zero or more
results. Users of mlir::AffineMap previously had to dispatch between two methods
depending on the number of results.

At the same time, this commit fixes the method for building affine map with zero
results that was previously ignoring its `symbolCount` argument.

Differential Revision: https://reviews.llvm.org/D77126
The file was modifiedmlir/include/mlir/IR/AffineMap.h
The file was modifiedmlir/lib/IR/MLIRContext.cpp
Commit 08a53dba93389a9859c12e948d8281a839cffbdb by Raphael Isemann
[clang] Minor cleanup in CloneDetectionTest

Follow up to e8f13f4f62f.
The file was modifiedclang/unittests/Analysis/CloneDetectionTest.cpp
Commit d307174e1d9e66a9e5a1e936ac3736343c3fe381 by flo
[ConstantRange] Use APInt::or/APInt::and for single elements.

Currently ConstantRange::binaryAnd/binaryOr results are too pessimistic
for single element constant ranges.

If both operands are single element ranges, we can use APInt's AND and
OR implementations directly.

Note that some other binary operations on constant ranges can cover the
single element cases naturally, but for OR and AND this unfortunately is
not the case.

Reviewers: nikic, spatel, lebedev.ri

Reviewed By: spatel

Differential Revision: https://reviews.llvm.org/D76446
The file was modifiedllvm/test/Transforms/Attributor/range.ll
The file was modifiedllvm/lib/IR/ConstantRange.cpp
The file was modifiedllvm/test/Transforms/CorrelatedValuePropagation/range.ll