diff options
author | Eric Botcazou <ebotcazou@adacore.com> | 2018-06-28 06:21:13 +0000 |
---|---|---|
committer | Eric Botcazou <ebotcazou@gcc.gnu.org> | 2018-06-28 06:21:13 +0000 |
commit | fb18c0c9fe26a77541dd63ca351832194969bef9 (patch) | |
tree | 48aa3b3611869946b4547113caed9fe78e209832 /gcc/tree-inline.h | |
parent | 09e1386fd0c6de42272edc9bb0a4b7c2e193b7a7 (diff) | |
download | gcc-fb18c0c9fe26a77541dd63ca351832194969bef9.zip gcc-fb18c0c9fe26a77541dd63ca351832194969bef9.tar.gz gcc-fb18c0c9fe26a77541dd63ca351832194969bef9.tar.bz2 |
tree-inline.c (remap_gimple_stmt): Force input_location on the new statement if id->reset_location is true.
* tree-inline.c (remap_gimple_stmt): Force input_location on the new
statement if id->reset_location is true.
(copy_edges_for_bb): Do not set goto_locus on the new edges if
id->reset_location is true.
(copy_phis_for_bb): Force input_location on the arguments if
id->reset_location is true.
(expand_call_inline): Set id->reset_location if DECL_IGNORED_P
is set on the function to be inlined.
* tree-inline.h (struct copy_body_data): Move remapping_type_depth and
prevent_decl_creation_for_types fields up and add reset_location field.
From-SVN: r262207
Diffstat (limited to 'gcc/tree-inline.h')
-rw-r--r-- | gcc/tree-inline.h | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/gcc/tree-inline.h b/gcc/tree-inline.h index faeca2f..29caab7 100644 --- a/gcc/tree-inline.h +++ b/gcc/tree-inline.h @@ -80,6 +80,9 @@ struct copy_body_data is not. */ gcall *call_stmt; + /* > 0 if we are remapping a type currently. */ + int remapping_type_depth; + /* Exception landing pad the inlined call lies in. */ int eh_lp_nr; @@ -110,11 +113,14 @@ struct copy_body_data /* True if this statement will need to be regimplified. */ bool regimplify; - /* True if trees should not be unshared. */ + /* True if trees may not be unshared. */ bool do_not_unshare; - /* > 0 if we are remapping a type currently. */ - int remapping_type_depth; + /* True if new declarations may not be created during type remapping. */ + bool prevent_decl_creation_for_types; + + /* True if the location information will need to be reset. */ + bool reset_location; /* A function to be called when duplicating BLOCK nodes. */ void (*transform_lang_insert_block) (tree); @@ -145,9 +151,6 @@ struct copy_body_data /* A list of addressable local variables remapped into the caller when inlining a call within an OpenMP SIMD-on-SIMT loop. */ vec<tree> *dst_simt_vars; - - /* Do not create new declarations when within type remapping. */ - bool prevent_decl_creation_for_types; }; /* Weights of constructions for estimate_num_insns. */ |