Commit Graph

101615 Commits

Author SHA1 Message Date
GCC Administrator d422a6d7c0 Daily bump.
From-SVN: r162199
2010-07-15 00:16:58 +00:00
Jonathan Wakely e79fa1eb9b shared_ptr.xml: Update.
2010-07-14  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* doc/xml/manual/shared_ptr.xml: Update.
	* doc/html/*: Regenerate.

From-SVN: r162193
2010-07-14 21:11:09 +01:00
Mikael Morin 859b660016 trans-array.c (gfc_conv_section_upper_bound): Remove
2010-07-14  Mikael Morin  <mikael@gcc.gnu.org>

	* trans-array.c (gfc_conv_section_upper_bound): Remove
	(gfc_conv_section_startstride): Don't set the upper bound in the 
	vector subscript case. 
	(gfc_conv_loop_setup): Don't use gfc_conv_section_upper_bound

From-SVN: r162191
2010-07-14 19:19:57 +00:00
Ulrich Weigand 588c71dabf spu.c (reg_names): Remove prototype.
* config/spu/spu.c (reg_names): Remove prototype.
	(call_used_regs): Likewise.

From-SVN: r162190
2010-07-14 18:17:13 +00:00
Jason Merrill 973f026a60 re PR c++/44810 (FAIL: g++.dg/torture/pr36745.C)
PR c++/44810
	* g++.dg/torture/pr36745.C: Avoid undefined behavior.

From-SVN: r162189
2010-07-14 13:01:15 -04:00
Jason Merrill 535335bffc init.c (sort_mem_initializers): Rename "field_type" to "ctx".
* init.c (sort_mem_initializers): Rename "field_type" to "ctx".
	(build_field_list): Cache field type.

From-SVN: r162188
2010-07-14 13:01:03 -04:00
Jason Merrill 57ece25833 Implement C++0x unrestricted unions (N2544)
Implement C++0x unrestricted unions (N2544)
	* class.c (check_field_decl): Loosen union handling in C++0x.
	* method.c (walk_field_subobs): Split out from...
	(synthesized_method_walk): ...here.  Set msg before loops.
	(process_subob_fn): Check for triviality in union members.
	* init.c (sort_mem_initializers): Splice out uninitialized
	anonymous unions and union members.
	(push_base_cleanups): Don't automatically destroy anonymous unions
	and union members.

From-SVN: r162187
2010-07-14 13:00:51 -04:00
Dave Korn a9c5db803f cygming-crtend.c (__FRAME_END__): Replace attribute "unused" with attribute "used".
* config/i386/cygming-crtend.c (__FRAME_END__): Replace attribute
	"unused" with attribute "used".
	(__JCR_END__): Likewise.
	* config/i386/cygming-crtbegin.c (__EH_FRAME_BEGIN__): Add missing
	"used" attribute.
	(__JCR_LIST__): Replace attribute "unused" with attribute "used".

From-SVN: r162186
2010-07-14 16:54:14 +00:00
Richard Guenther 61593e5e75 lto-streamer-in.c (maybe_fixup_handled_component): Remove.
2010-07-14  Richard Guenther  <rguenther@suse.de>

	* lto-streamer-in.c (maybe_fixup_handled_component): Remove.
	(maybe_fixup_decls): Likewise.
	(input_gimple_stmt): Do not fixup anything.
	* lto-streamer-out.c (output_gimple_stmt): Make sure all
	non-automatic variable uses are wrapped inside a MEM_REF.

From-SVN: r162185
2010-07-14 16:29:22 +00:00
Richard Henderson fc7fcda12b passes.c (rest_of_decl_compilation): Do not call
* passes.c (rest_of_decl_compilation): Do not call
        * assemble_variable for functions.
        * varasm.c (assemble_variable): Remove early exit for functions;
        assert that we're given a variable.

From-SVN: r162184
2010-07-14 09:22:06 -07:00
Jie Zhang eab3f92e95 cortex-a8.md (cortex_a8_alu): Don't use cortex_a8_default when neon_type is not none.
* config/arm/cortex-a8.md (cortex_a8_alu): Don't use
	cortex_a8_default when neon_type is not none.

From-SVN: r162182
2010-07-14 15:37:44 +00:00
Bernd Schmidt 402464a01f lower-subreg.c (subreg_context): New static bitmap.
* lower-subreg.c (subreg_context): New static bitmap.
	(decompose_multiword_subregs): Allocate and free it.
	(find_decomposable_subregs): Set a bit in it for a register that
	occurs in a subreg that changes mode but not size.
	(can_decompose_p): Test it instead of non_decomposable_context.

From-SVN: r162181
2010-07-14 15:17:28 +00:00
Richard Guenther bf9899d44b re PR middle-end/44824 (internal compiler error: verify_stmts failed)
2010-07-14  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/44824
	* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Use
	is_gimple_mem_ref_addr.
	(tree_ssa_forward_propagate_single_use_vars): Do not propagate
	non-decl_address_invariant_p addresses.

From-SVN: r162177
2010-07-14 12:19:16 +00:00
Bernd Schmidt b1c8622e95 reload.c (find_reloads): Revert code to penalize small register classes that was brought in with the IRA...
* reload.c (find_reloads): Revert code to penalize small register
	classes that was brought in with the IRA merge.

From-SVN: r162176
2010-07-14 11:07:17 +00:00
Richard Guenther 2bd6311dbb tree-ssa-ccp.c (fold_const_aggregate_ref): Handle MEM_REF as base of ARRAY_REFs.
2010-07-14  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-ccp.c (fold_const_aggregate_ref): Handle MEM_REF
	as base of ARRAY_REFs.

From-SVN: r162175
2010-07-14 09:52:01 +00:00
Richard Guenther f051cb5dca re PR target/44930 (another problem with line break in output with -fverbose-asm)
2010-07-14  Richard Guenther  <rguenther@suse.de>

	PR middle-end/44930
	* tree-pretty-print.c (do_niy): Do not print a newline.

From-SVN: r162174
2010-07-14 09:06:34 +00:00
Janus Weil f6199e635e re PR fortran/44925 ([OOP] C_LOC with CLASS pointer)
2010-07-14  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44925
	* gfortran.h (gfc_is_data_pointer): Remove prototype.
	* dependency.c (gfc_is_data_pointer): Make it static.
	* intrinsic.texi: Update documentation on C_LOC.
	* resolve.c (gfc_iso_c_func_interface): Fix pointer and target checks
	and add a check for polymorphic variables.


2010-07-14  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44925
	* gfortran.dg/c_loc_tests_15.f90: New.

From-SVN: r162169
2010-07-14 10:09:05 +02:00
Bernd Schmidt fa86d337f6 ira-int.h (ira_object_conflict_iterator): Rename from ira_allocno_conflict_iterator.
* ira-int.h (ira_object_conflict_iterator): Rename from
	ira_allocno_conflict_iterator.
	(ira_object_conflict_iter_init): Rename from
	ira_allocno_conflict_iter_init, second arg changed to
	* ira.c (check_allocation): Use FOR_EACH_OBJECT_CONFLICT rather than
	FOR_EACH_ALLOCNO_CONFLICT.
	* ira-color.c (assign_hard_reg, push_allocno_to_stack)
	setup_allocno_left_conflicts_size, coalesced_allocno_conflict_p,
	ira_reassign_conflict_allocnos, ira_reassign_pseudos): Likewise.
	* ira-conflicts.c (print_allocno_conflicts): Likewise.

From-SVN: r162168
2010-07-14 01:56:32 +00:00
Bernd Schmidt 9140d27b2a ira-int.h (struct live_range): Rename allocno member to object and change type to ira_object_t.
* ira-int.h (struct live_range): Rename allocno member to object and change
	type to ira_object_t.
	(struct ira_object): New member live_ranges.
	(struct ira_allocno): Remove member live_ranges.
	(ALLOCNO_LIVE_RANGES): Remove.
	(OBJECT_LIVE_RANGES): New macro.
	(ira_create_live_range, ira_copy_live_range_list,
	ira_merge_live_range_list, ira_live_ranges_intersect_p,
	ira_finish_live_range, ira_finish_live_range_list): Adjust declarations.
	* ira-build.c (ira_create_object): Initialize live ranges here.
	(ira_create_allocno): Not here.
	(ira_create_live_range): Rename from ira_create_allocno_live_range, arg
	changed to ira_object_t, all callers changed.
	(copy_live_range): Rename from copy_allocno_live_range, all callers
	changed.
	(ira_copy_live_range_list): Rename from ira_copy_allocno_live_range_list,
	all callers changed.
	(ira_merge_live_ranges): Rename from ira_merge_allocno_live_range_list,
	all callers changed.
	(ira_live_ranges_intersect_p): Rename from
	ira_allocno_live_ranges_intersect_p, all callers changed.
	(ira_finish_live_range): Rename from ira_finish_allocno_live_range, all
	callers changed.
	(ira_finish_live_range_list): Rename from
	ira_finish_allocno_live_range_list, all callers changed.
	(change_object_in_range_list): Rename from change_allocno_in_range_list,
	last arg changed to ira_object_t, all callers changed.
	(finish_allocno): Changed to expect live ranges in the allocno's object.
	(move_allocno_live_ranges, copy_allocno_live_ranges,
	update_bad_spill_attribute, setup_min_max_allocno_live_range_point,
	ira_flattening, ira_build): Likewise.
	* ira-color.c (allocnos_have_intersected_live_ranges_p,
	slot_coalesced_allocno_live_ranges_intersect,
	setup_slot_coalesced_allocno_live_ranges, fast_allocation): Likewise.
	* ira-conflicts.c (build_conflict_bit_table): Likewise.
	* ira-emit.c (add_range_and_copies_from_move_list): Likewise.
	* ira-lives.c (make_allocno_born, update_allocno_pressure_excess_length,
	make_allocno_dead, create_start_finish_chains,
	remove_some_program_points_and_update_live_ranges,
	ira_debug_live_range_list): Likewise.

From-SVN: r162167
2010-07-14 01:55:02 +00:00
Bernd Schmidt a49ae21794 ira-int.h (struct ira_object): New.
* ira-int.h (struct ira_object): New.
	(ira_object_t): New typedef.  Add DEF_VEC_P and DEF_VEC_ALLOC_P
	for it.
	(struct ira_allocno): Remove members min, max,
	conflict_allocno_array, conflict_id, conflict_allocno_array_size,
	conflict_allocnos_num and conflict_vec_p.  Add new member object.
	(OBJECT_CONFLICT_ARRAY, OBJECT_CONFLICT_VEC_P,
	OBJECT_NUM_CONFLICTS, OBJECT_CONFLICT_ARRAY_SIZE,
	OBJECT_CONFLICT_HARD_REGS, OBJECT_TOTAL_CONFLICT_HARD_REGS,
	OBJECT_MIN, OBJECT_MAX, OBJECT_CONFLICT_ID): Renamed from
	ALLOCNO_CONFLICT_ALLOCNO_ARRAY, ALLOCNO_CONFLICT_VEC_P,
	ALLOCNO_CONFLICT_ALLOCNOS_NUM, ALLOCNO_CONFLICT_ALLOCNO_ARRAY_SIZE,
	ALLOCNO_CONFLICT_HARD_REGS, ALLOCNO_TOTAL_CONFLICT_HARD_REGS)
	ALLOCNO_MIN, ALLOCNO_MAX, and ALLOCNO_CONFLICT_ID; now operate on
	an ira_object_t rather than ira_allocno_t.  All uses changed.
	(ira_object_id_map): Renamed from ira_conflict_id_allocno_map; now
	contains a vector of ira_object_t; all uses changed.
	(ira_objects_num): Declare variable.
	(ira_create_allocno_object): Declare function.
	(ira_conflict_vector_profitable_p): Adjust prototype.
	(ira_allocate_conflict_vec): Renamed from
	ira_allocate_allocno_conflict_vec; first arg now ira_object_t.
	(ira_allocate_object_conflicts): Renamed from
	ira_allocate_allocno_conflicts; first arg now ira_object_t.
	(struct ira_object_iterator): New.
	(ira_object_iter_init, ira_object_iter_cond, FOR_EACH_OBJECT): New.
	(ira_allocno_conflict_iterator): Renamed member allocno_conflict_vec_p
	to conflict_vec_p.  All uses changed.
	(ira_allocno_conflict_iter_init, ira_allocno_conflict_iter_cond):
	Changed to take into account that conflicts are now tracked for
	objects.
	* ira-conflicts.c (OBJECTS_CONFLICT_P): Renamed from
	CONFLICT_ALLOCNO_P.  Args changed to accept ira_object_t.  All
	uses changed.
	(allocnos_conflict_p): New static function.
	(collected_conflict_objects): Renamed from collected_allocno_objects;
	now a vector of ira_object_t.  All uses changed.
	(build_conflict_bit_table): Changed to take into account that
	conflicts are now tracked for objects.
	(process_regs_for_copy, propagate_copies, build_allocno_conflicts)
	(print_allocno_conflicts, ira_build_conflicts): Likewise.
	* ira-color.c (assign_hard_reg, setup_allocno_available_regs_num)
	setup_allocno_left_conflicts_size, allocno_reload_assign,
	fast_allocation): Likewise.
	* ira-lives.c (make_hard_regno_born, make_allocno_born)
	process_single_reg_class_operands, process_bb_node_lives): Likewise.
	* ira-emit.c (modify_move_list, add_range_and_copies_from_move_list):
	Likewise.
	* ira-build.c (ira_objects_num): New variable.
	(ira_object_id_map): Renamed from ira_conflict_id_allocno_map; now
	contains a vector of ira_object_t; all uses changed.
	(ira_object_id_map_vec): Corresponding change.
	(object_pool): New static variable.
	(initiate_allocnos): Initialize it.
	(finish_allocnos): Free it.
	(ira_create_object, ira_create_allocno_object, create_allocno_objects):
	New functions.
	(ira_create_allocno): Don't set members that were removed.
	(ira_set_allocno_cover_class): Don't change conflict hard regs.
	(merge_hard_reg_conflicts): Changed to take into account that
	conflicts are now tracked for objects.
	(ira_conflict_vector_profitable_p, ira_allocate_conflict_vec,
	allocate_conflict_bit_vec, ira_allocate_object_conflicts,
	compress_conflict_vecs, remove_low_level_allocnos, ira_flattening,
	setup_min_max_allocno_live_range_point, allocno_range_compare_func,
	setup_min_max_conflict_allocno_ids, ):  Likewise.
	((add_to_conflicts): Renamed from add_to_allocno_conflicts, args changed
	to ira_object_t; all callers changed.
	(ira_add_conflict): Renamed from ira_add_allocno_conflict, args changed
	to ira_object_t, all callers changed.
	(clear_conflicts): Renamed from clear_allocno_conflicts, arg changed
	to ira_object_t, all callers changed.
	(conflict_check, curr_conflict_check_tick): Renamed from
	allocno_conflict_check and curr_allocno_conflict_check_tick; all uses
	changed.
	(compress_conflict_vec): Renamed from compress_allocno_conflict_vec,
	arg changed to ira_object_t, all callers changed.
	(create_cap_allocno): Call ira_create_allocno_object.
	(finish_allocno): Free the corresponding object.
	(sort_conflict_id_map): Renamed from sort_conflict_id_allocno_map; all
	callers changed.  Adjusted for dealing with objects.
	(ira_build): Call create_allocno_objects after ira_costs.  Adjusted for
	dealing with objects.
	* ira.c (ira_bad_reload_regno_1): Adjusted for dealing with objects.

From-SVN: r162166
2010-07-14 01:53:35 +00:00
GCC Administrator 5e0bf6cdff Daily bump.
From-SVN: r162165
2010-07-14 00:17:57 +00:00
Jakub Jelinek 48b195373b trans-expr.c (string_to_single_character): Also optimize string literals containing a single char followed only by spaces.
* trans-expr.c (string_to_single_character): Also optimize
	string literals containing a single char followed only by spaces.
	(gfc_trans_string_copy): Remove redundant string_to_single_character
	calls.

From-SVN: r162161
2010-07-14 00:56:29 +02:00
Jakub Jelinek 4ca4be7f25 trans-decl.c (gfc_build_intrinsic_function_decls, [...]): Mark functions as DECL_PURE_P or TREE_READONLY.
* trans-decl.c (gfc_build_intrinsic_function_decls,
	gfc_build_builtin_function_decls): Mark functions as
	DECL_PURE_P or TREE_READONLY.

From-SVN: r162160
2010-07-14 00:55:20 +02:00
Jason Merrill 7487bca5bb re PR c++/44909 ([C++0x] Copy constructors implicitly deleted)
PR c++/44909
	* cp-tree.h (struct lang_type_class): Add has_user_opeq.
	(TYPE_HAS_USER_OPEQ): New.
	* decl.c (grok_special_member_properties): Set it.
	* class.c (add_implicitly_declared_members): Don't lazily declare
	constructors/operator= if a base or member has a user-declared one.
	(check_bases_and_members, check_bases): Adjust.
	(check_field_decls, check_field_decl): Adjust.
	* method.c (synthesized_method_walk): Initialize check_vdtor.

From-SVN: r162159
2010-07-13 18:23:49 -04:00
Jason Merrill 8caa8b6590 re PR c++/44540 (ICE: in add_substitution, at cp/mangle.c:386 with -fkeep-inline-functions)
PR c++/44540
	* mangle.c (write_type): Canonicalize.
	(canonicalize_for_substitution): Retain cv-quals on FUNCTION_TYPE.
	(write_CV_qualifiers_for_type): Ignore them in abi>=5.

From-SVN: r162158
2010-07-13 18:23:38 -04:00
Joern Rennecke fcfaf83830 Fix date.
From-SVN: r162157
2010-07-13 22:56:28 +01:00
Joern Rennecke c31c32f959 re PR other/44874 (TDF_NOUID dumps miss information about DECL_UID ordering)
gcc:
	PR other/44874
	* tree-dump.c (dump_options): Add enumerate_locals entry.
	Add TDF_NOID exclusion to all entry.
	* tree-dump.h (dump_enumerated_decls): Declare.
	* tree-pretty-print.c (dump_generic_node): For TDF_NOID,
	Don't display type uid.
	(print_declaration): Don't crash on TREE_TYPE (t) == 0.
	* tree-pass.h (TDF_ENUMERATE_LOCALS): Define.
	* tree-ssa-live.c: Include gimple.h.
	(numbered_tree_d): New struct.
	(numbered_tree): New typedef.
	(DEF_VEC_O (numbered_tree): New.
	(DEF_VEC_ALLOC_O (numbered_tree, heap)): Likewise.
	(compare_decls_by_uid, dump_enumerated_decls_push): New functions.
	(dump_enumerated_decls): Likewise.
	* tree-optimize.c (execute_cleanup_cfg_post_optimizing): If comparing
	debug info and flag_dump_final_insns, call dump_enumerated_decls.
	* tree-cfg.c (dump_function_to_file): Call dump_enumerated_decls.
	* Makefile.in (tree-ssa-live.o): Depend on $(GIMPLE_H).
gcc/testsuite:
	PR other/44874
	PR debug/44832
	* c-c++-common/pr44832.c: New test.

From-SVN: r162156
2010-07-13 22:55:57 +01:00
Benjamin Kosnik 5bca11c4ef Makefile.am: Edit pdf rules.
2010-07-13  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/Makefile.am: Edit pdf rules.
	(doc-man, doc-pdf, doc-html): Expand default rules.
	* doc/Makefile.in: Regenerate.
	* doc/doxygen/user.cfg.in: Update to Doxygen 1.7.1.

From-SVN: r162151
2010-07-13 20:19:38 +00:00
Richard Sandiford d146518711 expmed.h (MAX_BITS_PER_WORD): Move to...
gcc/
	* expmed.h (MAX_BITS_PER_WORD): Move to...
	* defaults.h (MAX_BITS_PER_WORD): ...here.

From-SVN: r162150
2010-07-13 19:48:58 +00:00
DJ Delorie 0685e770ac h8300.c (h8300_init_once): Default to -fstrict_volatile_bitfields.
* config/h8300/h8300.c (h8300_init_once): Default to
-fstrict_volatile_bitfields.

* config/sh/sh.c (sh_override_options): Default to
-fstrict_volatile_bitfields.

* config/rx/rx.c (rx_option_override): New.

* config/m32c/m32c.c (m32c_override_options): Default to
-fstrict_volatile_bitfields.

From-SVN: r162149
2010-07-13 15:43:30 -04:00
Nathan Froyd 3bb06db415 tree.h (build_function_call_expr): Delete.
gcc/
	* tree.h (build_function_call_expr): Delete.
	(build_call_expr_loc_array): New function.
	(build_call_expr_loc_vec): New function.
	* tree-flow.h (struct omp_region): Change type of ws_args field
	to a VEC.
	* builtins.c (build_function_call_expr): Delete.
	(build_call_expr_loc_array): New function.
	(build_call_expr_loc): Call it.  Use XALLOCAVEC.
	(build_call_expr): Likewise.
	(build_call_expr_loc_vec): New function.
	* cgraphunit.c (build_cdtor): Call build_call_expr instead of
	build_function_call_expr.
	* expr.c (emutls_var_address): Likewise.
	* varasm.c (emutls_common_1): Likewise.
	* omp-low.c (expand_omp_atomic_mutex): Likewise.
	(expand_omp_taskreg): Adjust for new type of region->ws_args.
	(get_ws_args_for): Return a VEC instead of a tree.
	(expand_parallel_call): Call build_call_expr_loc_vec instead of
	build_function_call_expr.
	* stor-layout.c (self_referential_size): Likewise.

gcc/fortran/
	* trans-decl.c (build_entry_thunks): Call build_call_expr_loc_vec
	instead of build_function_call_expr.
	* trans-intrinsic.c (gfc_conv_intrinsic_sr_kind): Likewise.

From-SVN: r162148
2010-07-13 18:46:25 +00:00
Tobias Burnus 3f34855a08 re PR fortran/43665 (INTENT(IN) etc. optimization of calls: function annotations for noclobber/noescape arguments)
2010-07-13  Tobias Burnus  <burnus@net-b.de>
            Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/43665
        * trans.h (gfc_build_library_function_decl_with_spec): New
        prototype.
        * trans-decl.c (gfc_build_library_function_decl_with_spec):
        Removed static.
        * trans-io (gfc_build_io_library_fndecls): Add "fn spec"
        annotations.


Co-Authored-By: Daniel Franke <franke.daniel@gmail.com>

From-SVN: r162147
2010-07-13 19:26:02 +02:00
Laurent GUERBY 8b3ea3a806 re PR bootstrap/44458 (Bootstrap fails on arm_float_words_big_endian implicit declaration when Ada on arm-linux)
2010-07-13  Laurent GUERBY  <laurent@guerby.net>

        PR bootstrap/44458
        * gcc-interface/targtyps.c: Include tm_p.h.
        * gcc-interface/Make-lang.in: Update dependencies.

From-SVN: r162146
2010-07-13 15:59:20 +00:00
Iain Sandoe 6a9368d941 re PR objc/44488 (objc test inconsistencies w/ / w/out --enable-build-with-cxx)
PR objc/44488
	* lib/objc-torture.exp (objc-set-runtime-options): Base runtime list
	on the target.  Make sure that we can assemble the emitted asm when 
	the test type is 'compile'.

From-SVN: r162144
2010-07-13 15:20:21 +00:00
Jakub Jelinek c55c061a89 re PR testsuite/44701 (PR44492 fix broke gcc.target/powerpc/asm-es-2.c)
PR testsuite/44701
	* recog.c (constrain_operands): Allow side-effects in memory
	operands if either < or > constraint is used, rather than if
	both < and > is used.

From-SVN: r162142
2010-07-13 16:03:49 +02:00
Richard Guenther 85e5e340be re PR c++/36960 (Reference variable in virtually inherited base corrupted under optimization)
2010-07-13  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/36960
	* g++.dg/torture/pr36960.C: New testcase.

From-SVN: r162141
2010-07-13 13:31:26 +00:00
Daniel Franke 6368f16604 re PR fortran/43665 (INTENT(IN) etc. optimization of calls: function annotations for noclobber/noescape arguments)
2010-07-13  Daniel Franke  <franke.daniel@gmail.com>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/43665
        * trans-decl.c (gfc_build_intrinsic_function_decls): Add
        noclobber/noescape annotations to function calls.
        (gfc_build_builtin_function_decls): Likewise.


Co-Authored-By: Tobias Burnus <burnus@net-b.de>

From-SVN: r162140
2010-07-13 15:20:52 +02:00
Paolo Carlini 135d47df21 re PR c++/44908 (SFINAE vs pointer to member via virtual base)
cp/
2010-07-13  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/44908
	* call.c (convert_like_real): Adjust convert_ptrmem call, pass
	complain argument.
	* typeck.c (get_delta_difference): Update prototype, add a
	tsubst_flags_t parameter; update get_delta_difference_1 calls and
	add checks for error_mark_node.
	(get_delta_difference_1): Update prototype, add a tsubst_flags_t
	parameter; update lookup_base call.
	(build_ptrmemfunc): Update prototype, add a tsubst_flags_t
	parameter; update get_delta_difference call and add check for
	error_mark_node.
	(convert_ptrmem): Update prototype, add a tsubst_flags_t
	parameter; update get_delta_difference call and add check for
	error_mark_node;  update build_ptrmemfunc call.
	(build_static_cast_1): Adjust convert_ptrmem call.
	(expand_ptrmemfunc_cst): Adjust get_delta_difference call.
	(cp_build_unary_op): Adjust build_ptrmemfunc call.
	* cvt.c (cp_convert_to_pointer, convert_force): Adjust convert_ptrmem
	and build_ptrmemfunc calls.
	* cp-tree.h: Update build_ptrmemfunc and convert_ptrmem prototypes.

testsuite/
2010-07-13  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/44908
	* g++.dg/template/sfinae21.C: New.
	* g++.dg/template/sfinae22.C: Likewise.

From-SVN: r162138
2010-07-13 11:47:58 +00:00
Richard Guenther 2eb0b984b6 re PR middle-end/44911 (line breaks in asm comments break assembly with -fverbose-asm)
2010-07-13  Richard Guenther  <rguenther@suse.de>

	PR middle-end/44911
	* tree-pretty-print.c (dump_generic_node): Use TDF_SLIM for
	MEM_REF pointer type dumping.  Avoid recursing for TYPE_DECLs
	without name.

From-SVN: r162137
2010-07-13 11:18:50 +00:00
Kaz Kojima d965817815 pr44683.x: New.
* gcc.c-torture/execute/pr44683.x: New.
	* gcc.dg/torture/builtin-cproj-1.c: Add dg-add-options ieee.

From-SVN: r162136
2010-07-13 10:43:52 +00:00
Kaz Kojima 535b951fb6 re PR target/44761 (sh.md warnings)
PR target/44761
	* mode-switching.c (optimize_mode_switching): Add ATTRIBUTE_UNUSED
	to variable emited.
	* config/sh/sh.c (sh_expand_epilogue): Remove unused variable.
	* config/sh/sh.md (symGOT_load): Likewise.
	(symDTPOFF2reg): Likewise.
	(symTPOFF2reg): Likewise.

From-SVN: r162135
2010-07-13 10:41:15 +00:00
Ramana Radhakrishnan 6d06590db7 expmed.c (MAX_BITS_PER_WORD): Moved to expmed.h.
2010-07-13  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	* expmed.c (MAX_BITS_PER_WORD): Moved to expmed.h.
	* expmed.h (MAX_BITS_PER_WORD): Moved from expmed.c

From-SVN: r162133
2010-07-13 09:48:58 +00:00
Rainer Orth ea2d8f1254 sol2-unwind.h (x86_64_fallback_frame_state): Correct explanation.
* config/i386/sol2-unwind.h (x86_64_fallback_frame_state): Correct
	explanation.
	Find ucontext_t * on Solaris 11.
	(x86_fallback_frame_state): Handle Solaris 9 multi-threaded pattern.
	Handle new Solaris 11 __sighndlr patterns.

From-SVN: r162129
2010-07-13 09:10:09 +00:00
Jakub Jelinek 2fed2012d5 re PR debug/44901 (-fcompare-debug failure for tree-predcom.c)
PR debug/44901
	* vec.h (VEC_block_remove): Fix comment.
	* tree-ssa-live.c (remove_unused_locals): Don't use
	VEC_unordered_remove on local_decls, instead replace a single
	vector element in each iteration if at least one element had
	to be removed and VEC_truncate at the end.
	* omp-low.c (expand_omp_taskreg): Likewise.

From-SVN: r162126
2010-07-13 08:59:56 +02:00
Janus Weil 88ce80316f re PR fortran/44434 ([OOP] ICE in in gfc_add_component_ref)
2010-07-13  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44434
	PR fortran/44565
	PR fortran/43945
	PR fortran/44869
	* gfortran.h (gfc_find_derived_vtab): Modified prototype.
	* class.c (gfc_build_class_symbol): Modified call to
	'gfc_find_derived_vtab'.
	(add_proc_component): Removed, moved code into 'add_proc_comp'.
	(add_proc_comps): Renamed to 'add_proc_comp', removed treatment of
	generics.
	(add_procs_to_declared_vtab1): Removed unnecessary argument 'resolved'.
	Removed treatment of generics.
	(copy_vtab_proc_comps): Removed unnecessary argument 'resolved'.
	Call 'add_proc_comp' instead of duplicating code.
	(add_procs_to_declared_vtab): Removed unnecessary arguments 'resolved'
	and 'declared'.
	(add_generic_specifics,add_generics_to_declared_vtab): Removed.
	(gfc_find_derived_vtab): Removed unnecessary argument 'resolved'.
	Removed treatment of generics.
	* iresolve.c (gfc_resolve_extends_type_of): Modified call to
	'gfc_find_derived_vtab'.
	* resolve.c (resolve_typebound_function,resolve_typebound_subroutine):
	Removed treatment of generics.
	(resolve_select_type,resolve_fl_derived): Modified call to
	'gfc_find_derived_vtab'.
	* trans-decl.c (gfc_get_symbol_decl): Ditto.
	* trans-expr.c (gfc_conv_derived_to_class,gfc_trans_class_assign):
	Ditto.
	* trans-stmt.c (gfc_trans_allocate): Ditto.

2010-07-13  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44434
	PR fortran/44565
	PR fortran/43945
	PR fortran/44869
	* gfortran.dg/dynamic_dispatch_1.f03: Fixed invalid test case.
	* gfortran.dg/dynamic_dispatch_2.f03: Ditto.
	* gfortran.dg/dynamic_dispatch_3.f03: Ditto.
	* gfortran.dh/typebound_call_16.f03: New.
	* gfortran.dg/typebound_generic_6.f03: New.
	* gfortran.dg/typebound_generic_7.f03: New.
	* gfortran.dg/typebound_generic_8.f03: New.

From-SVN: r162125
2010-07-13 08:57:17 +02:00
Jerry DeLisle b1743e3754 re PR fortran/37077 (Implement Internal Unit I/O for character KIND=4)
2010-07-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/37077
	* gfortran.dg/char4_iunit_1.f03: New test.

From-SVN: r162124
2010-07-13 02:16:29 +00:00
Jerry DeLisle c7421e06ca re PR fortran/37077 (Implement Internal Unit I/O for character KIND=4)
2010-07-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/37077
	* io/read.c: Fix comment.
	* io/io.h (is_char4_unit): New macro.
	* io/unit.c (get_internal_unit): Call new function open_internal4.
	* io/unix.c (mem_alloc_r4): New function. (mem_alloc_w4): New function.
	(mem_read4): New function, temporary stub. (mem_write4): New function.
	(open_internal4): New function to set stream pointers to use the new
	mem functions.
	* io/transfer.c (write_block): Use new mem_alloc_w4 to access internal
	units of kind=4.
	* io/unix.h: Add prototypes for open_internal4, mem_alloc_w4, and
	mem_alloc_r4.
	* io/write.c (memset4): New helper function. (memcpy4): New helper
	function. (write_default_char4): Use new helper functions.
	(write_a): Likewise. (write_l): Likewise. (write_boz): Likewise.
	(write_decimal): Likewise. (write_x): Likewise.
	(write_integer): Likewise.
	* io/write_float.def (output_float): Add code blocks to handle internal
	unit kind=4 output utilizing gfc_char4_t pointers. (write_infnan): Use
	new helper functions. (OUTPUT_FLOAT_FMT_G): Update this macro likewise.

From-SVN: r162123
2010-07-13 02:12:08 +00:00
Jerry DeLisle c8dce2cfdd re PR fortran/37077 (Implement Internal Unit I/O for character KIND=4)
2010-07-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR fortran/37077
	* trans-io.c (build_dt): Set common.unit to flag chracter(kind=4)
	internal unit.

From-SVN: r162122
2010-07-13 02:07:48 +00:00
Manuel López-Ibáñez cc343f65a4 c-decl.c (finish_function): Fix typo in comment.
2010-07-13  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	* c-decl.c (finish_function): Fix typo in comment.

From-SVN: r162121
2010-07-13 01:40:22 +00:00
H.J. Lu 5676e87dda Silence gcc warning on min_regno.
2010-07-12  H.J. Lu  <hongjiu.lu@intel.com>

	PR bootstrap/44921
	* postreload.c (move2add_use_add3_insn): Silence gcc warning
	on min_regno.

From-SVN: r162120
2010-07-12 17:51:43 -07:00