Commit Graph

102355 Commits

Author SHA1 Message Date
Sebastian Pop
bb17c851c2 Do not gather loop exit conditions on the basic blocks outside the loop.
2010-06-09  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-sese-to-poly.c (single_pred_cond): Renamed
	single_pred_cond_non_loop_exit.  Return NULL for loop exit edges.
	(build_sese_conditions_before): Renamed call to single_pred_cond.
	(build_sese_conditions_after): Same.

From-SVN: r163112
2010-08-11 20:23:46 +00:00
Sebastian Pop
86e40af75b Fix comments and indentation.
2010-06-09  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-poly.h: Fix comments and indentation.
	* graphite-sese-to-poly.c: Same.
	(build_sese_conditions_before): Compute stmt and gbb only when needed.
	* tree-chrec.c: Fix comments and indentation.
	(tree-ssa-loop-niter.c): Same.

From-SVN: r163111
2010-08-11 20:23:39 +00:00
Tobias Grosser
5599dea7db Fix refined region tree nesting.
2010-06-08  Tobias Grosser  <grosser@fim.uni-passau.de>

	* refined-regions.c (create_region): Only initialize the region.
	(find_regions_with_entry): Initialize parent relation and bbmap
	correctly.
	(build_regions_tree): Set outermost_region to region instead of
	topmost_region.
	(calculate_region_tree): Remove unneeded parameters.

From-SVN: r163110
2010-08-11 20:23:33 +00:00
Tobias Grosser
2a6909ecb3 Skeleton for the new SCoP detection.
2010-06-02  Tobias Grosser  <grosser@fim.uni-passau.de>

	* graphite-scop-detection.c (is_scop_p): New.
	(build_scops_new): New. A skeleton for the new scop detection.
	(build_scops_old): Renamed from build_scops.
	(build_scops): New version. Call the new and the old scop
	detection.

From-SVN: r163109
2010-08-11 20:23:26 +00:00
Tobias Grosser
25c57e8357 Add analysis pass to build the refined program structure tree.
The hash table utility functions are copied and adapted from code
Antoniu contributed.

2010-05-27  Tobias Grosser  <grosser@fim.uni-passau.de>
	    Antoniu Pop  <antoniu.pop@gmail.com>

	* Makefile.in (OBJS-common): Add refined-regions.o.
	(refined-regions.o): New.
	(graphite-scop-detection.o): Use refined-regions.h.
	* graphite-scop-detection.c: Include refined-regions.h
	(build_scops): Also build the refined region tree.
	* refined-regions.c: New. Adds an algorithm to detect refined
	regions.
	(print_refined_region): New.
	(debug_refined_region): New.
	(refined_region_contains_bb_p): New.
	(refined_region_contains_region_p): New.
	(is_common_df): New.
	(struct find_regions_global_data): New.
	(is_region): New.
	(typedef struct bb_bb_def): New.
	(new_bb_bb_def): New.
	(bb_bb_map_hash): New.
	(eq_bb_bb_map): New.
	(find_new_bb): New.
	(bb_reg_def): New.
	(new_bb_reg_def): New.
	(bb_reg_map_hash): New.
	(eq_bb_reg_map): New.
	(find_new_region): New.
	(insert_new_reg): New.
	(insert_new_bb): New.
	(insert_shortcut): New.
	(get_next_postdom): New.
	(create_region): New.
	(find_regions_with_entry): New.
	(find_regions_adc): New.
	(find_regions): New.
	(get_topmost_parent): New.
	(build_regions_tree): New.
	(calculate_region_tree): New.
	(free_region_tree): New.
	* refined-regions.h: New.
	(struct refined_region): New.
	(calculate_region_tree): New.
	(free_region_tree): New.
	(refined_region_contains_bb_p): New.
	(refined_region_contains_region_p): New.
	(print_refined_region): New.
	(debug_refined_region): New.

From-SVN: r163108
2010-08-11 20:23:19 +00:00
Sebastian Pop
8c131b3b21 Use size_one_node.
2010-05-26  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Use
	size_one_node.

From-SVN: r163107
2010-08-11 20:23:11 +00:00
Sebastian Pop
d91949fa34 Fix type of integer_one_node for fold_build of POINTER_PLUS_EXPR.
2010-05-07  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-clast-to-gimple.c (graphite_create_new_loop_guard): Fix
	type of integer_one_node for fold_build of POINTER_PLUS_EXPR.

