r274215 - in /trunk/gcc: ChangeLog config/riscv...
wilson@gcc.gnu.org
wilson@gcc.gnu.org
Thu Aug 8 19:04:00 GMT 2019
Author: wilson
Date: Thu Aug 8 19:04:56 2019
New Revision: 274215
URL: https://gcc.gnu.org/viewcvs?rev=274215&root=gcc&view=rev
Log:
RISC-V: Fix C ABI for flattened struct with 0-length bitfield.
gcc/
PR target/91229
* config/riscv/riscv.c (riscv_flatten_aggregate_field): New arg
ignore_zero_width_bit_field_p. Skip zero size bitfields when true.
Pass into recursive call.
(riscv_flatten_aggregate_argument): New arg. Pass to
riscv_flatten_aggregate_field.
(riscv_pass_aggregate_in_fpr_pair_p): New local warned. Call
riscv_flatten_aggregate_argument twice, with false and true as last
arg. Process result twice. Compare results and warn if different.
(riscv_pass_aggregate_in_fpr_and_gpr_p): Likewise.
gcc/testsuite/
* gcc.target/riscv/flattened-struct-abi-1.c: New test.
* gcc.target/riscv/flattened-struct-abi-2.c: New test.
Added:
trunk/gcc/testsuite/gcc.target/riscv/flattened-struct-abi-1.c
trunk/gcc/testsuite/gcc.target/riscv/flattened-struct-abi-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/riscv/riscv.c
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-cvs
mailing list