SuccessChanges

Summary

  1. Fix -Wdocumentation "@returns in a void function" warning. NFCI. (details)
  2. Revert [llvm-ar] Include a line number when failing to parse an MRI (details)
  3. [cmake] Strip quotes in try_compile_only (details)
  4. [ARM] MVE i1 splat (details)
  5. Revert r372285 "GlobalISel: Don't materialize immarg arguments to (details)
  6. [DAG] Add SelectionDAG::MaxRecursionDepth constant (details)
  7. [clang-tidy] Fix bugprone-argument-comment-check to correctly ignore (details)
  8. [CUDA][HIP] Fix typo in `BestViableFunction` (details)
  9. Clean out unused diagnostics. NFC. (details)
  10. [TableGen] Support encoding per-HwMode (details)
  11. [OpenCL] Add version handling and add vector ld/st builtins (details)
  12. Remove an unsafe member variable that wasn't needed; NFC. (details)
  13. [Float2Int] auto-generate complete test checks; NFC (details)
  14. Reverting r372323 because it broke color tests on Linux. (details)
Commit cce2342d4691ab34915025b9959c3f12589dce51 by llvm-dev
Fix -Wdocumentation "@returns in a void function" warning. NFCI.
llvm-svn: 372310
The file was modifiedllvm/tools/llvm-reduce/deltas/ReduceInstructions.cpp
Commit aa03c14827fab3caba6306fc2e5d7f1757230f73 by gbreynoo
Revert [llvm-ar] Include a line number when failing to parse an MRI
script
Revert r372309 due to buildbot failures
Differential Revision: https://reviews.llvm.org/D67449
llvm-svn: 372311
The file was modifiedllvm/test/tools/llvm-ar/mri-addlib.test
The file was modifiedllvm/tools/llvm-ar/llvm-ar.cpp
The file was removedllvm/test/tools/llvm-ar/mri-errors.test
Commit ec841cf36ca1cb6a154393d7e9f48e8723a38966 by hans
[cmake] Strip quotes in try_compile_only
After r372209, the compile command can end up including an argument with
quotes in it, e.g.
  -fprofile-instr-use="/foo/bar.profdata"
when invoking the compiler with execute_process, the compiler ends up
getting that argument with quotes and all, and fails to open the file.
This all seems horribly broken, but one way of working around it is to
simply strip the quotes from the string here. If they were there to
protect a path that's got spaces in it, that wasn't going to work anyway
because the string is later split by spaces.
llvm-svn: 372312
The file was modifiedcompiler-rt/cmake/Modules/BuiltinTests.cmake
Commit 0cfb78e52af247366e6e8fe00a906022bf4abca5 by david.green
[ARM] MVE i1 splat
We needn't BFI each lane individually into a predicate register when
each lane in the same. A simple sign extend and a vmsr will do.
Differential Revision: https://reviews.llvm.org/D67653
llvm-svn: 372313
The file was modifiedllvm/test/CodeGen/Thumb2/mve-pred-build-var.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
Commit 13bdae8541c3fc5acf6ee7de78ec5ab8446848e4 by hans
Revert r372285 "GlobalISel: Don't materialize immarg arguments to
intrinsics"
This broke the Chromium build, causing it to fail with e.g.
  fatal error: error in backend: Cannot select: t362: v4i32 =
