abi-struct-arg.c
1.84 KB
-
nvptx.h (PARM_BOUNDARY): Set to 32. · 44eba92d
gcc/ * config/nvptx/nvptx.h (PARM_BOUNDARY): Set to 32. * config/nvptx/nvptx.c (PASS_IN_REG_P, RETURN_IN_REG_P): Delete. (pass_in_memory, promote_arg, promote_return): New. (nvptx_function_arg_boundary): Delete. (nvptx_function_value): Use promote_return. (nvptx_pass_by_reference): Use pass_in_memory. (nvptx_return_in_memory): Use pass_in_memory. (nvptx_promote_function_mode): Use promote_arg. (write_arg): Adjust arg splitting logic. (write_return): Check and clear ret_reg_mode, if needed. (write_fn_proto, nvptx_declare_function_name): Adust write_return calls. (TARGET_RUNCTION_ARG_BOUNDARY, TARGET_FUNCTION_ARG_ROUND_BOUNDARY): Don't override. gcc/testsuite/ * g++.dg/abi/nvptx-nrv1.C: New. * g++.dg/abi/nvptx-ptrmem1.C: New. * gcc.target/nvptx/abi-complex-arg.c: New. * gcc.target/nvptx/abi-complex-ret.c: New. * gcc.target/nvptx/abi-enum-arg.c: New. * gcc.target/nvptx/abi-enum-ret.c: New. * gcc.target/nvptx/abi-knr-arg.c: New. * gcc.target/nvptx/abi-knr-ret.c: New. * gcc.target/nvptx/abi-scalar-arg.c: New. * gcc.target/nvptx/abi-scalar-ret.c: New. * gcc.target/nvptx/abi-struct-arg.c: New. * gcc.target/nvptx/abi-struct-ret.c: New. * gcc.target/nvptx/abi-vararg-1.c: New. * gcc.target/nvptx/abi-vararg-2.c: New. * gcc.target/nvptx/abi-vect-arg.c: New. * gcc.target/nvptx/abi-vect-ret.c: New. From-SVN: r231628
Nathan Sidwell committed