Commit Graph

57743 Commits

Author SHA1 Message Date
Nick Clifton a2246edcef (thumb_jump): Reduce the backward branch range...
(thumb_jump): Reduce the backward branch range, and increase the forward branch
range, to allow for the fact that the PC will be off by 4.

From-SVN: r80083
2004-03-30 10:31:31 +00:00
Alan Modra 547799a7ea * .cvsignore: Add GPATH, GRTAGS, GSYMS and GTAGS (GNU GLOBAL)
From-SVN: r80079
2004-03-30 18:18:59 +09:30
Hartmut Penner f8bef7c323 * gcc.dg/altivec-11.c: Extend test for more valid cases.
From-SVN: r80078
2004-03-30 08:27:55 +00:00
Hartmut Penner 452a7d3650 rs6000.c (output_vec_const_move): Find all cases of EASY_VECTOR_15_ADD_SELF.
* config/rs6000/rs6000.c (output_vec_const_move):
        Find all cases of EASY_VECTOR_15_ADD_SELF.
        (easy_vector_constant_add_self): Accept
        all vector constant loadable by vsplt* and vadd*.
        (easy_vector_same): Use easy_vector_splat_const.
        (easy_vector_const): Use easy_vector_splat_const.
        (easy_vector_splat_const): New function.
        (gen_easy_vector_constant_add_self): New function.

        * config/rs6000/rs6000-protos.c (gen_easy_vector_constant_add_self):
        New prototype.

        * config/rs6000/altivec.md (movv4si splitter): Change to
        emit move insn with halfed vector constant.
        (*movv8hi splitter): Likewise.
        (*movv16qi splitter): Likewise.

From-SVN: r80077
2004-03-30 08:25:30 +00:00
Hartmut Penner 708d245629 re PR target/11591 ([3.4 only] ICE in gcc.dg/altivec-5.c)
PR 11591
      * config/rs6000/rs6000.c (rs6000_legitimate_address):
        Allow any offset to argument pointer in no-strict case.

From-SVN: r80075
2004-03-30 06:43:51 +00:00
GCC Administrator 285df6bfe5 Daily bump.
From-SVN: r80070
2004-03-30 00:16:50 +00:00
Loren J. Rittle 7be1c3fba9 Update comment to reflect test.
From-SVN: r80067
2004-03-29 23:42:05 +00:00
Jan Hubicka 6868bb1cb1 toplev.c (backend_init): Add missing call to inint_optimization_passes.
* toplev.c (backend_init): Add missing call to inint_optimization_passes.
	* passes.c (init_optimization_passes, finish_optimization_passes): Output cgraph
	dump file in non-unit-at-a-time mode.

From-SVN: r80066
2004-03-29 23:00:28 +00:00
Hans-Peter Nilsson 43537bf62f cris.h: Correct #ifdef to test for HAVE_AS_NO_MUL_BUG_ABORT_OPTION...
* config/cris/cris.h: Correct #ifdef to test for
	HAVE_AS_NO_MUL_BUG_ABORT_OPTION, not
	HAVE_AS_MUL_BUG_ABORT_OPTION.

From-SVN: r80065
2004-03-29 20:40:29 +00:00
Zack Weinberg 93604b1a02 error.c (dump_function_name): If T's DECL_LANG_SPECIFIC is null, just print the literal name and return.
* error.c (dump_function_name): If T's DECL_LANG_SPECIFIC
	is null, just print the literal name and return.

From-SVN: r80058
2004-03-29 17:01:59 +00:00
Richard Kenner 97955d55bb function.c (put_var_into_stack): If old RTL was ADDRESSOF, update the address inside the old RTL.
* function.c (put_var_into_stack): If old RTL was ADDRESSOF, update
	the address inside the old RTL.

