diff options
author | nathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-12-14 19:26:49 +0000 |
---|---|---|
committer | nathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-12-14 19:26:49 +0000 |
commit | df931be43215b210a0a8ba6f8ea3fa70d3e5ec8f (patch) | |
tree | 0db4672849e10a27a980f0dffce1ba6e0e14c9cd /gcc/config/nvptx/nvptx.h | |
parent | 7ca909c695cf94388d30d13e46d829ae0bcea84d (diff) | |
download | gcc-df931be43215b210a0a8ba6f8ea3fa70d3e5ec8f.tar.gz |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231628 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/nvptx/nvptx.h')
-rw-r--r-- | gcc/config/nvptx/nvptx.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/config/nvptx/nvptx.h b/gcc/config/nvptx/nvptx.h index 33b2c72d9d9..ed0f28e0dd8 100644 --- a/gcc/config/nvptx/nvptx.h +++ b/gcc/config/nvptx/nvptx.h @@ -46,7 +46,8 @@ /* Chosen such that we won't have to deal with multi-word subregs. */ #define UNITS_PER_WORD 8 -#define PARM_BOUNDARY 8 +/* Alignments in bits. */ +#define PARM_BOUNDARY 32 #define STACK_BOUNDARY 64 #define FUNCTION_BOUNDARY 32 #define BIGGEST_ALIGNMENT 64 |