aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog10
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/cp-lang.c2
-rw-r--r--gcc/langhooks-def.h2
-rw-r--r--gcc/langhooks.h4
-rw-r--r--gcc/tree.c1
-rw-r--r--gcc/tree.def9
7 files changed, 18 insertions, 15 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 936da30..04ce986 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,13 @@
+2010-05-14 Martin Jambor <mjambor@suse.cz>
+
+ * langhooks-def.h (LANG_HOOKS_FOLD_OBJ_TYPE_REF): Remove.
+ (LANG_HOOKS_INITIALIZER): Remove LANG_HOOKS_FOLD_OBJ_TYPE_REF.
+ * langhooks.h (struct lang_hooks_for_decls): Removed field
+ fold_obj_type_ref.
+ * tree.c (free_lang_data): Remove assignment to
+ lang_hooks.fold_obj_type_ref.
+ * tree.def (OBJ_TYPE_REF): Update comment.
+
2010-05-14 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44124
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 291881c..a68f71c 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2010-05-14 Martin Jambor <mjambor@suse.cz>
+
+ * cp-lang.c (LANG_HOOKS_FOLD_OBJ_TYPE_REF): Remove both its undef
+ and define.
+
2010-05-14 Jonathan Wakely <jwakely.gcc@gmail.com>
* call.c (build_new_method_call): Change warning text.
diff --git a/gcc/cp/cp-lang.c b/gcc/cp/cp-lang.c
index 6cae7b63..2cd3ac5 100644
--- a/gcc/cp/cp-lang.c
+++ b/gcc/cp/cp-lang.c
@@ -77,8 +77,6 @@ static tree cp_eh_personality (void);
#define LANG_HOOKS_DECL_PRINTABLE_NAME cxx_printable_name
#undef LANG_HOOKS_DWARF_NAME
#define LANG_HOOKS_DWARF_NAME cxx_dwarf_name
-#undef LANG_HOOKS_FOLD_OBJ_TYPE_REF
-#define LANG_HOOKS_FOLD_OBJ_TYPE_REF cp_fold_obj_type_ref
#undef LANG_HOOKS_INIT_TS
#define LANG_HOOKS_INIT_TS cp_init_ts
#undef LANG_HOOKS_EH_PERSONALITY
diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h
index f6ef3f1..673ac03 100644
--- a/gcc/langhooks-def.h
+++ b/gcc/langhooks-def.h
@@ -133,7 +133,6 @@ extern void lhd_omp_firstprivatize_type_sizes (struct gimplify_omp_ctx *,
/* Hooks for tree gimplification. */
#define LANG_HOOKS_GIMPLIFY_EXPR lhd_gimplify_expr
-#define LANG_HOOKS_FOLD_OBJ_TYPE_REF NULL
/* Tree dump hooks. */
extern bool lhd_tree_dump_dump_tree (void *, tree);
@@ -291,7 +290,6 @@ extern void lhd_end_section (void);
LANG_HOOKS_GET_INNERMOST_GENERIC_ARGS, \
LANG_HOOKS_FUNCTION_PARAMETER_PACK_P, \
LANG_HOOKS_GIMPLIFY_EXPR, \
- LANG_HOOKS_FOLD_OBJ_TYPE_REF, \
LANG_HOOKS_BUILTIN_FUNCTION, \
LANG_HOOKS_BUILTIN_FUNCTION_EXT_SCOPE, \
LANG_HOOKS_INIT_TS, \
diff --git a/gcc/langhooks.h b/gcc/langhooks.h
index ce3bd03..5ae2e46 100644
--- a/gcc/langhooks.h
+++ b/gcc/langhooks.h
@@ -417,10 +417,6 @@ struct lang_hooks
enum gimplify_status, though we can't see that type here. */
int (*gimplify_expr) (tree *, gimple_seq *, gimple_seq *);
- /* Fold an OBJ_TYPE_REF expression to the address of a function.
- KNOWN_TYPE carries the true type of the OBJ_TYPE_REF_OBJECT. */
- tree (*fold_obj_type_ref) (tree, tree);
-
/* Do language specific processing in the builtin function DECL */
tree (*builtin_function) (tree decl);
diff --git a/gcc/tree.c b/gcc/tree.c
index 934536f..acbdeee 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -5039,7 +5039,6 @@ free_lang_data (void)
lang_hooks.dwarf_name = lhd_dwarf_name;
lang_hooks.decl_printable_name = gimple_decl_printable_name;
lang_hooks.set_decl_assembler_name = lhd_set_decl_assembler_name;
- lang_hooks.fold_obj_type_ref = gimple_fold_obj_type_ref;
/* Reset diagnostic machinery. */
diagnostic_starter (global_dc) = default_diagnostic_starter;
diff --git a/gcc/tree.def b/gcc/tree.def
index 6c3c480..1f6ad82 100644
--- a/gcc/tree.def
+++ b/gcc/tree.def
@@ -432,16 +432,13 @@ DEFTREECODE (ALIGN_INDIRECT_REF, "align_indirect_ref", tcc_reference, 1)
or 0 if the alignment is unknown. */
DEFTREECODE (MISALIGNED_INDIRECT_REF, "misaligned_indirect_ref", tcc_reference, 2)
-/* Used to represent lookup of runtime type dependent data. Often this is
- a reference to a vtable, but it needn't be. Operands are:
+/* Used to represent lookup in a virtual method table which is dependent on
+ the runtime type of an object. Operands are:
OBJ_TYPE_REF_EXPR: An expression that evaluates the value to use.
OBJ_TYPE_REF_OBJECT: Is the object on whose behalf the lookup is
being performed. Through this the optimizers may be able to statically
determine the dynamic type of the object.
- OBJ_TYPE_REF_TOKEN: Something front-end specific used to resolve the
- reference to something simpler, usually to the address of a DECL.
- Never touched by the middle-end. Good choices would be either an
- identifier or a vtable index. */
+ OBJ_TYPE_REF_TOKEN: An integer index to the virtual method table. */
DEFTREECODE (OBJ_TYPE_REF, "obj_type_ref", tcc_expression, 3)
/* Constructor: return an aggregate value made from specified components.