diff options
Diffstat (limited to 'gcc/config/i386/i386.c')
-rw-r--r-- | gcc/config/i386/i386.c | 94 |
1 files changed, 46 insertions, 48 deletions
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 3503743..551395f 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -6270,10 +6270,8 @@ ix86_function_ok_for_sibcall (tree decl, tree exp) arguments as in struct attribute_spec.handler. */ static tree -ix86_handle_cconv_attribute (tree *node, tree name, - tree args, - int, - bool *no_add_attrs) +ix86_handle_cconv_attribute (tree *node, tree name, tree args, int, + bool *no_add_attrs) { if (TREE_CODE (*node) != FUNCTION_TYPE && TREE_CODE (*node) != METHOD_TYPE @@ -40230,10 +40228,8 @@ x86_order_regs_for_local_alloc (void) /* Handle a "callee_pop_aggregate_return" attribute; arguments as in struct attribute_spec handler. */ static tree -ix86_handle_callee_pop_aggregate_return (tree *node, tree name, - tree args, - int, - bool *no_add_attrs) +ix86_handle_callee_pop_aggregate_return (tree *node, tree name, tree args, int, + bool *no_add_attrs) { if (TREE_CODE (*node) != FUNCTION_TYPE && TREE_CODE (*node) != METHOD_TYPE @@ -44711,72 +44707,74 @@ ix86_expand_round_sse4 (rtx op0, rtx op1) /* Table of valid machine attributes. */ static const struct attribute_spec ix86_attribute_table[] = { - /* { name, min_len, max_len, decl_req, type_req, fn_type_req, handler, - affects_type_identity, exclusions } */ + /* { name, min_len, max_len, decl_req, type_req, fn_type_req, + affects_type_identity, handler, exclude } */ /* Stdcall attribute says callee is responsible for popping arguments if they are not variable. */ - { "stdcall", 0, 0, false, true, true, ix86_handle_cconv_attribute, - true, NULL }, + { "stdcall", 0, 0, false, true, true, true, ix86_handle_cconv_attribute, + NULL }, /* Fastcall attribute says callee is responsible for popping arguments if they are not variable. */ - { "fastcall", 0, 0, false, true, true, ix86_handle_cconv_attribute, - true, NULL }, + { "fastcall", 0, 0, false, true, true, true, ix86_handle_cconv_attribute, + NULL }, /* Thiscall attribute says callee is responsible for popping arguments if they are not variable. */ - { "thiscall", 0, 0, false, true, true, ix86_handle_cconv_attribute, - true, NULL }, + { "thiscall", 0, 0, false, true, true, true, ix86_handle_cconv_attribute, + NULL }, /* Cdecl attribute says the callee is a normal C declaration */ - { "cdecl", 0, 0, false, true, true, ix86_handle_cconv_attribute, - true, NULL }, + { "cdecl", 0, 0, false, true, true, true, ix86_handle_cconv_attribute, + NULL }, /* Regparm attribute specifies how many integer arguments are to be passed in registers. */ - { "regparm", 1, 1, false, true, true, ix86_handle_cconv_attribute, - true, NULL }, + { "regparm", 1, 1, false, true, true, true, ix86_handle_cconv_attribute, + NULL }, /* Sseregparm attribute says we are using x86_64 calling conventions for FP arguments. */ - { "sseregparm", 0, 0, false, true, true, ix86_handle_cconv_attribute, - true, NULL }, + { "sseregparm", 0, 0, false, true, true, true, ix86_handle_cconv_attribute, + NULL }, /* The transactional memory builtins are implicitly regparm or fastcall depending on the ABI. Override the generic do-nothing attribute that these builtins were declared with. */ - { "*tm regparm", 0, 0, false, true, true, ix86_handle_tm_regparm_attribute, - true, NULL }, + { "*tm regparm", 0, 0, false, true, true, true, + ix86_handle_tm_regparm_attribute, NULL }, /* force_align_arg_pointer says this function realigns the stack at entry. */ { (const char *)&ix86_force_align_arg_pointer_string, 0, 0, - false, true, true, ix86_handle_force_align_arg_pointer_attribute, false, + false, true, true, false, ix86_handle_force_align_arg_pointer_attribute, NULL }, #if TARGET_DLLIMPORT_DECL_ATTRIBUTES - { "dllimport", 0, 0, false, false, false, handle_dll_attribute, false, NULL }, - { "dllexport", 0, 0, false, false, false, handle_dll_attribute, false, NULL }, - { "shared", 0, 0, true, false, false, ix86_handle_shared_attribute, - false, NULL }, + { "dllimport", 0, 0, false, false, false, false, handle_dll_attribute, + NULL }, + { "dllexport", 0, 0, false, false, false, false, handle_dll_attribute, + NULL }, + { "shared", 0, 0, true, false, false, false, + ix86_handle_shared_attribute, false, NULL }, #endif - { "ms_struct", 0, 0, false, false, false, ix86_handle_struct_attribute, - false, NULL }, - { "gcc_struct", 0, 0, false, false, false, ix86_handle_struct_attribute, - false, NULL }, + { "ms_struct", 0, 0, false, false, false, false, + ix86_handle_struct_attribute, NULL }, + { "gcc_struct", 0, 0, false, false, false, false, + ix86_handle_struct_attribute, NULL }, #ifdef SUBTARGET_ATTRIBUTE_TABLE SUBTARGET_ATTRIBUTE_TABLE, #endif /* ms_abi and sysv_abi calling convention function attributes. */ - { "ms_abi", 0, 0, false, true, true, ix86_handle_abi_attribute, true, NULL }, - { "sysv_abi", 0, 0, false, true, true, ix86_handle_abi_attribute, true, + { "ms_abi", 0, 0, false, true, true, true, ix86_handle_abi_attribute, NULL }, + { "sysv_abi", 0, 0, false, true, true, true, ix86_handle_abi_attribute, NULL }, - { "ms_abi va_list", 0, 0, false, false, false, NULL, false, NULL }, - { "sysv_abi va_list", 0, 0, false, false, false, NULL, false, NULL }, - { "ms_hook_prologue", 0, 0, true, false, false, ix86_handle_fndecl_attribute, - false, NULL }, - { "callee_pop_aggregate_return", 1, 1, false, true, true, - ix86_handle_callee_pop_aggregate_return, true, NULL }, - { "interrupt", 0, 0, false, true, true, - ix86_handle_interrupt_attribute, false, NULL }, - { "no_caller_saved_registers", 0, 0, false, true, true, - ix86_handle_no_caller_saved_registers_attribute, false, NULL }, - { "naked", 0, 0, true, false, false, - ix86_handle_fndecl_attribute, false, NULL }, + { "ms_abi va_list", 0, 0, false, false, false, false, NULL, NULL }, + { "sysv_abi va_list", 0, 0, false, false, false, false, NULL, NULL }, + { "ms_hook_prologue", 0, 0, true, false, false, false, + ix86_handle_fndecl_attribute, NULL }, + { "callee_pop_aggregate_return", 1, 1, false, true, true, true, + ix86_handle_callee_pop_aggregate_return, NULL }, + { "interrupt", 0, 0, false, true, true, false, + ix86_handle_interrupt_attribute, NULL }, + { "no_caller_saved_registers", 0, 0, false, true, true, false, + ix86_handle_no_caller_saved_registers_attribute, NULL }, + { "naked", 0, 0, true, false, false, false, + ix86_handle_fndecl_attribute, NULL }, /* End element. */ - { NULL, 0, 0, false, false, false, NULL, false, NULL } + { NULL, 0, 0, false, false, false, false, NULL, NULL } }; /* Implement targetm.vectorize.builtin_vectorization_cost. */ |