From-SVN: r80057
2004-03-29 09:48:45 -05:00
Arnaud Charlet 2820d22058 [multiple changes]
2004-03-29  Javier Miranda  <miranda@gnat.com>

	* checks.adb (Null_Exclusion_Static_Checks): New subprogram
	(Install_Null_Excluding_Check): Local subprogram that determines whether
	an access node requires a runtime access check and if so inserts the
	appropriate run-time check.
	(Apply_Access_Check): Call Install_Null_Excluding check if required
	(Apply_Constraint_Check): Call Install_Null_Excluding check if required

	* checks.ads: (Null_Exclusion_Static_Checks): New subprogram

	* einfo.ads: Fix typo in comment

	* exp_ch3.adb (Build_Assignment): Generate conversion to the
	null-excluding type to force the corresponding run-time check.
	(Expand_N_Object_Declaration): Generate conversion to the null-excluding
	type to force the corresponding run-time check.

	* exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
	the null-excluding type to force the corresponding run-time check.

	* exp_ch6.adb (Expand_Call): Do not generate the run-time check in
	case of access types unless they have the null-excluding attribute.

	* sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
	part.

	* exp_util.ads: Fix typo in comment

	* par.adb (P_Null_Exclusion): New subprogram
	(P_Subtype_Indication): New formal that indicates if the null-excluding
	part has been scanned-out and it was present

	* par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231

	* sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
	(Aggregate_Constraint_Checks): Generate conversion to the null-excluding
	type to force the corresponding run-time check
	(Resolve_Aggregate): Propagate the null-excluding attribute to the array
	components
	(Resolve_Array_Aggregate): Carry out some static checks
	(Resolve_Record_Aggregate.Get_Value): Carry out some static check

	* sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null
	attribute must be set only if specified by means of the null-excluding
	part. In addition, we must also propagate the access-constant attribute
	if present.
	(Access_Subprogram_Declaration, Access_Type_Declaration,
	Analyze_Component_Declaration, Analyze_Object_Declaration,
	Array_Type_Declaration, Process_Discriminants,
	Analyze_Subtype_Declaration): Propagate the null-excluding attribute
	and carry out some static checks.
	(Build_Derived_Access_Type): Set the null-excluding attribute
	(Derived_Type_Declaration, Process_Subtype): Carry out some static
	checks.

	* sem_ch4.adb (Analyze_Allocator): Carry out some static checks

	* sem_ch5.adb (Analyze_Assignment): Carry out some static checks

	* sem_ch6.adb (Process_Formals): Carry out some static checks.
	(Set_Actual_Subtypes): Generate null-excluding subtype if the
	null-excluding part was present; it is not required to be done here in
	case of anonymous access types.
	(Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
	value.

	* sem_res.adb (Resolve_Actuals): Carry out some static check
	(Resolve_Null): Allow null in anonymous access

	* sinfo.adb: New subprogram Null_Exclusion_Present
	All_Present and Constant_Present available on access_definition nodes

	* sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
	object_declaration, derived_type_definition, component_definition,
	discriminant_specification, access_to_object_definition,
	access_function_definition, allocator, access_procedure_definition,
	access_definition, parameter_specification, All_Present and
	Constant_Present flags available on access_definition nodes.

2004-03-29  Robert Dewar  <dewar@gnat.com>

	* fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
	gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb,
	opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
	par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.adb,
	sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb,
	sem_prag.adb: Updates to handle multiple units/file

	* par.adb: Change test for s-rpc to s-rp for detecting rpc and children

	* par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
	sem_util.adb: Minor reformatting

	* sem_ch12.adb: Add comment for previous change

2004-03-29  Laurent Pautet  <pautet@act-europe.fr>

	* osint.adb (Executable_Prefix): Set Exec_Name to the current
	executable name when not initialized. Otherwise, use its current value.

	* osint.ads (Exec_Name): Move Exec_Name from body to spec in order to
	initialize it to another executable name than the current one. This
	allows to configure paths for an executable name (gnatmake) different
	from the current one (gnatdist).

2004-03-29  Ed Schonberg  <schonberg@gnat.com>

	* exp_ch6.adb (Expand_Call): A call to a function declared in the
	current unit cannot be inlined if it appears in the body of a withed
	unit, to avoid order of elaboration problems in gigi.

	* exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
	information for protected (wrapper) operation as well, to simplify gdb
	use.

	* sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
	protected body, indicate that the entity for the generated spec comes
	from source, to ensure that references are properly generated for it.
	(Build_Body_To_Inline): Do not inline a function that returns a
	controlled type.

	* sem_prag.adb (Process_Convention): If subprogram is overloaded, only
	apply convention to homonyms that are declared explicitly.

	* sem_res.adb (Make_Call_Into_Operator): If the operation is a function
	that renames an equality operator and the operands are overloaded,
	resolve them with the declared formal types, before rewriting as an
	operator.

2004-03-29  GNAT Script  <nobody@gnat.com>

	* Make-lang.in: Makefile automatically updated

From-SVN: r80055
2004-03-29 14:03:27 +02:00
Paolo Carlini 63041e68a4 pthread7-rope.cc: Fix...
2004-03-29  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/thread/pthread7-rope.cc: Fix, unpredictably, depending
	on allocator behavior, the memory pointed by data2 may well be not
	trashed.

From-SVN: r80051
2004-03-29 09:54:15 +00:00
GCC Administrator 0e32714724 Daily bump.
From-SVN: r80047
2004-03-29 00:16:12 +00:00
David Edelsohn d8cf9daf7e * gcc.dg/doloop-1.c: Do not check for lack of "blt".
From-SVN: r80044
2004-03-28 15:33:45 -05:00
Zack Weinberg 18d5f9820c re PR c/14734 (Error recovery problem with undeclared array bounds)
* c-decl.c: Verify that C_SIZEOF_STRUCT_LANG_IDENTIFIER is correct.
	(struct c_binding, struct c_scope): Add chain_next
	attributes to GTY markers.
	(struct lang_identifier, struct lang_tree_node): Define
	here...
	* c-tree.h: ... not here.  No longer need to declare struct
	c_binding either.  Do define C_SIZEOF_STRUCT_LANG_IDENTIFIER.
	* c-lang.c, objc/objc-lang.c: Set LANG_HOOKS_IDENTIFIER_SIZE
	to C_SIZEOF_STRUCT_LANG_IDENTIFIER.

	PR 14734, 11944
	* c-decl.c (get_parm_info): If error_mark_node is encountered
	in the bindings chain, unbind and discard it; don't abort.
	* testsuite/gcc.dg/noncompile/undeclared-2.c: New test.

From-SVN: r80042
2004-03-28 17:45:57 +00:00
Chavdar Botev f26e5597f0 re PR libstdc++/14245 ([3.4 only] problem with user-defined allocators in std::basic_string)
2004-03-28  Chavdar Botev  <cbotev@yahoo.com>

	PR libstdc++/14245
	* include/bits/basic_string.tcc
	(basic_string::basic_string(const basic_string&)): Pass to
	_Rep::_M_grab the actual allocator of the string being constructed
	not the default constructed one.

From-SVN: r80041
2004-03-28 16:27:27 +00:00
Olga Golovanevsky e20f3dd143 altivec.md: (andvv16qi3...
* config/rs6000/altivec.md: (andvv16qi3, andv8hi3, one_cmplv16qi2,
        one_cmplv8hi2, one_cmplv4si2, iorv16qi3, iorv8hi3,): New modelling.

Co-Authored-By: Dorit Naishlos <dorit@il.ibm.com>

From-SVN: r80039
2004-03-28 15:07:21 +00:00
Stephane Carrez d5ebbf584f m68hc11-protos.h (m68hc11_page0_symbol_p): Declare.
* config/m68hc11/m68hc11-protos.h (m68hc11_page0_symbol_p): Declare.

	* config/m68hc11/m68hc11.c (m68hc11_handle_page0_attribute): New.
	(m68hc11_attribute_table): New attribute "page0" to mark a global
	variable as being allocated from within page0 section.
	(m68hc11_encode_label): New function.
	(m68hc11_strip_name_encoding): New function.
	(m68hc11_page0_symbol_p): New function.
	(m68hc11_indirect_p): Accept global variables marked in page0.
	(m68hc11_encode_section_info): Lookup "page0" attribute.

	* config/m68hc11/m68hc11.h (EXTRA_CONSTRAINT): 'R' constraint also
	represents access to page0 variables.

	* config/m68hc11/m68hc11.md ("*logicalsi3_zexthi"): Use gen_rtx_REG.
	("*logicalsi3_silshl16_zext"): Likewise.
	("*ashldi3_const32"): Likewise.
	(peephole2 ashift): Likewise.

From-SVN: r80038
2004-03-28 14:00:26 +02:00
Joseph Myers 5baeaac067 c-tree.h (C_DECL_REGISTER): New.
* c-tree.h (C_DECL_REGISTER): New.
	* c-aux-info.c (gen_decl), c-decl.c (objc_mark_locals_volatile,
	finish_decl, grokdeclarator, get_parm_info), c-typeck.c
	(build_array_ref, c_mark_addressable): Set and use it.
	* c-decl.c (grokdeclarator), c-typeck.c (c_mark_addressable):
	Allow structures with volatile fields to be declared register.
	Don't check TREE_ADDRESSABLE before warning about taking address
	of register.
	* c-decl.c (finish_decl): Don't allow structures with volatile
	fields to be placed in named register.
	* doc/trouble.texi: Remove reference to structures with volatile
	fields in registers.

testsuite:
	* gcc.dg/940409-1.c: Remove XFAIL.
	* gcc.dg/reg-vol-struct-1.c: New test.

From-SVN: r80037
2004-03-28 00:31:41 +00:00
GCC Administrator 4c24abdce4 Daily bump.
From-SVN: r80034
2004-03-28 00:16:10 +00:00
Benjamin Kosnik a5f105b590 [multiple changes]
2004-03-27  Benjamin Kosnik  <bkoz@redhat.com>

	libstdc++ PR/13598
	* config/locale/ieee_1003.1-2001/codecvt_specializations.h
	(__enc_traits::_M_destroy): New.
	(__enc_traits::~__enc_traits): Use it.
	(__enc_traits::operator=): Use _M_destroy, _M_init.
	(__enc_traits::__enc_traits): Same.

2004-03-27  Petur Runolfsson  <peturr02@ru.is>

	* testsuite/ext/enc_filebuf/char/13598.cc: New.

From-SVN: r80027
2004-03-27 16:21:21 +00:00
Ulrich Weigand 84c1fa24b1 function.c (thread_prologue_and_epilogue): Move NOTE_INSN_FUNCTION_END and NOTE_INSN_FUNCTION_BEG notes before the epilogue.
* function.c (thread_prologue_and_epilogue): Move
	NOTE_INSN_FUNCTION_END and NOTE_INSN_FUNCTION_BEG notes
	before the epilogue.

From-SVN: r80025
2004-03-27 16:18:56 +00:00
Ulrich Weigand 053ee101a4 expr.c (store_constructor): Use gen_int_mode to correctly sign-extend CONST_INT value.
* expr.c (store_constructor): Use gen_int_mode to correctly
	sign-extend CONST_INT value.

From-SVN: r80022
2004-03-27 16:15:59 +00:00
Paolo Carlini 6f52a889fd [multiple changes]
2004-03-27  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/mt_allocator.h: Uglify consistently names of
	variables, members and classes; tidy.

2004-03-27  Dhruv Matani  <dhruvbird@gmx.net>

	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
	Deallocation loop rewrote.

From-SVN: r80012
2004-03-27 10:15:49 +00:00
Kaveh R. Ghazi ca4944e1fe builtin-types.def (BT_WINT, [...]): New.
* builtin-types.def (BT_WINT, BT_FN_INT_WINT, BT_FN_WINT_WINT): New.
	* builtins.def (DEF_C94_BUILTIN): New.  Add wctype builtins.
	* doc/extend.texi: Likewise.
testsuite:
	* gcc.dg/torture/builtin-wctype-1.c: New test.

From-SVN: r80011
2004-03-27 05:29:40 +00:00
Gerald Pfeifer aaaf25eba8 gcc_release: Fix sanity check for argument of -p command-line options.
* gcc_release: Fix sanity check for argument of -p command-line
	options.  In snapshot mode, only generate diffs against the previous
	snapshot if the user did not specify any old tarball explictly.

From-SVN: r80009
2004-03-27 01:20:45 +00:00
GCC Administrator 8c7555a5b6 Daily bump.
From-SVN: r80006
2004-03-27 00:16:18 +00:00
Peter Moon 99b432390e NumberFormat.java: Fix spelling of setCurrency method.
2004-03-26  Peter Moon  <peterm@miraculum.com>

	* java/text/NumberFormat.java: Fix spelling of setCurrency
	method.

From-SVN: r79994
2004-03-26 20:25:00 +00:00
Jason Merrill 9b5c46c201 re PR c++/13294 (namespace associations vs. specializations)
PR c++/13294
        * pt.c (maybe_process_partial_specialization): Remember the
        context of a specialization.

From-SVN: r79992
2004-03-26 14:20:50 -05:00
Diego Novillo eb1a2c880a c-typeck.c (comptypes): Replace calls to TYPE_DOMAIN with TYPE_ORIG_SIZE_TYPE.
* c-typeck.c (comptypes): Replace calls to TYPE_DOMAIN
	  with TYPE_ORIG_SIZE_TYPE.

From-SVN: r79991
2004-03-26 14:02:55 -05:00
Paolo Carlini dd95381f8a mt_allocator.h (__mt_alloc<>::allocate, [...]): Protect two instances of block->thread_id with __GTHREADS.
2004-03-26  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/mt_allocator.h (__mt_alloc<>::allocate,
	__mt_alloc<>::deallocate): Protect two instances of
	block->thread_id with __GTHREADS.

From-SVN: r79986
2004-03-26 16:56:09 +00:00
Aldy Hernandez eabe2b2969 re PR c/14219 (ICE with vector comparison)
PR 14219
        * c-typeck.c (build_binary_op): Do not allow comparisons of
        vectors.

From-SVN: r79982
2004-03-26 11:45:19 +00:00
James A. Morrison f84d6264f4 20001013-1.c: Run on 32-bit and 64-bit SPARC.
* gcc.dg/20001013-1.c: Run on 32-bit and 64-bit SPARC.
	* gcc.dg/20001101-1.c: Likewise.
	* gcc.dg/20001102-1.c: Likewise.

From-SVN: r79981
2004-03-26 11:16:15 +00:00
James A. Morrison 9e1395f14c config.gcc: Remove sparc-tti-*.
* config.gcc: Remove sparc-tti-*.
	* config/sparc/pbd.h: Delete.

	* config/sparc/sol2.h: Remove note about Sun OS 4.x.
	* config/sparc/aout.h: Likewise.

	* config/sparc/sparc.h: Remove if 0'd code.
	* config/sparc/sparc.md (call): Remove if 0'd code.
	(call_value): Likewise.
	(nonlocal_goto): Likewise.
	(unimp_insn): Delete.

From-SVN: r79980
2004-03-26 11:13:48 +00:00
Roger Sayle 22e63bd346 fold-const.c (tree_expr_nonnegative_p): Handle BIT_XOR_EXPR like BIT_IOR_EXPR...
* fold-const.c (tree_expr_nonnegative_p): Handle BIT_XOR_EXPR like
	BIT_IOR_EXPR; A^B is nonnegative when A and B are nonnegative.

	* gcc.dg/compare8.c: Add an additional test for XOR.

From-SVN: r79979
2004-03-26 01:20:46 +00:00
Richard Henderson 0066ef9ce4 re PR c/11527 (If an array "designated intializer" in a struct causes a segv.)
PR 11527
        * c-typeck.c (pop_init_level): Emit pending init elements earlier
        rather than later.
	* gcc.dg/gnu89-init-3.c: New.

From-SVN: r79978
2004-03-25 16:46:53 -08:00
Benjamin Kosnik 8bd22a3ceb [multiple changes]
2004-03-25  Gawain Bolton  <gp.bolton@computer.org>

	* include/bits/stl_tree.h (_Rb_tree_impl): Add _Node_allocator
	default argument in constructors.
	(_Rb_tree::_M_empty_initialize): Remove.

2004-03-25  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/23_containers/map/operators/1_neg.cc: Adjust line numbers.
	* testsuite/23_containers/set/operators/1_neg.cc: Same.

2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>

	* include/bits/cpp_type_traits.h: Changed __is_pod
	completely. Now, it does not use any of the previous type_traits
	to detect the pod types, and it also detects function pointers as
	POD types.

	* include/bits/stl_tree.h: Introduced a new class _Rb_tree_impl,
	which encapsulates the internal implementation of an rb_tree. Made
	the allocator a base class of this class instead of the rb_tree,
	which was not conforming. This _Rb_tree_impl class is also
	specialized on whether the _Compare parameter is a POD type or
	not. If so, then it maintains the comparison function as a data
	member, otherwise it makes the _Compare parameter a base class of
	itself. Also, _M_key_compare is now a function instead of a data
	member, so that the above trick can work properly. Delegated the
	initialization of the other data members to this newly created
	class. Also, now other member functions of rb_tree must refer to
	_M_key_compare as _M_impl._M_key_compare(). The other data members
	(*) can be referenced to as _M_impl.(*), where
	(*) includes _M_header, and _M_node_count.

From-SVN: r79977
2004-03-26 00:38:57 +00:00
Kaveh Ghazi c18ab9a436 Fix typo.
From-SVN: r79976
2004-03-26 00:30:07 +00:00
Kaveh R. Ghazi 3a04838338 * builtins.c (fold_builtin): Fix error in last change.
From-SVN: r79975
2004-03-26 00:29:25 +00:00
GCC Administrator 53d98cdbc2 Daily bump.
From-SVN: r79972
2004-03-26 00:16:14 +00:00
Paolo Carlini 90ceccd46e mt_allocator.h (__mt_alloc<>::tune): Add _M_min_bin, the size in bytes of the smallest bin.
2004-03-25  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/mt_allocator.h (__mt_alloc<>::tune):
	Add _M_min_bin, the size in bytes of the smallest bin.
	(__mt_alloc<>::tune()): Tweak accordingly.
	(__mt_alloc<>::tune(size_t, ...)): Likewise.
	(__mt_alloc<>::block_record): Change to a union: members next
	and thread_id are never used at the same time.
	(__mt_alloc<>::allocate): Update consistently.
	(__mt_alloc<>::deallocate): Likewise.
	(__mt_alloc<>::_S_initialize): Update setups of _S_binmap and
	_S_bin_size for the configurable _M_min_size.

From-SVN: r79962
2004-03-25 18:23:40 +00:00
Richard Sandiford 0d63bf21fc * config/mips/mips.h: Formatting fix.
From-SVN: r79961
2004-03-25 18:13:01 +00:00
Kaveh R. Ghazi 740e5b6f17 builtins.def: Add ctype builtins.
* builtins.def: Add ctype builtins.
	* doc/extend.texi: Likewise.
testsuite:
	* gcc.dg/torture/builtin-ctype-1.c: New test.

From-SVN: r79960
2004-03-25 17:55:13 +00:00
Kaveh R. Ghazi e19f6bded7 builtins.c (fold_builtin): Add new builtin optimizations for sqrt and/or cbrt.
* builtins.c (fold_builtin): Add new builtin optimizations for
	sqrt and/or cbrt.
	* fold-const.c (fold): Likewise.

testsuite:
	* gcc.dg/torture/builtin-explog-1.c: Add new cases.
	* gcc.dg/torture/builtin-math-1.c: Likewise.
	* builtin-power-1.c: New test.

From-SVN: r79959
2004-03-25 17:51:17 +00:00
David Edelsohn ec507f2d8b rs6000.c (rs6000_always_hint): New variable.
* config/rs6000/rs6000.c (rs6000_always_hint): New variable.
	(rs6000_sched_groups): New variable.
	(processor_target_table): Add power5.
	(rs6000_override_options): Set rs6000_sched_insert_nops,
	rs6000_sched_costly_dep and rs6000_sched_restricted_insns_priority
	from rs6000_sched_groups.
	(output_cbranch): Use rs6000_always_hint.
	(rs6000_variable_issue): Use rs6000_sched_groups.
	(rs6000_adjust_cost): Add CPU_POWER5.
	(is_microcoded_insn): Use rs6000_sched_groups.
	(is_dispatch_slot_restricted): Use rs6000_sched_groups.
	Return 2 for POWER5 cracked instructions.
	(is_cracked_insn): Use rs6000_sched_groups.
	(is_branch_slot_insn): Use rs6000_sched_groups.
	(rs6000_issue_rate): Add CPU_POWER5.
	(rs6000_sched_finish): Use rs6000_sched_groups.
	(rs6000_rtx_costs): Add PROCESSOR_POWER5.
	* config/rs6000/rs6000.h (processor_type): Add PROCESSOR_POWER5.
	(DEFAULT_SCHED_COSTLY_DEP): Delete.
	(DEFAULT_RESTRICTED_INSNS_PRIORITY): Delete.
	(DEFAULT_SCHED_FINISH_NOP_INSERTION_SCHEME): Delete.
	* config/rs6000/rs6000.md (define_attr "cpu"): Add power5.
	* config/rs6000/power5.md: New file.
	* doc/invoke.texi: Add power5 option.

From-SVN: r79958
2004-03-25 12:43:24 -05:00
Dhruv Matani 03f9ea4437 stl_list.h: Created a _List_impl class and made it derive from the allocator...
2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>

	* include/bits/stl_list.h: Created a _List_impl class and made it
	derive from the allocator, instead of the list deriving from the
	allocator class, which was not conformant. Changed all references
	from this->_M_node to this->_M_impl._M_node * bits/list.tcc: Same
	as above (changed all references to the concerned variables).

2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>

	* include/bits/stl_deque.h: Created a _Deque_impl class and made
	it derive from the allocator, instead of the deque deriving from
	the allocator class, which was not conformant. Changed all
	references to the _M_start, _M_finish, _M_map, and _M_map_size to
	_M_impl.*.
	(_Deque_base<_Tp,_Alloc>::~_Deque_base()): Added this->
	qualification in 2 places where it was missing.
	(_Deque_base<_Tp,_Alloc>::_M_initialize_map(size_t)): Same as
	above.
	* include/bits/deque.tcc: Same as above (changed all references to
	the concerned variables).

2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>

	* include/bits/stl_vector.h: Created a _Vector_impl class and made
	it derive from the allocator, instead of the _Vector_base class,
	deriving from the allocator which was not conformant. Changed all
	references to the _M_start, _M_finish, and _M_end_of_storage to
	_M_impl.*.
	* include/bits/vector.tcc: Same as above (changed all references
	to the concerned variables).

2004-03-25  Dhruv Matani  <dhruvbird@gmx.net>

	* testsuite/23_containers/deque/cons/clear_allocator.cc: New.
	* testsuite/23_containers/list/cons/clear_allocator.cc: New.
	* testsuite/23_containers/vector/cons/clear_allocator.cc: New.

From-SVN: r79957
2004-03-25 17:12:16 +00:00
Kazu Hirata 666c27b9fa cfgrtl.c, [...]: Fix comment typos.
gcc/
	* cfgrtl.c, dbxout.c, tree.def, config/darwin.h,
	config/arm/arm.c, objc/objc-act.c: Fix comment typos.
	* doc/invoke.texi: Fix a typo.

cp/
	* cxx-pretty-print.c: Fix comment typos.

From-SVN: r79956
2004-03-25 17:04:45 +00:00
Kazu Hirata 43a21dfc46 re PR middle-end/9707 (Unnecessary range test in switches with less than 4 cases)
PR optimization/9707.
	* stmt.c (emit_case_nodes): Emit equality comparisons instead
	of recursing if both children are single-valued cases with no
	children.

From-SVN: r79954
2004-03-25 16:16:41 +00:00
Arnaud Charlet 6d11af89b1 [multiple changes]
2004-03-25  Vasiliy Fofanov  <fofanov@act-europe.fr>

	* memtrack.adb: Log realloc calls, which are treated as free followed
	by alloc.

2004-03-25  Vincent Celier  <celier@gnat.com>

	* prj-makr.adb (Process_Directories): Detect when a file contains
	several units. Do not include such files in the config pragmas or
	in the naming scheme.

	* prj-nmsc.adb (Record_Source): New parameter Trusted_Mode.
	Resolve links only when not in Trusted_Mode.
	(Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory):
	Do not resolve links for the display names.

	* prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not
	resolve links when computing the display names.

2004-03-25  Thomas Quinot  <quinot@act-europe.fr>

	* sem_attr.adb (Check_Dereference): When the prefix of a 'Tag
	attribute reference does not denote a subtype, it can be any
	expression that has a classwide type, potentially after an implicit
	dereference.  In particular, the prefix can be a view conversion for
	a classwide type (for which Is_Object_Reference holds), but it can
	also be a value conversion for an access-to-classwide type. In the
	latter case, there is an implicit dereference, and the original node
	for the prefix does not verify Is_Object_Reference.

	* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view
	conversion of a discriminant-dependent component of a mutable object
	is one itself.

2004-03-25  Ed Schonberg  <schonberg@gnat.com>

	* freeze.adb (Freeze_Entity): When an inherited subprogram is
	inherited, has convention C, and has unconstrained array parameters,
	place the corresponding warning on the derived type declaration rather
	than the original subprogram.

	* sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default
	indication on renaming declaration, if formal has a box and actual
	is absent.

	* sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to
	determine whether to generate an implicit or explicit reference to
	the renamed entity.

	* sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a
	subprogram renaming comes from a defaulted formal subprogram in an
	instance.

2004-03-25  Gary Dismukes  <dismukes@gnat.com>

	* sem_elab.adb (Check_Elab_Call): Refine loop that checks for default
	value expressions to ensure that calls within a component definition
	will be checked (since those are evaluated during the record type's
	elaboration).

2004-03-25  Arnaud Charlet  <charlet@act-europe.fr>

	* s-tpobop.adb: Code clean up:
	(Requeue_Call): Extract from PO_Service_Entries to remove duplicated
	code.
	(PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call.

2004-03-25  Jose Ruiz  <ruiz@act-europe.fr>

	* Makefile.in: Clean up in the ravenscar run time.

From-SVN: r79953
2004-03-25 16:59:29 +01:00