aboutsummaryrefslogtreecommitdiff
path: root/gcc/cgraph.h
diff options
context:
space:
mode:
authorMartin Jambor <mjambor@suse.cz>2013-06-25 13:09:21 +0200
committerMartin Jambor <jamborm@gcc.gnu.org>2013-06-25 13:09:21 +0200
commitc13bc3d998b26a9d50c6bb07d0f8f372117e7a20 (patch)
treed82bab7c445398d72a006a056d61c12cf0f00522 /gcc/cgraph.h
parent6cdbb7e8a1f92fcc2504d56d68ff981803d499a7 (diff)
downloadgcc-c13bc3d998b26a9d50c6bb07d0f8f372117e7a20.zip
gcc-c13bc3d998b26a9d50c6bb07d0f8f372117e7a20.tar.gz
gcc-c13bc3d998b26a9d50c6bb07d0f8f372117e7a20.tar.bz2
re PR middle-end/57670 (Member-pointer calls should not be redirected to builtin_unreachable)
2013-06-25 Martin Jambor <mjambor@suse.cz> PR middle-end/57670 * cgraph.h (cgraph_indirect_call_info): New flag member_ptr. * ipa-prop.c (ipa_print_node_jump_functions): Mark member pointer calls in the dump. (ipa_note_param_call): Initialize member_ptr flag. (ipa_analyze_indirect_call_uses): Set member_ptr flag. (ipa_make_edge_direct_to_target): Bail out if member_ptr is set. (ipa_write_indirect_edge_info): Stream member_ptr flag. (ipa_read_indirect_edge_info): Likewise. testsuite/ * g++.dg/ipa/pr57670.C (H): New test. From-SVN: r200393
Diffstat (limited to 'gcc/cgraph.h')
-rw-r--r--gcc/cgraph.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/cgraph.h b/gcc/cgraph.h
index 1e17cb7..e66eecd 100644
--- a/gcc/cgraph.h
+++ b/gcc/cgraph.h
@@ -440,6 +440,8 @@ struct GTY(()) cgraph_indirect_call_info
/* Set when the call is a call of a pointer loaded from contents of an
aggregate at offset. */
unsigned agg_contents : 1;
+ /* Set when this is a call through a member pointer. */
+ unsigned member_ptr : 1;
/* When the previous bit is set, this one determines whether the destination
is loaded from a parameter passed by reference. */
unsigned by_ref : 1;