[all-commits] [llvm/llvm-project] 2b37c4: [RISCV] Scale scalably-typed split argument offset...
Fraser Cormack via All-commits
all-commits at lists.llvm.org
Mon May 31 02:51:39 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 2b37c405cc18019ea5056a63fa65f839a4890b50
https://github.com/llvm/llvm-project/commit/2b37c405cc18019ea5056a63fa65f839a4890b50
Author: Fraser Cormack <fraser at codeplay.com>
Date: 2021-05-31 (Mon, 31 May 2021)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
Log Message:
-----------
[RISCV] Scale scalably-typed split argument offsets by VSCALE
This patch fixes a bug in lowering scalable-vector types in RISC-V's
main calling convention. When scalable-vector types are split and passed
indirectly, the target is responsible for scaling the offset --
initially set to the known-minimum store size -- by the scalable factor.
Before this we were issuing overlapping loads or stores to the different
parts, leading to incorrect codegen.
Credit to @HsiangKai for spotting this.
Reviewed By: HsiangKai
Differential Revision: https://reviews.llvm.org/D103262
More information about the All-commits
mailing list