diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2014-11-14 16:47:53 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2014-11-14 15:47:53 +0000 |
commit | 54e774c010842d336124426aec671a96712cc1d7 (patch) | |
tree | b9b240b3b0e9c9a5fc0a8dd259d3fa2ad0e27aa0 /gcc/lto/lto.c | |
parent | 7f201a67fbf807634ed09a0b8cb8b44d0ed31227 (diff) | |
download | gcc-54e774c010842d336124426aec671a96712cc1d7.zip gcc-54e774c010842d336124426aec671a96712cc1d7.tar.gz gcc-54e774c010842d336124426aec671a96712cc1d7.tar.bz2 |
optc-save-gen.awk: Output cl_target_option_eq...
* optc-save-gen.awk: Output cl_target_option_eq,
cl_target_option_hash, cl_target_option_stream_out,
cl_target_option_stream_in functions.
* opth-gen.awk: Output prototypes for
cl_target_option_eq and cl_target_option_hash.
* lto-streamer.h (cl_target_option_stream_out,
cl_target_option_stream_in): Declare.
* tree.c (cl_option_hash_hash): Use cl_target_option_hash.
(cl_option_hash_eq): Use cl_target_option_eq.
* tree-streamer-in.c (unpack_value_fields): Stream in
TREE_TARGET_OPTION.
* lto-streamer-out.c (DFS::DFS_write_tree_body): Follow
DECL_FUNCTION_SPECIFIC_TARGET.
(hash_tree): Hash TREE_TARGET_OPTION; visit
DECL_FUNCTION_SPECIFIC_TARGET.
* tree-streamer-out.c (streamer_pack_tree_bitfields): Skip
TS_TARGET_OPTION.
(streamer_write_tree_body): Output TS_TARGET_OPTION.
* lto.c (compare_tree_sccs_1): Compare cl_target_option_eq.
From-SVN: r217571
Diffstat (limited to 'gcc/lto/lto.c')
-rw-r--r-- | gcc/lto/lto.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c index 98d48fb..ff7f9f6 100644 --- a/gcc/lto/lto.c +++ b/gcc/lto/lto.c @@ -1377,7 +1377,8 @@ compare_tree_sccs_1 (tree t1, tree t2, tree **map) return false; if (CODE_CONTAINS_STRUCT (code, TS_TARGET_OPTION)) - gcc_unreachable (); + if (!cl_target_option_eq (TREE_TARGET_OPTION (t1), TREE_TARGET_OPTION (t2))) + return false; if (CODE_CONTAINS_STRUCT (code, TS_OPTIMIZATION)) if (memcmp (TREE_OPTIMIZATION (t1), TREE_OPTIMIZATION (t2), |