diff options
Diffstat (limited to 'gcc/target.h')
-rw-r--r-- | gcc/target.h | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/gcc/target.h b/gcc/target.h index 43bdfc41ada..0d60b1134ce 100644 --- a/gcc/target.h +++ b/gcc/target.h @@ -481,7 +481,7 @@ struct gcc_target /* Target builtin that implements vector permute. */ tree (* builtin_vec_perm) (tree, tree*); -} vectorize; + } vectorize; /* The initial value of target_flags. */ int default_target_flags; @@ -825,6 +825,10 @@ struct gcc_target checks to handle_dll_attribute (). */ bool (* valid_dllimport_attribute_p) (const_tree decl); + /* If non-zero, align constant anchors in CSE to a multiple of this + value. */ + unsigned HOST_WIDE_INT const_anchor; + /* Functions relating to calls - argument passing, returns, etc. */ struct calls { bool (*promote_function_args) (const_tree fntype); @@ -913,6 +917,24 @@ struct gcc_target is not permitted on TYPE1 and TYPE2, NULL otherwise. */ const char *(*invalid_binary_op) (int op, const_tree type1, const_tree type2); + /* Return the diagnostic message string if TYPE is not valid as a + function parameter type, NULL otherwise. */ + const char *(*invalid_parameter_type) (const_tree type); + + /* Return the diagnostic message string if TYPE is not valid as a + function return type, NULL otherwise. */ + const char *(*invalid_return_type) (const_tree type); + + /* If values of TYPE are promoted to some other type when used in + expressions (analogous to the integer promotions), return that type, + or NULL_TREE otherwise. */ + tree (*promoted_type) (const_tree type); + + /* Convert EXPR to TYPE, if target-specific types with special conversion + rules are involved. Return the converted expression, or NULL to apply + the standard conversion rules. */ + tree (*convert_to_type) (tree type, tree expr); + /* Return the array of IRA cover classes for the current target. */ const enum reg_class *(*ira_cover_classes) (void); |