From-SVN: r163106
2010-08-11 20:23:04 +00:00
Sebastian Pop
159e461678 Fix invariant phi node removal.
2010-05-07  Sebastian Pop  <sebastian.pop@amd.com>

	* graphite-sese-to-poly.c (loop_entry_phi_arg): Renamed
	phi_arg_in_outermost_loop.
	(remove_simple_copy_phi): Call phi_arg_in_outermost_loop.
	(remove_invariant_phi): Same.

From-SVN: r163105
2010-08-11 20:22:57 +00:00
Anatoly Sokolov
6cbd887583 target.def (output_addr_const_extra): New hook.
* target.def (output_addr_const_extra): New hook.
	* doc/tm.texi.in (TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Document.
	* doc/tm.texi: Regenerate.
	* targhooks.c (default_asm_output_addr_const_extra): New function.
	* targhooks.h (default_asm_output_addr_const_extra): Declare.
	* final.c: (output_addr_const): Use TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA
	target hook.

	* config/i386/i386.h (OUTPUT_ADDR_CONST_EXTRA): Remove.
	* config/i386/i386-protos.h (output_addr_const_extra): Remove.
	* config/i386/i386.h (output_addr_const_extra): Rename to...
	(i386_asm_output_addr_const_extra): ...this. Make static.
	(TARGET_ASM_OUTPUT_ADDR_CONST_EXTRA): Define.

From-SVN: r163104
2010-08-11 23:52:46 +04:00
Richard Henderson
51ba747afc * config/i386/i386.h (HARD_REGNO_CALL_PART_CLOBBERED): New.
From-SVN: r163103
2010-08-11 11:40:45 -07:00
Paolo Carlini
633e8e192b stl_algo.h (shuffle): Change signature consistently with random_shuffle (US 121).
2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/stl_algo.h (shuffle): Change signature consistently
	with random_shuffle (US 121).
	* include/bits/algorithmfwd.h: Adjust.
	* testsuite/25_algorithms/shuffle/requirements/
	explicit_instantiation/2.cc: Likewise.
	* testsuite/25_algorithms/shuffle/requirements/
	explicit_instantiation/pod.cc: Likewise.

From-SVN: r163102
2010-08-11 17:10:04 +00:00
Paolo Carlini
4c7aaebf4d move.h (forward): Reinstate the N2835 version.
2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/move.h (forward): Reinstate the N2835 version.

From-SVN: r163101
2010-08-11 16:55:33 +00:00
Jakub Jelinek
be94d007e6 Fix up a wrong ChangeLog entry:
* testsuite/libffi.call/err_bad_abi.c: Remove unused args variable.

From-SVN: r163099
2010-08-11 15:59:35 +02:00
Nick Clifton
bfd71bc196 stormy16-lib2.c (__cmpsi2): New function.
* config/stormy16/stormy16-lib2.c (__cmpsi2): New function.
        * config/stormy16/stormy16-lib2-cmpsi2.c: New file.
        * config/stormy16/t-stormy16 (LIB2FUNCS_EXTRA): Add
        stormy16-lib2-cmpsi.c.

        * config/stormy16/t-stormy16 (TARGET_LIBGCC2_CFLAGS): Change to
        -O2.

From-SVN: r163097
2010-08-11 11:56:15 +00:00
Janus Weil
c4aa95f885 re PR fortran/44595 (INTENT of arguments to intrinsic procedures not checked)
2010-08-11  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/44595
	* intrinsic.c (gfc_current_intrinsic_arg): Change type from 'char' to
	'gfc_intrinsic_arg'.
	(check_arglist,check_specific): Add reference to 'name' field.
	(init_arglist): Remove reference to 'name' field.
	* intrinsic.h (gfc_current_intrinsic_arg): Modify prototype.
	* check.c (variable_check): Reverse order of checks. Respect intent of
	formal arg.
	(int_or_proc_check): New function.
	(coarray_check): New function.
	(allocatable_check): New function.
	(gfc_check_allocated,gfc_check_move_alloc): Use 'allocatable_check'.
	(gfc_check_complex): Use 'int_or_real_check'.
	(gfc_check_lcobound,gfc_check_image_index,gfc_check_this_image,
	gfc_check_ucobound): Use 'coarray_check'.
	(gfc_check_pack): Use 'real_or_complex_check'.
	(gfc_check_alarm_sub,gfc_check_signal,gfc_check_signal_sub): Use
	'int_or_proc_check'.
	(scalar_check,type_check,numeric_check,int_or_real_check,
	real_or_complex_check,kind_check,double_check,logical_array_check,
	array_check,same_type_check,rank_check,nonoptional_check,
	kind_value_check,gfc_check_a_p,gfc_check_associated,gfc_check_cmplx,
	gfc_check_cshift,gfc_check_dcmplx,gfc_check_dot_product,gfc_check_dprod,
	gfc_check_eoshift,gfc_check_fn_rc2008,gfc_check_index,gfc_check_kind,
	gfc_check_matmul,gfc_check_minloc_maxloc,check_reduction,gfc_check_null,
	gfc_check_present,gfc_check_reshape,gfc_check_same_type_as,
	gfc_check_spread,gfc_check_unpack,gfc_check_random_seed,
	gfc_check_getarg,gfc_check_and,gfc_check_storage_size): Add reference
	to 'name' field.

2010-08-11  Janus Weil  <janus@gcc.gnu.org>
	    Steve Kargl <kargl@gcc.gnu.org>

	PR fortran/44595
	* gfortran.dg/move_alloc_3.f90: New.
	* gfortran.dg/random_seed_2.f90: New.

Co-Authored-By: Steve Kargl <kargl@gcc.gnu.org>

From-SVN: r163096
2010-08-11 12:49:56 +02:00
Joseph Myers
481e1176d7 opts.h (struct cl_option_handler_func): Make handler take cl_decoded_option structure as parameter, not individual elements.
* opts.h (struct cl_option_handler_func): Make handler take
	cl_decoded_option structure as parameter, not individual elements.
	(struct cl_option_handlers): Make callbacks take cl_decoded_option
	structure as parameter, not individual elements.
	(handle_option): Take cl_decoded_option structure as parameter,
	not individual elements.
	(handle_generated_option): Declare.
	* opts-common.c (handle_option): Take cl_decoded_option structure
	as parameter, not individual elements.  Update calls to callback
	and handler functions.
	(handle_generated_option): New.
	(read_cmdline_option): Update calls to callback functions and
	handle_option.
	* opts.c (common_handle_option, complain_wrong_lang,
	unknown_option_callback, post_handling_callback,
	lang_handle_option, target_handle_option): Take cl_decoded_option
	structure as parameter, not individual elements.
	(lang_handle_option, target_handle_option, common_handle_option):
	Assert option has at most one argument.
	(enable_warning_as_error): Call handle_generated_option instead of
	handle_option.  Do not pass -Werror argument as argument of
	generated option.

c-family:
	* c-opts.c (c_common_handle_option): Call handle_generated_option
	instead of handle_option.

From-SVN: r163095
2010-08-11 11:04:43 +01:00
Paolo Carlini
3abeaf8f89 re PR libstdc++/42925 ([GB 99] Not possible to compare unique_ptr with 0)
2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/42925
	* include/bits/unique_ptr.h (operator==(const unique_ptr<>&,
	nullptr_t), operator==(nullptr_t, const unique_ptr<>&),
	operator!=(const unique_ptr<>&, nullptr_t),
	operator!=(nullptr_t, const unique_ptr<>&)): Add.
	* include/bits/shared_ptr_base.h (operator==(const __shared_ptr<>&,
	nullptr_t), operator==(nullptr_t, const __shared_ptr<>&),
	operator!=(const __shared_ptr<>&, nullptr_t),
	operator!=(nullptr_t, const __shared_ptr<>&)): Likewise.
	* include/bits/shared_ptr.h (operator==(const shared_ptr<>&,
	nullptr_t), operator==(nullptr_t, const shared_ptr<>&),
	operator!=(const shared_ptr<>&, nullptr_t),
	operator!=(nullptr_t, const shared_ptr<>&)): Likewise.
	* testsuite/20_util/unique_ptr/comparison/42925.cc: New.
	* testsuite/20_util/shared_ptr/comparison/42925.cc: Likewise.
	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust
	dg-error line numbers.

From-SVN: r163094
2010-08-11 08:49:47 +00:00
Paolo Carlini
8fe286ea6d unique_ptr.h: Replace _Tp_Deleter -> _Dp, and _Up_Deleter -> _Ep.
2010-08-11  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/unique_ptr.h: Replace _Tp_Deleter -> _Dp, and
	_Up_Deleter -> _Ep.

From-SVN: r163092
2010-08-11 07:42:02 +00:00
John David Anglin
4d053ac1a9 target-supports.exp (check_effective_target_sync_int_long): Add hppa*-*-linux*.
* lib/target-supports.exp (check_effective_target_sync_int_long):
	Add hppa*-*-linux*.
	(check_effective_target_sync_char_short): Likewise.

From-SVN: r163090
2010-08-11 02:23:31 +00:00
John David Anglin
e5fbc9bf5f linux-atomic.c (SUBWORD_VAL_CAS): Instantiate with 'unsigned short' and 'unsigned char' instead of 'short' and 'char'.
* config/pa/linux-atomic.c (SUBWORD_VAL_CAS): Instantiate with
	'unsigned short' and 'unsigned char' instead of 'short' and 'char'.
	(SUBWORD_BOOL_CAS): Likewise.
	(SUBWORD_SYNC_OP): Likewise.
	(SUBWORD_TEST_AND_SET): Likewise.
	(FETCH_AND_OP_WORD): Parenthesise INF_OP
	(SUBWORD_SYNC_OP): Likewise.
	(OP_AND_FETCH_WORD): Likewise.

From-SVN: r163089
2010-08-11 02:18:07 +00:00
Yao Qi
1ae0fa1c16 builtin-stringop-chk-1.c: Change ARM triplet to a more general form.
2010-08-10  Yao Qi  <yao@codesourcery.com>

        * gcc.dg/builtin-stringop-chk-1.c: Change ARM triplet to a more 
        general form.
        * gcc.dg/tree-ssa/loop-31.c: Likewise.
        * g++.dg/other/packed1.C: Likewise.
        * g++.dg/other/crash-4.C: Likewise.
        * g++.dg/ext/packed8.C: Likewise.
        * g++.dg/init/array16.C: Likewise.

From-SVN: r163088
2010-08-11 02:00:15 +00:00
Yao Qi
2cb4a047b2 MAINTAINERS (Write After Approval): Add myself.
2010-08-11  Yao Qi  <yao@codesourcery.com>

        * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r163087
2010-08-11 01:09:21 +00:00
GCC Administrator
a30bcebbf5 Daily bump.
From-SVN: r163085
2010-08-11 00:17:14 +00:00
Xinliang David Li
d6fa2d17d4 Improve address offset range computation
From-SVN: r163081
2010-08-10 23:26:05 +00:00
Vladimir Makarov
9995f20912 ira-live.c: Include sbitmap.h.
2010-08-10  Vladimir Makarov  <vmakarov@redhat.com>

	* ira-live.c: Include sbitmap.h.
	(remove_some_program_points_and_update_live_ranges): Use sbitmaps.
	Compress live ranges even more.

From-SVN: r163080
2010-08-10 21:39:13 +00:00
Nathan Froyd
009c04bf7b fix ChangeLog typo
From-SVN: r163079
2010-08-10 19:39:39 +00:00
Nathan Froyd
175a62b7d5 * coverage.c (ctr_labels): Delete.
From-SVN: r163078
2010-08-10 19:27:18 +00:00
Bernd Schmidt
8f4c6e28cf re PR bootstrap/45177 (cc1 runs out of memory building libgcc in ARM cross-compiler)
PR bootstrap/45177
	* config/arm/arm.c (multiple_operation_profitable_p): Move xscale
	test here from arm_gen_load_multiple_1.
	(arm_gen_load_multiple_1, arm_gen_store_multiple_1): Use
	multiple_operation_profitable_p.

From-SVN: r163077
2010-08-10 18:45:10 +00:00
Paolo Carlini
c1510a4900 shared_ptr_base.h: Remove a few now redundant __glibcxx_function_requires(_ConvertibleConcept...).
2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/shared_ptr_base.h: Remove a few now redundant
	__glibcxx_function_requires(_ConvertibleConcept...).
	* testsuite/20_util/shared_ptr/cons/43820.cc: Adjust dg-error
	line number.
	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Likewise.

From-SVN: r163075
2010-08-10 16:54:09 +00:00
Daniel Kraft
da4dbc2518 gfortran.texi (Interoperability with C): Fix ordering in menu and add new subsection about pointers.
2010-08-10  Daniel Kraft  <d@domob.eu>

	* gfortran.texi (Interoperability with C): Fix ordering in menu
	and add new subsection about pointers.
	(Interoperable Subroutines and Functions): Split off the pointer part.
	(working with Pointers): New subsection with extended discussion
	of pointers (especially procedure pointers).

From-SVN: r163073
2010-08-10 17:40:59 +02:00
Ramana Radhakrishnan
f6aa1e0fe3 Fix misformatted Changelog entry.
From-SVN: r163070
2010-08-10 15:01:45 +00:00
Nathan Froyd
a72ae88a98 * tree-ssa-prec. (init_pre): Call alloc_aux_for_blocks.
(fini_pre): Call free_aux_for_blocks.  Delete unused bb variable.

From-SVN: r163069
2010-08-10 14:58:41 +00:00
Richard Henderson
35b15a461e i386.c (ix86_compute_frame_layout): Re-align stack after saving registers.
* config/i386/i386.c (ix86_compute_frame_layout): Re-align stack
	after saving registers.  Assert that SSE registers are only saved
	with a sufficiently aligned frame.
	(ix86_emit_save_reg_using_mov): Assert realigned only with DRAP;
	remove stack_realign_fp handling.
	(ix86_expand_prologue): Save int registers before stack_realign_fp,
	and do not mark the stack alignment as frame related.
	(ix86_expand_epilogue): SP is now invalid with stack_realign_fp.

	* dwarf2out.c (dwarf2out_frame_debug_expr): Flush queued register
	saves when re-aligning the stack.

From-SVN: r163068
2010-08-10 07:50:34 -07:00
Robert Dewar
67536dcb63 sem_ch8.adb, [...]: Change name Write_Scopes to ws.
2010-08-10  Robert Dewar  <dewar@adacore.com>

	* sem_ch8.adb, sem_ch8.ads: Change name Write_Scopes to ws.
	* sem_util.adb: Minor reformatting.

From-SVN: r163067
2010-08-10 16:34:24 +02:00
Nathan Froyd
a398224a88 basic-block.h (alloc_aux_for_block, [...]): Delete.
* basic-block.h (alloc_aux_for_block, alloc_aux_for_edge): Delete.
	* cfg.c (alloc_aux_for_block, alloc_aux_for_edge): Make static.
	(alloc_aux_for_blocks, clear_aux_for_blocks): Use FOR_ALL_BB.

From-SVN: r163066
2010-08-10 14:31:52 +00:00
Javier Miranda
cefce34c67 sem_aggr.adb (Resolve_Extension_Aggregate): Warn on the use of C++ constructors that leave the object partially initialized.
2010-08-10  Javier Miranda  <miranda@adacore.com>

	* sem_aggr.adb (Resolve_Extension_Aggregate): Warn on the use of C++
	constructors that leave the object partially initialized.
	* exp_atag.ads, exp_atags.adb (Build_Inherit_CPP_Prims): New subprogram
	that copies from parent of Typ the dispatch table slots of inherited
	C++ primitives. It handles primary and secondary dispatch tables.
	* einfo.adb (Related_Type): Moved from Node26 to Node27. Required to
	use this attribute with E_Variable entities.
	(Set_Is_Tag): Relax assertion to allow its use with variables that
	store tags.
	(Set_Related_Type): Relax assertion to allow its use with variables
	that store the tag of a C++ class.
	(Write_26_Field_Name): Remove Related_Type.
	(Write_27_Field_Name): Add Related_Type.
	* einfo.ads (Related_Type): Moved from Node26 to Node27. Available also
	with E_Variable entities.
	* sem_prag.adb (CPP_Constructor): Warn on duplicated occurrence of this
	pragma.
	* sem_util.adb (Search_Tag): Add missing support for CPP types.
	(Enclosing_CPP_Parent): New subprogram.
	(Has_Suffix): New subprogram.
	* sem_util.ads (Enclosing_CPP_Parent): New subprogram that returns the
	closest ancestor of a type that is a C++ type.
	(Has_Suffix): New subprogram. Used in assertions to check the suffix of
	internal entities.
	* sem_attr.adb (Analyze_Access_Attribute): Check wrong use of current
	instance in derivations of C++ types.
	* exp_tss.adb (CPP_Init_Proc): New subprogram.
	(Is_CPP_Init_Proc): New subprogram.
	(Set_TSS): Handle new C++ init routines.
	* exp_tss.ads (TSS_CPP_Init): New TSS name. For initialization of C++
	dispatch tables.
	(CPP_Init_Proc): New subprogram.
	(Is_CPP_Init_Proc): New subprogram.
	* exp_disp.adb (CPP_Num_Prims): New subprogram.
	(Has_CPP_Constructors): New subprogram.
	(Make_Secondary_DT, Make_DT): For derivations of CPP types, do not
	initialize slots located in the C++ part of the dispatch table.
	(Make_Tags): For CPP types declare variables used by the IP routine to
	store the C++ tag values after the first invocation of the C++
	constructor.
	(Build_CPP_Init_DT): New subprogram.
	(Set_CPP_Constructors): New implementation that builds an IP for each
	CPP constructor. These IP are wrappers of the C++ constructors that,
	after the first invocation of the constructor, read the C++ tags from
	the object and save them locally. These copies of the C++ tags are used
	by the IC routines to initialize tables of Ada derivations of CPP types.
	(Write_DT): Indicate what primitives are imported from C++
	* exp_disp.ads (CPP_Num_Prims): New subprogram.
	(Has_CPP_Constructors): New subprogram.
	* exp_aggr.adb (Build_Record_Aggr_Code): For derivations of C++ types
	invoke the IC routine to inherit the slots of the parents.
	* sem_ch13.adb (Analyze_Freeze_Entity): Add new warnings on CPP types.
	* exp_ch3.adb (Is_Variable_Size_Array): New subprogram.
	(Is_Variable_Size_Record): Factorize code calling
	Is_Variable_Size_Array.
	(Build_CPP_Init_Procedure): New subprogram that builds the tree
	corresponding to the procedure that initializes the C++ part of the
	dispatch table of an Ada tagged type that is a derivation of a CPP type.
	(Build_Init_Procedure): Adding documentation plus code reorganization to
	leave more clear the construction of the IP with C++ types.
	(Expand_Freeze_Record_Type): Delay call to Set_CPP_Constructors because
	it cannot be called after Make_Tags has been invoked.
	(Inherit_CPP_Tag): Removed.
	(Init_Secondary_Tags): For derivations of CPP types, warn on tags
	located at variable offset.
	* freeze.ads: Minor reformating.
	* sem_ch8.adb (Write_Scopes): Add pragma export. Required to have it
	available in gdb.
	* gcc-interface/Make-lang.in: Update dependencies.

From-SVN: r163065
2010-08-10 16:29:36 +02:00
Nathan Froyd
774038e62e * dwarf2out.c (struct die_struct): Move die_tag to the end.
From-SVN: r163064
2010-08-10 14:22:18 +00:00
Robert Dewar
b5c739f9f5 a-chahan.ads: Add comments on handling of obsolescent entries.
2010-08-10  Robert Dewar  <dewar@adacore.com>

	* a-chahan.ads: Add comments on handling of obsolescent entries.
	* opt.ads: Add Ada_2005 and Ada_2012 renamings for versions.
	* restrict.adb (Check_Obsolescent_2005_Entity): New procedure.
	* restrict.ads (Check_Obsolescent_2005_Entity): New procedure.
	* sem_attr.adb (Analyze_Access_Attribute): Call
	Check_Obsolescent_2005_Entity to check for access to obsolescent
	Ada.Characters.Handling subprogram.
	(Analyze_Attribute, case Class): Applying Class to untagged incomplete
	type is obsolescent in Ada 2005.
	(Analyze_Attribute, case Constrained): Better placement of flag when
	flagged as obsolescent feature.
	(Analyze_Attribute, case Storage_Size): Use with tasks is obsolescent
	* sem_ch10.adb (Analyze_With_Clause): With of renamings such as Text_IO
	is an obsolescent feature.
	* sem_ch11.adb (Analyze_Raise_Statement): Numeric_Error is obsolescent
	feature.
	* sem_ch8.adb (Analyze_Subprogram_Renaming): Call
	Check_Obsolescent_2005_Entity to check for renaming obsolete
	Ada.Characters.Handling subprogram.
	* sem_prag.adb (Process_Restrictions_Or_Restriction_Warnings): Check
	for obsolescent restrictions in Ada 2005.
	(Analyze_Pragma, case Suppress): Entity arg is obsolescent in Ada 2005
	(Analyze_Pragma, case Interface): Interface is obsolescent in Ada 2005
	* sem_res.adb (Resolve_Call): Call Check_Obsolescent_2005_Entity to
	check for obsolescent references to Ada.Characters.Handling subprograms

2010-08-10  Robert Dewar  <dewar@adacore.com>

	* einfo.adb, einfo.ads: Fix bad -gnatdt output for incomplete type.

2010-08-10  Robert Dewar  <dewar@adacore.com>

	* errout.ads: Add VMS table entries for 2005, 12, 2012 switches
	* par-ch4.adb: Change wording of Ada 2012 messages
	* vms_data.ads: Add VMS entries for /2005, /12, /2012

From-SVN: r163063
2010-08-10 15:50:53 +02:00
Arnaud Charlet
d606f1df14 [multiple changes]
2010-08-10  Robert Dewar  <dewar@adacore.com>

	* a-suenco.adb (Convert): Fix bug in UTF-16 to UTF-8 conversion for
	codes in the range 16#80#..16#7FF#.
	* sem_ch10.adb: Minor reformatting.

2010-08-10  Arnaud Charlet  <charlet@adacore.com>

	* gnat1drv.adb (Scan_Front_End_Switches): Always perform semantics and
	generate ali files in CodePeer mode, so that a gnatmake -c -k will
	proceed further when possible
	* freeze.adb (Freeze_Static_Object): Fix thinko. Do not generate error
	messages when ignoring representation clauses (-gnatI).

2010-08-10  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch4.adb (Expand_N_Selected_Component): Do not attempt to
	constant-fold discriminant reference if the constraint is an object
	with non-static expression. Expression may contain volatile references
	in the presence of renamings.

2010-08-10  Vincent Celier  <celier@adacore.com>

	* prj-proc.adb (Get_Attribute_Index): If Index is All_Other_Names,
	returns Index.
	* prj-strt.adb (Attribute_Reference): Recognize 'others' as a valid
	index for an associative array where it is allowed.

From-SVN: r163060
2010-08-10 15:43:01 +02:00
Arnaud Charlet
1f92d7f29a [multiple changes]
2010-08-10  Thomas Quinot  <quinot@adacore.com>

	* exp_attr.adb: Add comments.

2010-08-10  Jerome Lambourg  <lambourg@adacore.com>

	* adaint.c (__gnat_get_file_names_case_sensitive): return 0 on darwin.

From-SVN: r163059
2010-08-10 15:37:59 +02:00
Sofiane Naci
ceddf62caf iterators.md: New file.
2010-08-09  Sofiane Naci  <sofiane.naci@arm.com>

    * config/arm/iterators.md: New file.
    * config/arm/arm.md: Include iterators.md.
    (QHSI): Move to new file.
    (LTUGEU, cnb, optab, ior_xor): Likewise.
    * config/arm/iwmmxt.md (VMMX): Move to new file.
    (VSHFT, MMX_char): Likewise.
    * config/arm/neon.md (VD): Move to new file.
    (VDX, VDI, VQ, VQX, VQI, VQXMOV, VSTRUCT, VTAB, V_TAB_n, VW): Likewise.
    (VN, VDQ, VDQW, VDQIW, VCVTF, VCVTI, VMD, VMQ, VMDQ, VMDI): Likewise.
    (VMDQI, VX, VE, V64, V32, V_CVTTO, V_elem, V_ext, V_two_elem): Likewise.
    (V_three_elem, V_four_elem, V_req, V_widen, V_narrow, V_HALF): Likewise.
    (V_half,V_DOUBLE, V_double, V_double_width, V_cmp_result): Likewise.
    (V_if_elem, V_s_elem, V_u_elem, V_uf_sclr, V_sz_elem, VD_dup): Likewise.
    (V_PAIR, vqh_ops, vqhs_ops, VQH_mnem, VQH_sign, V_suf64): Likewise.
    (scalar_mul_constraint,Is_float_mode, Scalar_mul_8_16): Likewise.
    (Is_d_reg, V_mode_nunits): Likewise.
    * config/arm/vec-common.md (VALL): Move to new file.
    (VALLW, VINT, VINTW): Likewise.

From-SVN: r163058
2010-08-10 13:37:25 +00:00
Bernd Schmidt
5466d63d2d re PR middle-end/45182 (Failed to build SPEC CPU 2000/2006)
PR middle-end/45182
	* combine.c (make_compound_operation): Don't try to convert
	shifts into multiplications for modes that aren't SCALAR_INT_MODE_P.

	PR middle-end/45182
	* gcc.c-torture/compile/pr45182.c: New test.

From-SVN: r163057
2010-08-10 12:48:16 +00:00
Paolo Carlini
fabe484df4 1.cc: Avoid -Wall warnings.
2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/ext/stdio_sync_filebuf/char/1.cc: Avoid -Wall
	warnings.
	* testsuite/ext/stdio_sync_filebuf/wchar_t/1.cc: Likewise.

From-SVN: r163056
2010-08-10 11:28:23 +00:00
Paolo Carlini
813c6cdf63 range_access.cc: Avoid -Wall warnings.
2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/23_containers/array/range_access.cc: Avoid -Wall
	warnings.

From-SVN: r163054
2010-08-10 10:28:47 +00:00
Paolo Carlini
5aadb69b90 cons_overflow_neg.cc: Avoid -Wall warnings.
2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/20_util/ratio/cons/cons_overflow_neg.cc: Avoid -Wall
	warnings.

	* include/bits/shared_ptr.h (shared_ptr<>::shared_ptr
	(const shared_ptr<>&), shared_ptr(shared_ptr<>&&), weak_ptr<>::
	weak_ptr(const weak_ptr<>&), weak_ptr(const shared_ptr<>&)):
	Constrain appropriately via std::is_convertible, etc.
	* include/bits/shared_ptr_base.h: Likewise.
	* include/bits/unique_ptr.h (default_delete<>::
	default_delete(const default_delete<>&),
	unique_ptr<>::unique_ptr(unique_ptr<>&&), operator=(unique_ptr<>&&)):
	Likewise.

	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust dg-error
	line numbers.
	* testsuite/20_util/shared_ptr/cons/43820.cc: Likewise.

	* include/bits/unique_ptr.h (unique_ptr<>::unique_ptr(auto_ptr<>&&)):
	Add.
	* include/std/memory: Adjust includes order.
	* testsuite/20_util/unique_ptr/cons/auto_ptr.cc: New.
	* testsuite/20_util/unique_ptr/cons/auto_ptr_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/auto_ptr_neg.cc: Minor tweaks.

From-SVN: r163053
2010-08-10 10:08:56 +00:00
Richard Guenther
e80c2726d2 tree.h (get_object_alignment): Adjust prototype.
2010-08-10  Richard Guenther  <rguenther@suse.de>

	* tree.h (get_object_alignment): Adjust prototype.
	* builtins.c (get_object_alignment): Return unsigned int,
	drop the align parameter.  Handle MEM_REF, MISALIGNED_INDIRECT_REF
	and TARGET_MEM_REF properly.
	(get_pointer_alignment): Adjust.
	* emit-rtl.c (get_mem_align_offset): Adjust comment.
	(set_mem_attributes_minus_bitpos): Adjust.
	* tree-ssa-ccp.c (get_value_from_alignment): Adjust.

From-SVN: r163051
2010-08-10 09:16:22 +00:00
Richard Guenther
a024390f71 tree-ssa-copy.c (set_copy_of_val): Use operand_equal_p.
2010-08-10  Richard Guenther  <rguenther@suse.de>

	* tree-ssa-copy.c (set_copy_of_val): Use operand_equal_p.
	(copy_prop_visit_assignment): Simplify.
	(copy_prop_visit_stmt): Also visit assignments from
	constants.
	(copy_prop_visit_phi_node): Use operand_equal_p.

From-SVN: r163050
2010-08-10 09:13:37 +00:00
Paolo Carlini
0a5c2065bd re PR libstdc++/45228 ([C++0x] Can't copy-construct "tuple<int,int,int>" from "const tuple<int,int,int>" rvalue)
2010-08-10  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/45228
	* include/std/tuple (tuple<typename... _Elements>): Constrain
	converting constructors and assignment operators with
	sizeof...(_UElements) == sizeof...(_Elements).
	(tuple(tuple<_UElements...>&): Remove.
	(tuple<typename _T1>): Add.
	* testsuite/20_util/tuple/cons/45228.cc: New.
	* testsuite/20_util/tuple/cons/converting.cc: Likewise.
	* testsuite/20_util/weak_ptr/comparison/cmp_neg.cc: Adjust
	dg-error line number.

	* include/std/tuple (_Tuple_impl<>::_Tuple_impl(const _Tuple_impl&)):
	Defaulted.

	* include/std/tuple (tuple<typename _T1, typename _T2>
	::operator=(pair<_U1, _U2>&&)): Use forward.

From-SVN: r163049
2010-08-10 07:17:44 +00:00
Nathan Froyd
ff61e417cf * ipa-split.c (find_split_points): Free stack.
From-SVN: r163048
2010-08-10 03:00:37 +00:00
Nathan Froyd
5a351c3ca0 tree.h (tree_node_kind): Delete.
* tree.h (tree_node_kind) [perm_list_kind,temp_list_kind]: Delete.
	* tree.c (tree_node_kind): Delete corresponding entries.

From-SVN: r163047
2010-08-10 02:51:40 +00:00