* tree.def (VTABLE_REF): Remove. (OBJ_TYPE_REF): New. (TRY_CATCH_EXPR, TRY_FINALLY_EXPR): Set type 's'. * expr.c (expand_expr_real_1): Replace VTABLE_REF with OBJ_TYPE_REF. * fold-const.c (non_lvalue): Likewise. * gimplify.c (gimplify_expr): Likewise. (gimplify_call_expr): Use is_gimple_call_addr. * langhooks-def.h (LANG_HOOKS_FOLD_OBJ_TYPE_REF): New. * langhooks.h (fold_obj_type_ref): New. * tree-gimple.c (is_gimple_call_addr): New. * tree-gimple.h (is_gimple_call_addr): Declare. * tree-inline.c (inlinable_function_p): Fix merge error. (estimate_num_insns_1): Replace VTABLE_REF with OBJ_TYPE_REF. * tree-pretty-print.c (dump_generic_node): Likewise. (print_call_name): Handle OBJ_TYPE_REF. * tree-ssa-ccp.c (fold_stmt): Fold OBJ_TYPE_REF. * tree-ssa-operands.c (get_expr_operands): Handle OBJ_TYPE_REF. * tree.h (OBJ_TYPE_REF_EXPR): New. (OBJ_TYPE_REF_OBJECT, OBJ_TYPE_REF_TOKEN): New. * doc/c-tree.texi (VTABLE_REF): Remove. * objc/objc-act.c (build_objc_method_call): Build an OBJ_TYPE_REF. cp/ * class.c (build_vfn_ref): Take a pointer not object. Build an OBJ_TYPE_REF. (cp_fold_obj_type_ref): New. * call.c (build_over_call): Update build_vfn_ref call. * cp-lang.c (LANG_HOOKS_FOLD_OBJ_TYPE_REF): New. * cp-tree.h (cp_fold_obj_type_ref): Declare. testsuite/ * g++.dg/opt/devirt1.C: New. From-SVN: r83531
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
abi | Loading commit data... | |
bprob | Loading commit data... | |
charset | Loading commit data... | |
compat | Loading commit data... | |
conversion | Loading commit data... | |
cpp | Loading commit data... | |
debug | Loading commit data... | |
eh | Loading commit data... | |
expr | Loading commit data... | |
ext | Loading commit data... | |
gcov | Loading commit data... | |
inherit | Loading commit data... | |
init | Loading commit data... | |
lookup | Loading commit data... | |
opt | Loading commit data... | |
other | Loading commit data... | |
overload | Loading commit data... | |
parse | Loading commit data... | |
pch | Loading commit data... | |
rtti | Loading commit data... | |
special | Loading commit data... | |
tc1 | Loading commit data... | |
template | Loading commit data... | |
tls | Loading commit data... | |
tree-ssa | Loading commit data... | |
warn | Loading commit data... | |
README | Loading commit data... | |
dg.exp | Loading commit data... |