[all-commits] [llvm/llvm-project] 6cb0d2: AArch64/GlobalISel: Narrow stack passed argument a...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Fri Sep 25 10:36:07 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 6cb0d23f2ea6fb25106b0380797ccbc2141d71e1
      https://github.com/llvm/llvm-project/commit/6cb0d23f2ea6fb25106b0380797ccbc2141d71e1
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2020-09-25 (Fri, 25 Sep 2020)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-evt-bug47619.ll

  Log Message:
  -----------
  AArch64/GlobalISel: Narrow stack passed argument access size

This fixes a verifier error in the testcase from bug 47619.

The stack passed s3 value was widened to 4-bytes, and producing a
4-byte memory access with a < 1 byte result type. We need to either
widen the result type or narrow the access size. This copies the code
directly from the AMDGPU handling, which narrows the load size. I
don't like that every target has to handle this, but this is currently
broken on the 11 release branch and this is the simplest fix.

This reverts commit 42bfa7c63b85e76fe16521d1671afcafaf8f64ed.




More information about the All-commits mailing list