diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2009-06-15 14:27:18 +0000 |
---|---|---|
committer | Aldy Hernandez <aldyh@gcc.gnu.org> | 2009-06-15 14:27:18 +0000 |
commit | d40eb1588359deacf6d7d32de236231e5ee04905 (patch) | |
tree | 675c658fb5a68a4856057fc5a1a9a8a4ba5b3a12 | |
parent | fc26fae3db8a2eacc73224e2b3e0ab2aa3201eeb (diff) | |
download | gcc-d40eb1588359deacf6d7d32de236231e5ee04905.tar.gz |
except.c (init_eh): Use BUILTINS_LOCATION when calling build_decl.
* except.c (init_eh): Use BUILTINS_LOCATION when calling build_decl.
* tree-eh.c (lower_try_finally_switch): Initialize tf_loc.
From-SVN: r148493
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/except.c | 12 | ||||
-rw-r--r-- | gcc/tree-eh.c | 2 |
3 files changed, 15 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index bc1fba79187..742b43c8c3c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2009-06-15 Aldy Hernandez <aldyh@redhat.com> + + * except.c (init_eh): Use BUILTINS_LOCATION when calling build_decl. + +2009-06-15 Aldy Hernandez <aldyh@redhat.com> + + * tree-eh.c (lower_try_finally_switch): Initialize tf_loc. + 2009-06-15 Rafael Avila de Espindola <espindola@google.com> * cgraphunit.c (cgraph_function_versioning,save_inline_function_body): diff --git a/gcc/except.c b/gcc/except.c index 8ec252bbab3..0e207d53509 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -221,12 +221,12 @@ init_eh (void) sjlj_fc_type_node = lang_hooks.types.make_type (RECORD_TYPE); - f_prev = build_decl (DECL_SOURCE_LOCATION (current_function_decl), + f_prev = build_decl (BUILTINS_LOCATION, FIELD_DECL, get_identifier ("__prev"), build_pointer_type (sjlj_fc_type_node)); DECL_FIELD_CONTEXT (f_prev) = sjlj_fc_type_node; - f_cs = build_decl (DECL_SOURCE_LOCATION (current_function_decl), + f_cs = build_decl (BUILTINS_LOCATION, FIELD_DECL, get_identifier ("__call_site"), integer_type_node); DECL_FIELD_CONTEXT (f_cs) = sjlj_fc_type_node; @@ -235,16 +235,16 @@ init_eh (void) tmp = build_array_type (lang_hooks.types.type_for_mode (targetm.unwind_word_mode (), 1), tmp); - f_data = build_decl (DECL_SOURCE_LOCATION (current_function_decl), + f_data = build_decl (BUILTINS_LOCATION, FIELD_DECL, get_identifier ("__data"), tmp); DECL_FIELD_CONTEXT (f_data) = sjlj_fc_type_node; - f_per = build_decl (DECL_SOURCE_LOCATION (current_function_decl), + f_per = build_decl (BUILTINS_LOCATION, FIELD_DECL, get_identifier ("__personality"), ptr_type_node); DECL_FIELD_CONTEXT (f_per) = sjlj_fc_type_node; - f_lsda = build_decl (DECL_SOURCE_LOCATION (current_function_decl), + f_lsda = build_decl (BUILTINS_LOCATION, FIELD_DECL, get_identifier ("__lsda"), ptr_type_node); DECL_FIELD_CONTEXT (f_lsda) = sjlj_fc_type_node; @@ -265,7 +265,7 @@ init_eh (void) #endif tmp = build_index_type (tmp); tmp = build_array_type (ptr_type_node, tmp); - f_jbuf = build_decl (DECL_SOURCE_LOCATION (current_function_decl), + f_jbuf = build_decl (BUILTINS_LOCATION, FIELD_DECL, get_identifier ("__jbuf"), tmp); #ifdef DONT_USE_BUILTIN_SETJMP /* We don't know what the alignment requirements of the diff --git a/gcc/tree-eh.c b/gcc/tree-eh.c index e38b1bd8160..b8972063c9d 100644 --- a/gcc/tree-eh.c +++ b/gcc/tree-eh.c @@ -1333,7 +1333,7 @@ lower_try_finally_switch (struct leh_state *state, struct leh_tf_state *tf) gimple_seq finally; struct pointer_map_t *cont_map = NULL; /* The location of the TRY_FINALLY stmt. */ - location_t tf_loc; + location_t tf_loc = gimple_location (tf->try_finally_expr); /* The location of the finally block. */ location_t finally_loc; |