1. 06 Jul, 2004 9 commits
    • sparc.c (get_pc_symbol): Rename into add_pc_to_pic_symbol. · ef573211
      	* config/sparc/sparc.c (get_pc_symbol): Rename into
      	add_pc_to_pic_symbol.
      	(get_pc_symbol_name): Rename into add_pc_to_pic_symbol_name.
      	(load_pic_register): Account for previous changes.
      	Use reg_names.  Don't create the label twice.
      	* config/sparc/sparc.md (UNSPEC_GET_PC): Rename into
      	UNSPEC_LOAD_PCREL_SYM.
      	(get_pc): Rename into load_pcrel_sym.  Add predicate to
      	operands.  Remove condition.
      
      From-SVN: r84151
      Eric Botcazou committed
    • re PR c++/3671 (cannot deduce enum template parameter with multiple overloads) · fddabb2c
      	PR c++/3671
      	* pt.c (convert_nontype_argument): Disallow conversions between
      	different enumeration types.
      
      	PR c++/3671
      	* g++.dg/template/spec14.C: New test.
      
      From-SVN: r84150
      Giovanni Bajo committed
    • dbxout.c (dbxout_type): Don't test whether the binfo slot of RECORD, UNION &… · 2da8f023
      dbxout.c (dbxout_type): Don't test whether the binfo slot of RECORD, UNION & QUAL_UNION is actually a binfo.
      
      	* dbxout.c (dbxout_type): Don't test whether the binfo slot of
      	RECORD, UNION & QUAL_UNION is actually a binfo.
      
      From-SVN: r84149
      Nathan Sidwell committed
    • tree.h (TREE_VIA_VIRTUAL): Rename to ... · 809e3e7f
      	* tree.h (TREE_VIA_VIRTUAL): Rename to ...
      	(BINFO_VIRTUAL_P): ... here. Require TREE_BINFO only.
      	(BINFO_MARKED, BINFO_FLAG_[16]): New binfo flags.
      	* dbxout.c (dbxout_type): Use BINFO_VIRTUAL_P.
      	* dwarf2out.c (add_data_member_location_attribute): Likewise.
      	(gen_inheritance_die): Likewise.
      	* tree-dump.c (deque_and_dump): Likewise.
      	* doc/c-tree.texi (Binfos): Add under reconstruction note.
      
      	* cp/cp-tree.h (BINFO_MARKED): Remove.
      	(BINFO_VTABLE_PATH_MARKED, BINFO_NEW_VTABLE_MARKED,
      	BINFO_DEPENDENT_BASE_P, BINFO_LOST_PRIMARY_P,
      	BINFO_INDIRECT_PRIMARY_P): Use appropriate BINFO_FLAG_n.
      	(SET_BINFO_NEW_VTABLE_MARKED): Use BINFO_VIRTUAL_P.
      	* cp/class.c (build_base_path): Use BINFO_VIRTUAL_P.
      	(mark_primary_bases, determine_primary_base, base_derived_from,
      	dfs_find_final_overrider, dfs_find_final_overrider_q,
      	dfs_find_inal_overrider_post, update_vtable_entry_for_fn,
      	dfs_modify_vtables, walk_subobject_offsets,
      	layout_nonempty_base_or_field, build_base_field,
      	build_base_fields, propagate_binfo_offsets, layout_virtual_bases,
      	end_of_class, get_vfield_name, dump_class_hierarchy, dump_vtable,
      	finish_vtbls, build_vtt_inits, dfs_build_secondary_vptr_vtt_inits,
      	build_ctor_vtbl_group, accumulate_vtble_inits,
      	dfs_accumulate_vtbls_inits, build_vbase_offset_vtbl_entries,
      	build_vcall_offset_vtbl_entries, add_vcall_offset_vtbl_entries_r,
      	add_vcall_offset_vtbl_entries_1): Likewise.
      	* cp/decl.c (xref_basetypes): Incomming virtual base indicated by
      	TREE_TYPE. Adjust.
      	* cp/dump.c (cp_dump_tree): Use BINFO_VIRTUAL_P.
      	* cp/init.c (finish_init_stmts, sort_mem_initializers,
      	emit_mem_initializers, build_vtble_address, expand_member_init,
      	push_base_cleanups): Likewise.
      	* cp/method.c (do_build_copy_constructor): Likewise.
      	* cp/pt.c (instantiate_class_template,
      	get_template_base_recursive): Likewise.
      	* cp/rtti.c (dfs_class_hint_mark, get_pseudo_ti_init,
      	get_pseudo_ti_desc): Likewise.
      	* cp/search.c (lookup_base_r, dynamic_cast_base_recurse,
      	binfo_from_vbase, binfo_via_virtual, copied_binfo,
      	original_binfo): Likewise.
      	* cp/semantics.c (finish_base_specifier): Virtualness is indicated
      	by TREE_TYPE.
      	* cp/tree.c (copy_base_binfos): Use BINFO_VIRTUAL_P.
      
      	* java/java-tree.h (CLASS_HAS_SUPER_FLAG): Use BINFO_FLAG_1.
      	* java/class.c (add_interface_do): Use BINFO_VIRTUAL_P.
      
      From-SVN: r84148
      Nathan Sidwell committed
    • revert: re PR tree-optimization/16115 (double-destruction problem with argument… · a95d27c8
      revert: re PR tree-optimization/16115 (double-destruction problem with argument passing via temporary (breaks auto_ptr))
      
      	Revert:
      	2004-06-24  Jason Merrill  <jason@redhat.com>
      	PR c++/16115
      	* decl.c (grokparms): Give the PARM_DECL reference type if the
      	parameter is passed by invisible reference.
      
      From-SVN: r84147
      Mark Mitchell committed
    • mcore.c (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE): Define. · 4404cf7d
      	* config/mcore/mcore.c (TARGET_SCHED_USE_DFA_PIPELINE_INTERFACE):
      	Define.
      	* config/mcore/mcore.md: Model memory latency with a simple DFA
      	pipeline description instead of a define_function_unit.
      
      From-SVN: r84146
      Steven Bosscher committed
    • File.java (toURI): Merge from Classpath. · 23f99379
      2004-07-05  Anthony Green  <green@redhat.com>
                                                                                                                                                     * java/io/File.java (toURI): Merge from Classpath.
      
      From-SVN: r84145
      Anthony Green committed
    • langhooks-def.h (LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P): Extra arg. · 5377d5ba
      	* langhooks-def.h (LANG_HOOKS_TREE_INLINING_VAR_MOD_TYPE_P): Extra arg.
      	* langhooks.h (var_mod_type_p): Likewise.
      	* c-decl.c (finish_decl): Add extra arg to variably_modified_type_p.
      	* expr.c (count_type_elements): Properly handle return from
      	array_type_nelts and properly test for overflow.
      	* gimplify.c (gimplify_init_constructor): Properly handle return
      	from array_type_nelts.
      	(gimplify_addr_expr): Remove redundant clear of TREE_SIDE_EFFECTS.
      	* integrate.c (copy_decl_for_inlining): Correct comments.
      	* tree-inline.c (remap_decl): Update comments, remove dead code,
      	and copy DECL_FIELD_OFFSET and DECL_QUALIFIER, if they exist.
      	(remap_type): Only remap if variably modified by vars in function
      	being inlined.
      	(copy_body_r): Use compatible_type langhooks to see when can fold.
      	(setup_one_parameter): Don't remap type.
      	(inline_forbidden_p_1): Add arg to variably_modified_type_p.
      	* tree.c (recompute_tree_invarant_for_addr_expr): Properly
      	compute TREE_INVARIANT for decl case.
      	(find_var_from_fn): New function.
      	(variably_modified_type_p): Add arg and call new function.
      	* tree.h (variably_modified_type_p): Add extra arg.
      
      	* cp/cp-lang.c (cp_var_mod_type_p): Add extra arg.
      	* cp/decl.c (grokdeclarator): Extra arg to variably_modified_type_p.
      	* cp/pt.c (check_instantiated_args, unify): Likewise.
      
      From-SVN: r84144
      Richard Kenner committed
    • Daily bump. · aac1d259
      From-SVN: r84142
      GCC Administrator committed
  2. 05 Jul, 2004 31 commits
    • VMClassLoader.java (init): Check classpath entry before passing to URL constructor. · a1433c46
      2004-07-05  Bryce McKinlay  <mckinlay@redhat.com>
      
      	* gnu/gcj/runtime/VMClassLoader.java (init): Check classpath entry
      	before passing to URL constructor. Rethrow any MalformedURLException
      	as a RuntimeException. Catch MalformedURLException specifically, not
      	all exceptions.
      
      From-SVN: r84138
      Bryce McKinlay committed
    • Locale.java (readObject): Intern strings read from object stream. · a86f0372
      2004-07-05  Bryce McKinlay  <mckinlay@redhat.com>
      
      	* java/util/Locale.java (readObject): Intern strings read from
      	object stream.
      
      From-SVN: r84137
      Bryce McKinlay committed
    • Make-lang.in (check-c++, [...]): Add some comments. · dcbaa800
      2004-07-05  Phil Edwards  <phil@codesourcery.com>
      
      	* Make-lang.in (check-c++, lang_checks):  Add some comments.
      
      From-SVN: r84136
      Phil Edwards committed
    • sparc.md (nonlocal_goto): Remove disabled code. · 6109c659
      	* config/sparc/sparc.md (nonlocal_goto): Remove disabled code.
      	(goto_handler_and_restore_v9): Delete disabled insn.
      	(goto_handler_and_restore_v9_sp64): Likewise.
      
      From-SVN: r84135
      Eric Botcazou committed
    • calls.c (load_register_parameters): Call expand_shift instead of expand_binop… · 09b52670
      calls.c (load_register_parameters): Call expand_shift instead of expand_binop with ashl_optab (or other shift...
      
      
      	* calls.c (load_register_parameters): Call expand_shift instead
      	of expand_binop with ashl_optab (or other shift optab) directly.
      	* expr.c (emit_group_load, emit_group_store): Likewise.
      	* function.c (assign_parm_setup_block): Likewise.
      	* stmt.c (shift_return_value): Likewise.
      
      From-SVN: r84134
      Roger Sayle committed
    • expr.c (expand_assignment): Disable the bitfield += optimizations. · 7682ef83
      	* expr.c (expand_assignment): Disable the bitfield += optimizations.
      
      	* gcc.c-torture/execute/20040629-1.c (FIELDS1, FIELDS2): Define to
      	nothing if not yet defined.  Use it in b, c and d type definitions.
      	* gcc.c-torture/execute/20040705-1.c: New test.
      	* gcc.c-torture/execute/20040705-2.c: New test.
      
      From-SVN: r84133
      Jakub Jelinek committed
    • configure.in: Do not prepend $srcdir to /dev/null in makefile fragments. · 7b61653a
      2004-07-05  Phil Edwards  <phil@codesourcery.com>
      
      	* configure.in:  Do not prepend $srcdir to /dev/null in
      	makefile fragments.
      	* configure:  Regenerate.
      
      From-SVN: r84132
      Phil Edwards committed
    • * doc/sourcebuild.texi: Revert previous patch. · f5829576
      From-SVN: r84131
      Joseph Myers committed
    • c-decl.c, [...]: Don't check TARGET_MEM_FUNCTIONS. · 8f99553f
      	* c-decl.c, config/m32r/m32r.c, expr.c, optabs.c: Don't check
      	TARGET_MEM_FUNCTIONS.
      	* system.h: Poison TARGET_MEM_FUNCTIONS.
      	* libfuncs.h (LTI_bcopy, LTI_bcmp, LTI_bzero, bcopy_libfunc,
      	bcmp_libfunc, bzero_libfunc): Remove.
      	* optabs.c (init_obtabs): Don't set bcopy_libfunc, bcmp_libfunc or
      	bzero_libfunc.
      	* doc/tm.texi (TARGET_MEM_FUNCTIONS): Remove.
      	* doc/standards.texi: Don't mention calling BSD string functions.
      	* doc/invoke.texi: Likewise.  Mention that memmove may be called.
      	* config/vax/t-memfuncs: New.
      	* config/memcmp.c, config/memcpy.c, config/memmove.c,
      	config/memset.c: New.
      	* config/pdp11/t-pdp11 (LIB2FUNCS_EXTRA): Use these files.
      	* config.gcc (vax-*-bsd*, vax-*-sysv*, vax-*-ultrix*): Use
      	vax/t-memfuncs.
      	* config/alpha/alpha.h, config/arc/arc.h, config/arm/arm.h,
      	config/avr/avr.h, config/c4x/c4x.h, config/cris/aout.h,
      	config/elfos.h, config/gnu.h, config/h8300/h8300.h,
      	config/i386/gas.h, config/ia64/ia64.h, config/interix.h,
      	config/ip2k/ip2k.h, config/lynx-ng.h, config/m32r/m32r.h,
      	config/mcore/mcore.h, config/mips/mips.h, config/mmix/mmix.h,
      	config/netbsd.h, config/openbsd.h, config/pa/pa.h,
      	config/rs6000/rs6000.h, config/rtems.h, config/s390/s390.h,
      	config/sh/sh.h, config/sparc/sparc.h, config/stormy16/stormy16.h,
      	config/svr3.h: Don't define TARGET_MEM_FUNCTIONS.
      
      From-SVN: r84130
      Joseph Myers committed
    • libtool-version: New. · bd4c8250
      2004-07-05  Matthias Klose  <doko@debian.org>
      
              * libtool-version: New.
              * Makefile.am (libmudflap_la_LDFLAGS, libmudflapth_la_LDFLAGS):
              Use -version-info for soname.
              * Makefile.in: Regenerate.
              * configure.ac: Remove libtool_VERSION macro
              * configure: Regenerate
      
      From-SVN: r84129
      Matthias Klose committed
    • function.c (assign_parm_setup_reg): Properly rename variables in… · b6448565
      function.c (assign_parm_setup_reg): Properly rename variables in FUNCTION_ARG_CALLEE_COPIES section.
      
              * function.c (assign_parm_setup_reg): Properly rename variables in
              FUNCTION_ARG_CALLEE_COPIES section.
      
      From-SVN: r84128
      Richard Henderson committed
    • ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Use RECORD_OR_UNION_CHECK. · cb42deba
      	* ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Use
      	RECORD_OR_UNION_CHECK.
      	(TYPE_CONTAINS_TEMPLATE_P): Likewise.
      
      From-SVN: r84127
      Andreas Schwab committed
    • tree-mudflap.c: Include cgraph.h. · c31b8e1b
      gcc:
      	* tree-mudflap.c: Include cgraph.h.
      	(mf_init_extern_trees): Rename to mudflap_init.  Export.
      	Rewrite to create synthetic declarations instead of looking
      	up declarations from mf-runtime.h.
      	(mf_make_builtin, mf_make_cache_struct_type): New functions.
      	(mf_cache_shift_decl, mf_cache_mask_decl, mf_unregister_fndecl):
      	Correct commentary.
      	(execute_mudflap_function_decls, mudflap_register_call):
      	Don't call mf_init_extern_trees.
      	(mudflap_finish_file): Use cgraph_build_static_cdtor.
      
      	* tree-mudflap.h: Update prototypes.
      	* c-mudflap.c: Delete file.
      	* c-common.c: Include tree-mudflap.h.
      	(c_common_nodes_and_builtins): Call mudflap_init if appropriate.
      	* Makefile.in: Remove all references to c-mudflap.o.
      	Update dependencies.
      gcc/cp:
      	* cp-mudflap.c: Delete file.
      	* Makefile.in: Remove all references to cp-mudflap.o.
      libmudflap:
      	* mf-runtime.h.in: Wrap declarations of struct __mf_cache,
      	__mf_lookup_cache, __mf_lc_mask, or __mf_lc_shift in
      	#ifndef _MUDFLAP.
      
      From-SVN: r84126
      Zack Weinberg committed
    • pa.md (prefetch, [...]): Only allow short displacements with the… · 5dbf8812
      pa.md (prefetch, [...]): Only allow short displacements with the spatial-locality cache-control completer.
      
      	* pa.md (prefetch, prefetch_32, prefetch_64): Only allow short
      	displacements with the spatial-locality cache-control completer.
      
      From-SVN: r84125
      John David Anglin committed
    • Makefile.am: Silence two automake warnings. · bd4e9266
      
      2004-07-05  Kelley Cook  <kcook@gcc.gnu.org>
      
      	* Makefile.am: Silence two automake warnings.
      	* Makefile.in: Regenerate.
      
      From-SVN: r84124
      Kelley Cook committed
    • langhooks.c: Don't include gt-langhooks.h. · 6de66680
      	* langhooks.c: Don't include gt-langhooks.h.
      	(var_labelno): Delete.
      	(lhd_set_decl_assembler_name): Do not append a distinguishing
      	number to file-scope internal-linkage declarations for the first
      	input file, even if they have DECL_CONTEXT set.  Use DECL_UID of
      	the declaration itself (if at block scope), or its containing
      	TRANSLATION_UNIT_DECL (if at file scope) for the distinguishing
      	number.
      
      	* opts.c (cur_in_fname): New global.
      	* opts.h: Declare it.
      	* tree.c: Include opts.h.
      	(make_node_stat): If creating a TRANSLATION_UNIT_DECL, give it
      	DECL_UID equal to cur_in_fname.
      	(copy_node_stat): Do not change DECL_UID when copying a
      	TRANSLATION_UNIT_DECL.
      	(build_common_tree_nodes): Adjust next_decl_uid to reserve the
      	range 0 .. num_in_fnames-1 for TRANSLATION_UNIT_DECLs.
      
      	* c-decl.c (c_static_assembler_name): Delete.
      	* c-tree.h (c_static_assembler_name): Delete prototype.
      	* c-lang.c, objc/objc-lang.c: Don't override
      	LANG_HOOKS_SET_DECL_ASSEMBLER_NAME.
      
      	* Makefile.in (tree.o): Update dependencies.
      	(GTFILES): Remove langhooks.c.
      
      cp:
      	* decl.c (cxx_init_decl_processing): Call
      	build_common_tree_nodes before creating the global NAMESPACE_DECL.
      
      From-SVN: r84123
      Zack Weinberg committed
    • fold-const.c (fold): Optimize unsigned modulus by a power of two into a bit-wise AND, i.e. · ab0e8f66
      
      	* fold-const.c (fold) <TRUNC_MOD_EXPR>: Optimize unsigned modulus
      	by a power of two into a bit-wise AND, i.e. "X % C" as "X & (C-1)".
      	Normalize "X % C" as "X % -C" for signed modulus and negative C.
      	Optimize "X % -Y" as "X % Y" for signed modulus.
      	<EQ_EXPR>: Recursively call "fold" when transforming "(X % Y) == 0"
      	into "((unsigned) X % Y) == 0".
      
      From-SVN: r84122
      Roger Sayle committed
    • tree.h (DECL_SEEN_IN_BIND_EXPR_P): New macro. · 48eb4e53
      	* tree.h (DECL_SEEN_IN_BIND_EXPR_P): New macro.
      	* gimplify.c (gimple_add_tmp_var, gimplify_bind_expr): Use it.
      	(gimplify_target_expr, gimplify_expr): Likewise.
      	(copy_if_shared_r): No longer need special case for BIND_EXPR.
      	(unshare_body, unvisit_body): Only look at nested if BODY_P is
      	whole function.
      	(gimplify_compound_lval): See if we can strip any useless conversion.
      	(gimplify_modify_expr, gimplify_modify_expr_to_memcpy): Take size
      	from RHS, not LHS.
      	(gimplify_modify_expr_to_memset): Likewise.
      	(gimplify_expr, case CONSTRUCTOR): Handle use as statement.
      	* tree-inline.c (setup_one_parameter): Use DECL_SEEN_IN_BIND_EXPR_P.
      	(declare_inline_vars): Likewise.
      	(walk_type_fields): New function.
      	(walk_tree): Use it.
      	* tree-nested.c (create_tmp_var_for): Show seen in BIND_EXPR.
      
      From-SVN: r84121
      Richard Kenner committed
    • tree-sra.c (struct sra_walk_fns): Init function now returns bool. · 402a3dec
      	* tree-sra.c (struct sra_walk_fns): Init function now returns bool.
      	(sra_walk_modify_expr): Allow init function to fail.
      	(scan_init): Now returns bool.
      	(generate_element_init): If can't understand INIT, return false.
      	(scalarize_init): Return false if generate_element_init does.
      
      From-SVN: r84120
      Richard Kenner committed
    • re PR c++/2518 (user-declared operator new hides standard one) · 030bbecd
      	PR c++/2518
      	* call.c (build_operator_new_call): Look only at global scope.
      
      	PR c++/2518
      	* g++.dg/lookup/new1.C: New test.
      
      From-SVN: r84119
      Giovanni Bajo committed
    • tree-pretty-print.c (dump_generic_node, [...]): Properly print bounds. · 2709efd8
      	* tree-pretty-print.c (dump_generic_node, case ARRAY_TYPE): Properly
      	print bounds.
      
      From-SVN: r84118
      Richard Kenner committed
    • expr.c (expand_expr_real_1, [...]): Don't check against bounds if bounds aren't constant. · ebd5a208
      	* expr.c (expand_expr_real_1, case SWITCH_EXPR): Don't check against
      	bounds if bounds aren't constant.
      
      From-SVN: r84117
      Richard Kenner committed
    • Fix typo · 6f70e46e
      From-SVN: r84116
      Richard Kenner committed
    • sourcebuild.texi (Config Fragments): Use @comma{} in cross-reference to section title. · 22e9e201
      	* sourcebuild.texi (Config Fragments): Use @comma{} in
      	cross-reference to section title.
      
      From-SVN: r84115
      Joseph Myers committed
    • * tree-cfg.c (verify_expr): Use CHECK_OK in binary case. · 50b04185
      From-SVN: r84114
      Richard Kenner committed
    • function.c, [...]: Move max_size hook to type hooks; remove bogus PARAMS. · 8963a517
      	* function.c, langhooks-def.h, langhooks.h: Move max_size hook
      	to type hooks; remove bogus PARAMS.
      
      From-SVN: r84113
      Richard Kenner committed
    • 14340.cc: Fix typos in instantiation of set and multiset (functor param given as int). · 879dc459
      2004-07-05  Jonathan Wakely  <redi@gcc.gnu.org>
      
      	* testsuite/23_containers/{set,multiset}/14340.cc: Fix typos in
      	instantiation of set and multiset (functor param given as int).
      
      From-SVN: r84112
      Jonathan Wakely committed
    • re PR c++/11406 (sorry+ICE: `array_ref' not supported by dump_type) · 7c6536fa
      	PR c++/11406
      	* g++.dg/template/sizeof8.C: New test.
      
      From-SVN: r84111
      Volker Reichelt committed
    • c-tree.h (TYPE_ACTUAL_ARG_TYPES): Use TYPE_LANG_SLOT_1. · 95b4aca6
      	* c-tree.h (TYPE_ACTUAL_ARG_TYPES): Use TYPE_LANG_SLOT_1.
      	* dwarf2out.c (add_data_member_location_attribute): Check for
      	TREE_BINFO.
      	* tree.c (tree_node_kinds): Add "binfos".
      	(binfo_lang_slots): New.
      	(make_node_stat): Add TREE_BINFO.
      	(make_tree_binfo_stat): New.
      	(tree_node_structure): Add TREE_BINFO.
      	* tree.def (TREE_BINFO): New.
      	* tree.h (REC_OR_UNION_CHECK): Rename to ...
      	(RECORD_OR_UNION_CHECK): ... here.
      	(NOT_RECORD_OR_UNION_CHECK): New.
      	(TRE_VIA_VIRTUAL): Allow TREE_LIST or TREE_BINFO.
      	(TYPE_FIELDS, TYPE_METHODS, TYPE_VFIELD): Adjust for
      	RECORD_OR_UNION_CHECK.
      	(TYPE_BINFO): Use RECORD_OR_UNION_CHECK.
      	(TYPE_LANG_SLOT_1): New.
      	(BINFO_TYPE, BINFO_OFFSET, BINFO_VTABLE, BINFO_VIRTUALS,
      	BINFO_BASETYPES, TYPE_BINFO_BASETYPES, BINFO_VPTR_FIELD,
      	BINFO_BASEACCESSES, BINFO_INHERITANCE_CHAIN): Adjust.
      	(BINFO_ELTS): Remove.
      	(BINFO_LANG_SLOT): New.
      	(struct tree_binfo): New.
      	(binfo_lang_slots): Declare.
      	(enum tree_node_structure_enum): Add TS_BINFO.
      	(union tree_node): Add binfo.
      	(make_tree_binfo_stat): Declare.
      	(make_tree_binfo): New.
      	(enum tree_node_kind): Add binfo_kind.
      
      	* cp/call.c (enforce_access): Expect TREE_BINFO.
      	* cp/class.c (binfo_ctor_vtable): Check TREE_BINFO.
      	* cp/cp-tree.h (RECORD_OR_UNION_TYPE_CHECK): Remove.
      	(BINFO_SUBVTT_INDEX, BINFO_VPTR_INDEX, BINFO_PRIMARY_BASE_OF):
      	Adjust.
      	(BINFO_LANG_ELTS): Remove.
      	(BINFO_LANG_SLOTS): New.
      	(TYPE_RAISES_EXCEPTIONS, ENUM_TEMPLATE_INFO): Use TYPE_LANG_SLOT_1.
      	(CLASSTYPE_TEMPLATE_INFO): Adjust.
      	* cp/pt.c (tsubst): Split TREE_BINFO case from TREE_VEC case.
      	* cp/search.c (lookup_member): Check TREE_BINFO.
      	* cp/semantics.c (perform_or_defer_access_check): Likewise.
      	(check_accessibility_of_qualified_id): Check
      	deferred_access_no_check.
      	* cp/tree.c (make_binfo): Use make_tree_binfo.
      
      	* java/class.c (make_class): Use make_tree_binfo.
      	(set_super_info, add_interface_do): Likewise.
      	* java/java-tree.h (CLASS_HAS_SUPER_FLAG): Expect a BINFO.
      
      	* objc/objc-act.c (start_class, objc_declare_protocols,
      	start_protocols): Use TYPE_LANG_SLOT_1.
      	* objc/objc-act.h (CLASS_BINFO_ELTS, PROTOCOL_BINFO_ELTS): Rename
      	to ...
      	(CLASS_LANG_SLOT_ELTS, PROTOCOL_LANG_SLOT_ELTS): ... here.
      	(CLASS_IVARS, CLASS_RAW_IVARS, CLASS_STATIC_TEMPLATE,
      	CLASS_CATEGORY_LIST, CLASS_PROTOCOL_LIST, CLASS_OWN_IVARS,
      	PROTOCOL_LIST, PROTOCOL_FORWARD_DECL): Use TYPE_LANG_SLOT_1.
      
      From-SVN: r84110
      Nathan Sidwell committed
    • rtl.h (struct rtx_def): Remove the integrated flag. · acf8677f
      	* rtl.h (struct rtx_def): Remove the integrated flag.
      	Use the return_val flag for MEM_SCALAR_P.
      	Reshuffle and update flags in CLEAR_RTX_FLAGS
      
      From-SVN: r84109
      Steven Bosscher committed
    • re PR target/16357 (ICE copying 7 bytes between extern char[]s) · e0ec4c3b
      	PR target/16357
      	* config/mips/mips.c (mips_block_move_straight): Pass BLKmode memrefs
      	to mips_expand_unaligned_load, mips_expand_unaligned_store, and
      	move_by_pieces.
      
      From-SVN: r84108
      Richard Sandiford committed