[all-commits] [llvm/llvm-project] 7ee479: [RISCV] Fix passing two floating-point values in c...
Tsung-Chun Lin via All-commits
all-commits at lists.llvm.org
Sun May 17 22:14:25 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 7ee479a760e0a4402b4eb7fb6168768a44f66945
https://github.com/llvm/llvm-project/commit/7ee479a760e0a4402b4eb7fb6168768a44f66945
Author: Jim Lin <tclin914 at gmail.com>
Date: 2020-05-18 (Mon, 18 May 2020)
Changed paths:
M clang/lib/CodeGen/TargetInfo.cpp
M clang/test/CodeGen/riscv64-lp64-abi.c
M clang/test/CodeGen/riscv64-lp64f-lp64d-abi.c
Log Message:
-----------
[RISCV] Fix passing two floating-point values in complex separately by two GPRs on RV64
Summary:
This patch fixed the error of counting the remaining FPRs. Complex floating-point
values should be passed by two FPRs for the hard-float ABI. If no two FPRs are
available, it should be passed via a 64-bit GPR (fp+fp). `ArgFPRsLeft` is only
decreased one while the type is complex floating-point. It causes two floating-point
values in the complex are passed separately by two GPRs.
Reviewers: asb, luismarques, lenary
Reviewed By: asb
Subscribers: rbar, johnrusso, simoncook, sabuasal, niosHD, kito-cheng, shiva0217, jrtc27, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, rkruppe, PkmX, jocewei, psnobl, benna, s.egerton, pzheng, sameer.abuasal, apazos, evandro, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D79770
More information about the All-commits
mailing list