X86ISD::VSHLI t392, Constant:i8<15>
See llvm-commits thread of r372285 for details.
This also reverts r372286, r372287, r372288, r372289, r372290, r372291,
r372292, r372293, r372296, and r372297, which seemed to depend on the
main commit.
> Encode them directly as an imm argument to G_INTRINSIC*.
>
> Since now intrinsics can now define what parameters are required to be
> immediates, avoid using registers for them. Intrinsics could
> potentially want a constant that isn't a legal register type. Also,
> since G_CONSTANT is subject to CSE and legalization, transforms could
> potentially obscure the value (and create extra work for the
> selector). The register bank of a G_CONSTANT is also meaningful, so
> this could throw off future folding and legalization logic for AMDGPU.
>
> This will be much more convenient to work with than needing to call
> getConstantVRegVal and checking if it may have failed for every
> constant intrinsic parameter. AMDGPU has quite a lot of intrinsics wth
> immarg operands, many of which need inspection during lowering. Having
> to find the value in a register is going to add a lot of boilerplate
> and waste compile time.
>
> SelectionDAG has always provided TargetConstant for constants which
> should not be legalized or materialized in a register. The distinction
> between Constant and TargetConstant was somewhat fuzzy, and there was
> no automatic way to force usage of TargetConstant for certain
> intrinsic parameters. They were both ultimately ConstantSDNode, and it
> was inconsistently used. It was quite easy to mis-select an
> instruction requiring an immediate. For SelectionDAG, start emitting
> TargetConstant for these arguments, and using timm to match them.
>
> Most of the work here is to cleanup target handling of constants. Some
> targets process intrinsics through intermediate custom nodes, which
> need to preserve TargetConstant usage to match the intrinsic
> expectation. Pattern inputs now need to distinguish whether a constant
> is merely compatible with an operand or whether it is mandatory.
>
> The GlobalISelEmitter needs to treat timm as a special case of a leaf
> node, simlar to MachineBasicBlock operands. This should also enable
> handling of patterns for some G_* instructions with immediates, like
> G_FENCE or G_EXTRACT.
>
> This does include a workaround for a crash in GlobalISelEmitter when
> ARM tries to uses "imm" in an output with a "timm" pattern source.
llvm-svn: 372314
The file was modifiedllvm/lib/Target/Mips/MipsMSAInstrInfo.td
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb2.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrFormats.td
The file was modifiedllvm/lib/Target/X86/X86ISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrAVX512.td
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/InstructionSelectorImpl.h
The file was modifiedllvm/lib/Target/AMDGPU/SIInstructions.td
The file was removedllvm/test/CodeGen/AMDGPU/sched-assert-dead-def-subreg-use-other-subreg.mir
The file was modifiedllvm/lib/Target/Mips/MicroMipsDSPInstrInfo.td
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.ds.swizzle.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
The file was modifiedllvm/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_ps.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.s.sendmsg.mir
The file was modifiedllvm/lib/Target/AMDGPU/DSInstructions.td
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.format.f16.ll
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/lib/CodeGen/ScheduleDAGInstrs.cpp
The file was modifiedllvm/lib/Target/Mips/MipsDSPInstrInfo.td
The file was modifiedllvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
The file was modifiedllvm/lib/Target/X86/X86InstrSystem.td
The file was modifiedllvm/lib/Target/AMDGPU/SOPInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/VOP1Instructions.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrVector.td
The file was modifiedllvm/lib/Target/X86/X86InstrTSX.td
The file was modifiedllvm/lib/Target/Hexagon/HexagonIntrinsics.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZOperands.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.ll
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
The file was removedllvm/test/TableGen/immarg.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-struct-return-intrinsics.ll
The file was modifiedllvm/lib/Target/X86/X86InstrMMX.td
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.store.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrVSX.td
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgpu_vs.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrFormats.td
The file was modifiedllvm/lib/Target/PowerPC/PPCInstrAltivec.td
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.sample.1d.ll
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.load.ll
The file was modifiedllvm/lib/Target/X86/X86InstrXOP.td
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-umulh.mir
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.h
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.sleep.ll
The file was modifiedllvm/include/llvm/Target/TargetSelectionDAG.td
The file was modifiedllvm/lib/Target/AMDGPU/BUFInstructions.td
The file was modifiedllvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/X86/X86InstrSSE.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-smulh.mir
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.raw.buffer.load.ll
The file was modifiedllvm/lib/Target/AMDGPU/VOP3Instructions.td
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.format.f32.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVInstrInfoA.td
The file was modifiedllvm/lib/Target/AArch64/AArch64InstrInfo.td
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.mir
The file was modifiedllvm/lib/Target/SystemZ/SystemZOperators.td
The file was modifiedllvm/lib/Target/WebAssembly/WebAssemblyInstrBulkMemory.td
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn-exp.mir
The file was modifiedllvm/lib/Target/SystemZ/SystemZPatterns.td
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-amdgcn-sendmsg.ll
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepOperands.td
The file was modifiedllvm/include/llvm/CodeGen/GlobalISel/InstructionSelector.h
The file was modifiedllvm/lib/Target/Mips/MipsSEISelLowering.cpp
The file was removedllvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.image.load.1d.ll
The file was modifiedllvm/utils/TableGen/GlobalISelEmitter.cpp
The file was modifiedllvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
The file was modifiedllvm/lib/Target/Hexagon/HexagonDepMapAsm2Intrin.td
The file was modifiedllvm/include/llvm/CodeGen/ScheduleDAGInstrs.h
The file was modifiedllvm/lib/Target/Mips/Mips64InstrInfo.td
The file was modifiedllvm/lib/Target/Mips/MipsInstrInfo.td
Commit c65dd89804d35fbd6170b61a0d1494df0576d352 by llvm-dev
[DAG] Add SelectionDAG::MaxRecursionDepth constant
As commented on D67557 we have a lot of uses of depth checks all using
magic numbers.
This patch adds the SelectionDAG::MaxRecursionDepth constant and moves
over some general cases to use this explicitly.
Differential Revision: https://reviews.llvm.org/D67711
llvm-svn: 372315
The file was modifiedllvm/include/llvm/CodeGen/SelectionDAG.h
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Commit 57990b4be0aa2d7aefd186ec2dd61ab705b4e426 by yitzhakm
[clang-tidy] Fix bugprone-argument-comment-check to correctly ignore
implicit constructors.
Summary: After revision 370919, this check incorrectly flags certain
cases of implicit constructors. Specifically, if an argument is
annotated with an argument-comment and the argument expression triggers
an implicit constructor, then the argument comment is associated with
argument of the implicit constructor.
However, this only happens when the constructor has more than one
argument. This revision fixes the check for implicit constructors and
adds a regression test for this case.
Note: r370919 didn't cause this bug, it simply uncovered it by fixing
another bug that was masking the behavior.
Reviewers: gribozavr
Subscribers: xazax.hun, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D67744
llvm-svn: 372317
The file was modifiedclang-tools-extra/test/clang-tidy/bugprone-argument-comment.cpp
The file was modifiedclang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.cpp
Commit eb231d15825ac345b546f4c99372d1cac8f14f02 by michael.hliao
[CUDA][HIP] Fix typo in `BestViableFunction`
Summary:
- Should consider viable ones only when checking SameSide candidates.
- Replace erasing with clearing viable flag to reduce data
moving/copying.
- Add one and revise another one as the diagnostic message are more
relevant compared to previous one.
Reviewers: tra
Subscribers: cfe-commits, yaxunl
Tags: #clang
Differential Revision: https://reviews.llvm.org/D67730
llvm-svn: 372318
The file was modifiedclang/lib/Sema/SemaOverload.cpp
The file was modifiedclang/test/SemaCUDA/function-overload.cu
The file was modifiedclang/test/SemaCUDA/implicit-member-target-collision-cxx11.cu
Commit b88800d8829b9a6602547e26050fffd528e21822 by benny.kra
Clean out unused diagnostics. NFC.
llvm-svn: 372319
The file was modifiedclang/include/clang/Basic/DiagnosticFrontendKinds.td
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/include/clang/Basic/DiagnosticDriverKinds.td
The file was modifiedclang/include/clang/Basic/DiagnosticCommonKinds.td
The file was modifiedclang/include/clang/Basic/DiagnosticASTKinds.td
Commit 88a5fbfcea79b4711542f0587bed39aa392da12f by jmolloy
[TableGen] Support encoding per-HwMode
Much like ValueTypeByHwMode/RegInfoByHwMode, this patch allows targets
to modify an instruction's encoding based on HwMode. When the
EncodingInfos field is non-empty the Inst and Size fields of the
Instruction are ignored and taken from EncodingInfos instead.
As part of this promote getHwMode() from TargetSubtargetInfo to
MCSubtargetInfo.
This is NFC for all existing targets - new code is generated only if
targets use EncodingByHwMode.
llvm-svn: 372320
The file was modifiedllvm/include/llvm/MC/MCSubtargetInfo.h
The file was modifiedllvm/include/llvm/Target/Target.td
The file was modifiedllvm/utils/TableGen/CodeEmitterGen.cpp
The file was modifiedllvm/utils/TableGen/InfoByHwMode.cpp
The file was modifiedllvm/include/llvm/CodeGen/TargetSubtargetInfo.h
The file was modifiedllvm/utils/TableGen/InfoByHwMode.h
The file was modifiedllvm/utils/TableGen/CodeGenTarget.cpp
The file was modifiedllvm/utils/TableGen/FixedLenDecoderEmitter.cpp
The file was addedllvm/test/TableGen/HwModeEncodeDecode.td
The file was modifiedllvm/utils/TableGen/SubtargetEmitter.cpp
Commit ed69faa01bfff02c61e318ef4bfc4112fa87b1a0 by sven.vanhaastregt
[OpenCL] Add version handling and add vector ld/st builtins
Allow setting a MinVersion, stating from which OpenCL version a builtin
function is available, and a MaxVersion, stating from which OpenCL
version a builtin function should not be available anymore.
Guard some definitions of the "work-item" builtin functions according to
the OpenCL versions from which they are available.
Add the "vector data load and store" builtin functions (e.g.
vload/vstore), whose signatures differ before and after OpenCL 2.0 in
the pointer argument address spaces.
Patch by Pierre Gondois and Sven van Haastregt.
Differential Revision: https://reviews.llvm.org/D63504
llvm-svn: 372321
The file was modifiedclang/test/SemaOpenCL/fdeclare-opencl-builtins.cl
The file was modifiedclang/lib/Sema/OpenCLBuiltins.td
The file was modifiedclang/lib/Sema/SemaLookup.cpp
The file was modifiedclang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
Commit 3c3602aefa5909291ce5e32a43b2effb08e4053a by aaron
Remove an unsafe member variable that wasn't needed; NFC.
People use the AST dumping interface while debugging, so it's not safe
to assume that a declaration will be dumped before a constant expression
is dumped. This means the Context member may not get set properly and
problems would happen. Rather than rely on the interface that requires
the ASTContext, call the generic dump() interface instead; this allows
us to remove the Context member variable.
llvm-svn: 372323
The file was modifiedclang/lib/AST/TextNodeDumper.cpp
The file was modifiedclang/include/clang/AST/TextNodeDumper.h
Commit 7592e3a81fc0045b48207531e42ec7cf8af60fbd by spatel
[Float2Int] auto-generate complete test checks; NFC
llvm-svn: 372324
The file was modifiedllvm/test/Transforms/Float2Int/basic.ll
Commit ed9104c3f8781ed6f5dc6e7d7034158d062c2510 by aaron
Reverting r372323 because it broke color tests on Linux.
http://lab.llvm.org:8011/builders/clang-x86_64-debian-fast/builds/17919
llvm-svn: 372325
The file was modifiedclang/include/clang/AST/TextNodeDumper.h
The file was modifiedclang/lib/AST/TextNodeDumper.cpp

Summary

  1. [LNT] Add support for v2 fmt in test data library Add support for generating LNT JSON report file format in version 2 in the test data creation library. All unit tests introduced in earlier patch for existing code pass with this new code. Reviewers: MatzeB, danilaml, kristof.beyls, cmatthews Reviewed By: cmatthews Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D65751
Revision 372322 by thopre:
[LNT] Add support for v2 fmt in test data library

Add support for generating LNT JSON report file format in version 2 in
the test data creation library. All unit tests introduced in earlier
patch for existing code pass with this new code.

Reviewers: MatzeB, danilaml, kristof.beyls, cmatthews

Reviewed By: cmatthews

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D65751
Change TypePath in RepositoryPath in Workspace
The file was modified/lnt/trunk/lnt/testing/__init__.pylnt/testing/__init__.py
The file was modified/lnt/trunk/tests/testing/TestingTest.pytests/testing/TestingTest.py