[all-commits] [llvm/llvm-project] 1c7f32: [TargetLowering] Only inspect attributes in the ar...

aeubanks via All-commits all-commits at lists.llvm.org
Tue May 18 14:31:06 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 1c7f32334d4becc725b9025fd32291a0e5729acd
      https://github.com/llvm/llvm-project/commit/1c7f32334d4becc725b9025fd32291a0e5729acd
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2021-05-18 (Tue, 18 May 2021)

  Changed paths:
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/arm64-this-return.ll
    M llvm/test/CodeGen/AArch64/bitfield-extract.ll
    M llvm/test/CodeGen/AArch64/tailcall-explicit-sret.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs-packed.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-amdgpu-gfx.ll
    M llvm/test/CodeGen/ARM/ipra-r0-returned.ll
    M llvm/test/CodeGen/ARM/returned-ext.ll
    M llvm/test/CodeGen/ARM/this-return.ll
    M llvm/test/CodeGen/SPARC/64abi.ll
    M llvm/test/CodeGen/SystemZ/args-02.ll
    M llvm/test/CodeGen/SystemZ/args-03.ll
    M llvm/test/CodeGen/X86/fast-cc-merge-stack-adj.ll
    M llvm/test/CodeGen/X86/fast-cc-pass-in-regs.ll
    A llvm/test/CodeGen/X86/mismatched-byval.ll
    M llvm/test/CodeGen/X86/movtopush.ll
    M llvm/test/CodeGen/X86/pop-stack-cleanup.ll
    M llvm/test/CodeGen/X86/preallocated.ll
    M llvm/test/CodeGen/X86/tailcall-msvc-conventions.ll

  Log Message:
  -----------
  [TargetLowering] Only inspect attributes in the arguments for ArgListEntry

Parameter attributes are considered part of the function [1], and like
mismatched calling conventions [2], we can't have the verifier check for
mismatched parameter attributes.

This is a reland after fixing MSan issues in D102667.

[1] https://llvm.org/docs/LangRef.html#parameter-attributes
[2] https://llvm.org/docs/FAQ.html#why-does-instcombine-simplifycfg-turn-a-call-to-a-function-with-a-mismatched-calling-convention-into-unreachable-why-not-make-the-verifier-reject-it

Reviewed By: rnk

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


  Commit: bc7d15c61da78864b35e3c114294d6e4db645611
      https://github.com/llvm/llvm-project/commit/bc7d15c61da78864b35e3c114294d6e4db645611
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2021-05-18 (Tue, 18 May 2021)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp

  Log Message:
  -----------
  [NFC] Use ArgListEntry indirect types more in ISel lowering

For opaque pointers, we're trying to avoid uses of
PointerType::getElementType().

A couple of ISel places use PointerType::getElementType(). Some of these
are easy to fix by using ArgListEntry's indirect types.

The inalloca type wasn't stored there, as opposed to preallocated and
byval which have their indirect types available, so add it and use it.

This is a reland after an MSan fix in D102667.

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


Compare: https://github.com/llvm/llvm-project/compare/b86302e50079...bc7d15c61da7


More information about the All-commits mailing list