* libgcc2.h: Move prototypes above macros with the same name.
Wrap some function prototypes in the conditional which indicates
whether they are supported, i.e. "BITS_PER_UNIT == 8".
From-SVN: r32594
* lang.c (flag_hash_synchronization): New global.
(lang_f_options): Added `hash-synchronization'.
* lang-options.h: Mention -fhash-synchronization.
* java-tree.h (flag_hash_synchronization): Declare.
* expr.c (java_lang_expand_expr): Only push `sync_info' value when
hash table synchronization is disabled.
* decl.c (init_decl_processing): Only push `sync_info' value when
hash table synchronization is disabled.
* class.c (make_class_data): Only push `sync_info' field when hash
table synchronization is disabled. Removed dead code.
From-SVN: r32593
* calls.c (expand_call): Do sanity checking on arg_space_so_far.
Update arg_space_so_far on stack adjustments.
(emit_library_call, emit_library_call_value): Likewise; take into
account arg_space_so_far and pending_stack_adjust when calculcating
the boundary.
From-SVN: r32586
* flow.c: Move all basic block reordering code into its own file.
(create_basic_block): Externalize.
* bb-reorder.c: New file. Copy all basic block reordering code from
flow.c to this file.
(reorder_basic_blocks): Fix fencepost error in for-loop.
(reorder_basic_blocks): Remove braces from single statement for-loops.
* basic-block.h: Add declaration for create_basic_block.
* Makefile.in: Add rules for bb-reorder.o.
From-SVN: r32585
* configure.in: Merge in changes from newppc-branch.
* configure: Regenerate.
* config/rs6000/*: Merge in changes from newppc-branch.
Also correct copyright notices.
From-SVN: r32575
* decl.c (init_decl_processing): Set type of `sync_info' to be
pointer to Object.
* boehm.c (get_boehm_type_descriptor): Correctly compute `bits'.
Correctly compute bit number for current slot. Zero `high' and
`low' in DS_LENGTH case. Don't skip inherited fields. Use
mark_reference_fields.
(mark_reference_fields): New function.
From-SVN: r32572
* i386.md (movhi_1): Promote movw imm, reg to movl imm, reg and
movw reg, reg to movzwl reg, reg on PARTIAL_REGISTER_STALL machines.
* i386.c (pentiumpro_cost): Set mul cost to 4.
(x86_use_movx): Set for PPro.
From-SVN: r32560
* cp-tree.h: Tweak documentation.
* class.c (build_vbase_pointer_fields): Layout the fields, too.
(avoid_overlap): Remove.
(get_binfo_offset_as_int): New function.
(dfs_serach_base_offsets): Likewise.
(layout_nonempty_base_or_field): Likewise.
(build_base_field): Layout fields here. Avoid placing two objects
of the same type at the same address, under the new ABI.
(build_base_fields): Adjust accordingly.
(create_vtable_ptr): Return the new field, but don't attach it to
TYPE_FIELDS.
(remove_base_field): Remove.
(remove_base_fields): Remove.
(layout_basetypes): Adjust accordingly.
(layout_class_type): Call layout_field for each field, rather than
just making a wholesale call to layout_type.
From-SVN: r32550
* cp-tree.h: Tweak documentation.
* class.c (build_vbase_pointer_fields): Layout the fields, too.
(avoid_overlap): Remove.
(get_binfo_offset_as_int): New function.
(dfs_serach_base_offsets): Likewise.
(layout_nonempty_base_or_field): Likewise.
(build_base_field): Layout fields here. Avoid placing two objects
of the same type at the same address, under the new ABI.
(build_base_fields): Adjust accordingly.
(create_vtable_ptr): Return the new field, but don't attach it to
TYPE_FIELDS.
(remove_base_field): Remove.
(remove_base_fields): Remove.
(layout_basetypes): Adjust accordingly.
(layout_class_type): Call layout_field for each field, rather than
just making a wholesale call to layout_type.
From-SVN: r32549
* flow.c (fixup_reorder_chain): Avoid double labels in the basic block;
end of basic block is jump_insn, not barrier; use create_basic_block
instead of creating basic block by hand.
From-SVN: r32547
* flow.c (reorder_basic_blocks): Account for barriers when writing
over NEXT_INSN (last_bb->end).
(verify_flow_info): Add check for missing barriers.
From-SVN: r32545