diff options
| author | Nathan Sidwell <nathan@codesourcery.com> | 2001-07-21 09:42:21 +0000 |
|---|---|---|
| committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2001-07-21 09:42:21 +0000 |
| commit | c4372ef4c6476dc6ed6da01dbe1b44564aee938f (patch) | |
| tree | 600fa30db184de710e309de080b6a3ad19d82722 /gcc/cp/rtti.c | |
| parent | f4653d92782e80a2ebceae16e81a2850452aa0c3 (diff) | |
| download | gcc-c4372ef4c6476dc6ed6da01dbe1b44564aee938f.zip gcc-c4372ef4c6476dc6ed6da01dbe1b44564aee938f.tar.gz gcc-c4372ef4c6476dc6ed6da01dbe1b44564aee938f.tar.bz2 | |
tm.texi: Remove DEFAULT_VTABLE_THUNKS.
gcc:
* doc/tm.texi: Remove DEFAULT_VTABLE_THUNKS.
* config/freebsd.h: Likewise.
* config/linux.h: Likewise.
* config/openbsd.h: Likewise.
* config/alpha/linux-elf.h: Likewise.
* config/arm/linux-elf.h: Likewise.
* config/d30v/d30v.h: Likewise.
* config/fr30/fr30.h: Likewise.
* config/ia64/aix.h: Likewise.
* config/ia64/ia64.h: Likewise.
* config/mips/linux.h: Likewise.
* config/pj/pj.h: Likewise.
* config/rs6000/linux.h: Likewise.
* config/sparc/linux.h: Likewise.
* config/sparc/linux64.h: Likewise.
cp:
Remove flag_vtable_thunk. It is always on for the 3.0 ABI.
* cp-tree.h (CPTI_DELTA2_IDENTIFIER): Remove.
(CPTI_INDEX_IDENTIFIER): Remove.
(CPT_PFN_OR_DELTA2_IDENTIFIER): Remove.
(delta2_identifier): Remove.
(index_identifier): Remove.
(pfn_or_delta2_identifier): Remove.
(flag_vtable_thunks): Remove.
(VTABLE_DELTA2_NAME): Remove.
(VTABLE_INDEX_NAME): Remove.
(FNADDR_FROM_VTABLE_ENTRY): Adjust.
(vfunc_ptr_type_node): Adjust.
(VTABLE_NAME_PREFIX): Adjust.
(build_vfn_ref): Lose first parameter.
(fixup_all_virtual_upcast_offsets): Remove.
* decl.c (initialize_predefined_identifiers): Remove
delta2_identifier, index_identifier, pfn_or_delta2_identifier.
(init_decl_processing): Remove no-vtable-thunk code.
* decl2.c (flag_vtable_thunks): Remove.
(mark_vtable_entries): Remove no-vtable-thunk code.
* error.c (dump_decl): Remove no-vtable-thunk code.
(dump_expr): Adjust ptr to member function code.
* init.c (initialize_vtable_ptrs): Remove no-vtable-thunk
code.
* rtti.c (build_headof): Remove no-vtable-thunk code.
(get_tinfo_decl_dynamic): Adjust build_vfn_ref call.
* search.c (get_base_distance): Remove expand_upcast_fixups case.
(virtual_context) Remove.
(expand_upcast_fixups): Remove.
(fixup_virtual_upcast_offsets): Remove.
(fixup_all_virtual_upcast_offsets): Remove.
* typeck.c (get_member_function_from_ptrfunc): Remove
no-vtable-thunk code.
* call.c (build_over_call): Adjust call to build_vfn_ref.
* class.c (build_vfn_ref): Lose first parameter. Remove
no-vtable-thunk code.
(build_rtti_vtbl_entries): Remove no-vtable-thunk code.
(build_vtable_entry): Remove no-vtable-thunk code.
From-SVN: r44227
Diffstat (limited to 'gcc/cp/rtti.c')
| -rw-r--r-- | gcc/cp/rtti.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c index 6e32ed3..5638eb6 100644 --- a/gcc/cp/rtti.c +++ b/gcc/cp/rtti.c @@ -113,7 +113,6 @@ build_headof (exp) tree exp; { tree type = TREE_TYPE (exp); - tree aref; tree offset; tree index; @@ -133,12 +132,7 @@ build_headof (exp) /* The offset-to-top field is at index -2 from the vptr. */ index = build_int_2 (-2, -1); - aref = build_vtbl_ref (build_indirect_ref (exp, NULL), index); - - if (flag_vtable_thunks) - offset = aref; - else - offset = build_component_ref (aref, delta_identifier, NULL_TREE, 0); + offset = build_vtbl_ref (build_indirect_ref (exp, NULL), index); type = build_qualified_type (ptr_type_node, CP_TYPE_QUALS (TREE_TYPE (exp))); @@ -227,7 +221,7 @@ get_tinfo_decl_dynamic (exp) /* The RTTI information is at index -1. */ index = integer_minus_one_node; - t = build_vfn_ref ((tree *) 0, exp, index); + t = build_vfn_ref (exp, index); TREE_TYPE (t) = build_pointer_type (tinfo_decl_type); return t; } |
