diff options
author | echristo <echristo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-01-06 23:16:23 +0000 |
---|---|---|
committer | echristo <echristo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-01-06 23:16:23 +0000 |
commit | b215c058e8d54661a425789ce08b8658e89b0282 (patch) | |
tree | 40c29d6ebecee3ad150d3ed86b8de4eacf4f5d3b /gcc/target.h | |
parent | 1d31417daaa42eef5c82d33702e16ce7d0257311 (diff) | |
download | gcc-b215c058e8d54661a425789ce08b8658e89b0282.tar.gz |
2006-01-06 Eric Christopher <echristo@apple.com>
* doc/tm.texi (TARGET_ASM_EMIT_EXCEPT_TABLE_LABEL): Document.
(TARGET_UNWIND_EMIT): Fix spelling.
* target.h (gcc_target): Add except_table_label.
* except.c (output_function_exception_table): Use.
* varasm.c (default_emit_except_table_label): New.
* target-def.h (TARGET_ASM_EMIT_EXCEPT_TABLE_LABEL): New default
define.
(asm_out): Add here.
* output.h (default_emit_except_table_label): Prototype.
* config/darwin-protos.h (darwin_emit_except_table_label): Ditto.
* config/darwin.c (darwin_emit_except_table_label): Define.
* config/darwin.h (TARGET_ASM_EMIT_EXCEPT_TABLE): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@109435 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/target.h')
-rw-r--r-- | gcc/target.h | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/gcc/target.h b/gcc/target.h index 6a494631d91..8c61bfe9692 100644 --- a/gcc/target.h +++ b/gcc/target.h @@ -102,6 +102,10 @@ struct gcc_target this is only a placeholder for an omitted FDE. */ void (* unwind_label) (FILE *, tree, int, int); + /* Output code that will emit a label to divide up the exception + table. */ + void (* except_table_label) (FILE *); + /* Emit any directives required to unwind this instruction. */ void (* unwind_emit) (FILE *, rtx); @@ -373,7 +377,7 @@ struct gcc_target /* Fold a target-specific builtin. */ tree (* fold_builtin) (tree fndecl, tree arglist, bool ignore); - + /* For a vendor-specific fundamental TYPE, return a pointer to a statically-allocated string containing the C++ mangling for TYPE. In all other cases, return NULL. */ @@ -569,7 +573,7 @@ struct gcc_target specified. Use this hook if the target needs to add extra validation checks to handle_dll_attribute (). */ bool (* valid_dllimport_attribute_p) (tree decl); - + /* Functions relating to calls - argument passing, returns, etc. */ struct calls { bool (*promote_function_args) (tree fntype); @@ -620,7 +624,7 @@ struct gcc_target /* Return the diagnostic message string if function without a prototype is not allowed for this 'val' argument; NULL otherwise. */ - const char *(*invalid_arg_for_unprototyped_fn) (tree typelist, + const char *(*invalid_arg_for_unprototyped_fn) (tree typelist, tree funcdecl, tree val); /* Return an rtx for the return value location of the function @@ -677,7 +681,7 @@ struct gcc_target visibility has been explicitly specified. If the target needs to specify a visibility other than that of the containing class, use this hook to set DECL_VISIBILITY and - DECL_VISIBILITY_SPECIFIED. */ + DECL_VISIBILITY_SPECIFIED. */ void (*determine_class_data_visibility) (tree decl); /* Returns true (the default) if virtual tables and other similar implicit class data objects are always COMDAT if they @@ -691,7 +695,7 @@ struct gcc_target /* TYPE is a C++ class (i.e., RECORD_TYPE or UNION_TYPE) that has just been defined. Use this hook to make adjustments to the class (eg, tweak visibility or perform any other required - target modifications). */ + target modifications). */ void (*adjust_class_at_definition) (tree type); } cxx; |