Commit Graph

57638 Commits

Author SHA1 Message Date
Paolo Carlini
ab40b100d3 mt_allocator.h (__mt_alloc<>::deallocate): Rearrange arithmetic to avoid computing two divisions at each deallocation.
2004-04-02  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/mt_allocator.h (__mt_alloc<>::deallocate):
	Rearrange arithmetic to avoid computing two divisions at
	each deallocation.

From-SVN: r80356
2004-04-02 19:51:21 +00:00
Vladimir Makarov
89c43c0a0b i386.h (TARGET_NOCONA): New macro.
2004-04-02  Vladimir Makarov  <vmakarov@redhat.com>

	* config/i386/i386.h (TARGET_NOCONA): New macro.
	(TARGET_CPU_CPP_BUILTINS): Add code for Nocona.
	(processor_type): Add PROCESSOR_NOCONA.

	* config/i386/i386.md (cpu): Add nocona to the attribute values.

	* config/i386/i386.c (nocona_cost): New variable.
	(m_NOCONA): New macro.
	(x86_push_memory, x86_movx, x86_cmove, x86_deep_branch,
	x86_branch_hints, x86_use_sahf, x86_single_stringop,
	x86_sub_esp_4, x86_sub_esp_8, x86_add_esp_4, x86_add_esp_8,
	x86_integer_DFmode_moves, x86_partial_reg_dependency,
	x86_memory_mismatch_stall, x86_accumulate_outgoing_args,
	x86_decompose_lea, x86_arch_always_fancy_math_387,
	x86_sse_partial_reg_dependency, x86_sse_load0_by_pxor,
	x86_ext_80387_constants, x86_four_jump_limit):
	(override_options): Add nocona_cost to processor_target_table.
	Set up PROCESSOR_NOCONA for Nocona entry in processor_alias_table.
	(incdec_operand): Prevent inc/dec generation for Nocona too.
	(ix86_issue_rate): Add PROCESSOR_NOCONA.

From-SVN: r80353
2004-04-02 15:05:55 +00:00
Nathan Sidwell
2e9ceb77be re PR c++/14007 (Incorrect use of const partial specialization for reference template argument)
cp:
	PR c++/14007
	* pt.c (check_cv_quals_for_unify): Correct logic for disallowed
	cv-qualifier unification.
	* tree.c (cp_build_qualified_type_real): Renable DR295 logic.
testsuite:
	PR c++/14007
	* g++.dg/template/unify5.C: New.
	* g++.dg/template/unify6.C: New.
	* g++.dg/template/qualttp20.C: Adjust.
	* g++.old-deja/g++.jason/report.C: Adjust.
	* g++.old-deja/g++.other/qual1.C: Adjust.

From-SVN: r80351
2004-04-02 11:48:56 +00:00
Arnaud Charlet
efe4ba3d35 Complete previous change.
Update copyright notice.

From-SVN: r80350
2004-04-02 11:18:44 +02:00
Arnaud Charlet
6da7d5795d gnat-style.texi, [...]: Remove RCS tags.
* gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags.
	Replace ifinfo by ifnottex, to make makeinfo --html happy again.
	Add info directory entry and category.

From-SVN: r80349
2004-04-02 10:52:49 +02:00
Andrew Pinski
cd798543d8 rtlanal.c (find_reg_note): Manually unswitch the loop.
2004-04-01  Andrew Pinski  <pinskia@physics.uc.edu>

        * rtlanal.c (find_reg_note): Manually
        unswitch the loop.

From-SVN: r80347
2004-04-01 17:19:41 -08:00
Kelley Cook
b52d4110bf gcc_update (files_and_dependencies): Remove gcc/ada/*.texi.
2004-04-01  Kelley Cook  <kcook@gcc.gnu.org>

	* gcc_update (files_and_dependencies): Remove gcc/ada/*.texi.

From-SVN: r80345
2004-04-02 00:47:19 +00:00
GCC Administrator
9b754eac89 Daily bump.
From-SVN: r80342
2004-04-02 00:17:18 +00:00
Mark Mitchell
a406f5669b re PR target/14040 (ARM cross compiler: error: could not split insn)
PR target/14040
	* genemit.c (gen_split): Change prototype of generated code.
	* genrecog.c (write_action): Adjust prototype for and calls to
	gen_split_*.
	* gensupport.c (struct queue_elem): Add split field.
	(queue_pattern): Return a value.  Clear the split field.
	(process_rtx): Maintain an association between an insn and the
	split generated from it for a define_insn_and_split.
	(process_one_cond_exec): Generate a new split for a
	define_insn_and_split.
	* config/arm/arm-protos.h (arm_split_constant): Add insn
	parameter.
	(emit_constant_insn): New function.
	(arm_gen_constant): Use it.
	* config/arm/arm.md: Adjust calls to arm_split_constant.

From-SVN: r80335
2004-04-01 23:30:25 +00:00
Jan Hubicka
18c6ada9b2 cgraph.c: Add overall comment.
* cgraph.c: Add overall comment.
	(cgraph_inline_hash): New global variable.
	(cgraph_create_node): Break out from ...
	(cgraph_node): ... here.
	(cgraph_edge): New function.
	(cgraph_create_edge): New CALL_EXPR argument; some sanity checking.
	(cgraph_remove_edge): Accept edge, intead of source and destination.
	(cgraph_redirect_edge_callee): New.
	(cgraph_remove_node): Update all new datastructures.
	(cgraph_record_call, cgraph_remove_call): Kill.
	(dump_cgraph_node): Break out from ... ; dump new datastructures.
	(dump_cgraph): ... here.
	(cgraph_function_possibly_inlined_p): Use new hashtable.
	(cgraph_clone_edge, cgraph_clone_node): New.
	* cgraph.h: Include hashtab.h
	(struct cgraph_global_info): Kill cloned_times, inline_once, will_be_output
	fields, add inlined_to pointer.
	(cgraph_node): Add pointer to next_clone.
	(cgraph_remove_edge, cgraph_create_edge): Update prototype.
	(cgraph_remove_call, cgraph_record_call): Kill.
	(cgraph_inline_hash): Declare.
	(dump_cgraph_node, cgraph_edge, cg4raph_clone_edge, cgraph_clone_node,
	cgraph_redirect_edge_callee): Declare.
	(cgraph_create_edges, cgraph_inline_p): Update prorotype.
	(cgraph_preserve_function_body_p, verify_cgraph, verify_cgraph_node,
	cgraph_mark_inline_edge, cgraph_clone_inlined_nodes): Declare.
	* cgraphunit.c: Add overall comment.
	(cgraph_optimize_function): Kill.
	(cgraph_assemble_pending_functions): Do not assemble inline clones.
	(cgraph_finalize_function): Update call of cgraph_remove_node
	(record_call_1): Record call sites.
	(cgraph_create_edges): Accept node instead of decl argument.
	(error_found): New static variable.
	(verify_cgraph_node_1, verify_cgraph_node, verify_cgraph): New functions.
	(cgraph_analyze_function): Update for new datastructures.
	(cgraph_finalize_compilation_unit): Plug memory leak.
	(cgraph_optimize_function): Kill.
	(cgraph_expand_function): Do not use cgraph_optimize_function.
	(INLINED_TIMES, SET_INLINED_TIMES, cgraph_inlined_into,
	cgraph_inlined_callees): Kill.
	(cgraph_remove_unreachable_nodes): Verify cgraph; update handling of
	clones.
	(estimate_growth): Simplify.
	(cgraph_clone_inlined_nodes): New function.
	(cgraph_mark_inline_edge): Re-implement.
	(cgraph_mark_inline): Likewise.
	(cgraph_check_inline_limits): Simplify.
	(cgraph_recursive_inlining_p): New.
	(update_callee_keys): Break out from ...
	(cgraph_decide_inlining_of_small_functions): ... here; simplify.
	(cgraph_decide_inlining, cgraph_decide_inlining_incrementally):
	Likewise.
	(cgraph_expand_all_functions):  Remove inline clones from the ordered
	list.
	(cgraph_preserve_function_body_p): New predicate.
	(cgraph_optimize): Verify cgraph.
	* function.h (struct function): Add fields saved_tree/saved_args.
	* timevar.def (TV_CGRAPH_VERIFY): Use verifier.
	* toplev.c (rest_of_compilation): Do not free cfun.
	* tree-inline.c: Include function.h
	(struct inline_data): Add saving_p field; replace decl/current_decl by
	node/current_node.
	(insert_decl_map): New function.
	(copy_body_r): Handle saving; update cgraph datastructure.
	(copy_body): Handle recursive inlining.
	(initialize_inlined_parameters): Likewise.
	(expand_call_inline): Propagate node attributes; update cgraph.
	(optimize_inline_calls): Verify that datastructure still match.
	(save_body): New function.
	* tree-inline.h (save_body): New.
	* tree-optimize.c (tree_rest_of_compilation): preserve function body; do inlining.
	* langhooks-def.c (LANG_HOOKS_UPDATE_DECL_AFTER_SAVING): New.
	* langhooks.c (lang_hooks): Add update_decl_after_saving.

	* cp-lang. (LANG_HOOKS_UPDATE_DECL_AFTER_SAVING): Define.
	* cp-tree.h (cp_update_decl_after_saving): Declare.
	* tree.c (cp_update_decl_after_saving): Define.

	* Make-lang.in (com.o): Add dependnecy on function.h
	* com.c: Include function.h
	(finish_function): Clear DECL_STRUCT_FUNCTION.

	* utils.c: Include function.h
	(end_subprog_body): Clear DECL_STRUCT_FUNCTION.

From-SVN: r80334
2004-04-01 23:28:15 +00:00
Mark Mitchell
e86327772e re PR c++/14803 (Spurious warnings on conversion of pointers to member functions)
PR c++/14803
	* typeck.c (get_delta_difference): Call fold before returning the
	value.

	PR c++/14803
	* g++.dg/inherit/ptrmem1.C: New test.

From-SVN: r80331
2004-04-01 23:14:55 +00:00
Serge Belyshev
717415adaf re PR target/14702 (wrong definitions of instructions mmx_pshufw, sse2_pshufd, sse2_pshuflw, sse2_pshufhw)
PR target/14702
        * config/i386/i386.md: fix source operand constraints in
        mmx_pshufw, sse2_pshufd, sse2_pshuflw, sse2_pshufhw

From-SVN: r80330
2004-04-01 14:45:25 -08:00
Waldek Hebisch
af5bdf6ad7 * fold-const.c (folda): Preserve types of comparisons.
From-SVN: r80327
2004-04-01 14:30:09 -08:00
Paolo Carlini
354d4c68c6 mt_allocator.h (__mt_alloc<>::_S_initialize): Streamline the second half...
2004-04-01  Paolo Carlini  <pcarlini@suse.de>

	* include/ext/mt_allocator.h (__mt_alloc<>::_S_initialize):
	Streamline the second half, wrapping it in a single
	'#ifdef __GTHREADS if (__gthread_active_p())' and avoiding
	conditionals inside loops.

From-SVN: r80323
2004-04-01 21:47:59 +00:00
Richard Henderson
6407bc6703 re PR c++/14804 ([unit-at-a-time] initializing const data with reinterpret_cast-ed pointer-to-member function crashes)
PR c++/14804
        * decl.c (cp_finish_decl): Preserve TREE_READONLY more often.
        * typeck2.c (split_nonconstant_init): Clear TREE_READONLY.

From-SVN: r80318
2004-04-01 12:45:02 -08:00
Richard Henderson
54fdc910cf toplev.c (backend_init): Move init_optimization_passes call ...
* toplev.c (backend_init): Move init_optimization_passes call ...
        (lang_dependent_init): ... here.

From-SVN: r80317
2004-04-01 12:23:34 -08:00
Mark Mitchell
bb8b4ed64b re PR c++/14810 (tree check failures with invalid code involving templates)
PR c++/14810
	* name-lookup.c (maybe_push_cleanup_level): Robustify.

From-SVN: r80315
2004-04-01 20:02:07 +00:00
Michael Koch
2b6b5c35ce 2004-04-01 Michael Koch <konqueror@gmx.de>
* java/lang/SecurityManager.java
	(checkAwtEventQueueAccess): Implemented.

From-SVN: r80314
2004-04-01 19:15:05 +00:00
Arnaud Charlet
7cd4527e38 re PR ada/14150 (Ada documentation out of date)
PR ada/14150
	* Make-lang.in: Clean up generation of documentation

	* gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version

	* xgnatug.adb: Removed, replaced by xgnatugn.adb

	* xgnatugn.adb: Replaces xgnatug.adb

	* gnat_ug.texi: Removed, replaced by gnat_ugn.texi

	* gnat_ugn.texi: Replaces gnat_ug.texi. Resync with AdaCore version

	* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
	gnat_ug_wnt.texi: Removed.

From-SVN: r80308
2004-04-01 19:25:04 +02:00
Gary Benson
1c19eaccf2 resolve.cc (_Jv_ResolvePoolEntry): Put field name in exception.
2004-04-01  Gary Benson  <gbenson@redhat.com>

	* resolve.cc (_Jv_ResolvePoolEntry): Put field name in exception.
	(_Jv_SearchMethodInClass): Likewise.

From-SVN: r80305
2004-04-01 17:07:03 +00:00
Alan Modra
765f1bf9e4 gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with -lgcc --as-needed -lgcc_s --no-as-needed by default.
* gcc.c (init_gcc_specs): If HAVE_LD_AS_NEEDED, link with
	-lgcc --as-needed -lgcc_s --no-as-needed by default.
	* configure.ac (HAVE_LD_AS_NEEDED): Check for ld --as-needed.
	* configure: Rebuilt.
	* config.in: Rebuilt.
	* Makefile.in (stage1-start): Copy also libgcc_s*$(SHLIB_EXT).
	(stage2-start, stage3-start, stage4-start): Likewise.
	(stageprofile-start, stagefeedback-start): Likewise.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r80302
2004-04-01 18:45:34 +02:00
Jakub Jelinek
45dcc026e5 sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
* config/sparc/sparc.h (DITF_CONVERSION_LIBFUNCS): Define to 0.
	* config/sparc/linux.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
	* config/sparc/linux64.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
	* config/sparc/sol2.h (DITF_CONVERSION_LIBFUNCS): Redefine to 1.
	(SOLARIS_CONVERSION_LIBFUNCS): Rename to SUN_CONVERSION_LIBFUNCS.
	* config/sparc/sparc.c (sparc_init_libfuncs): Initialize optabs
	with _Q_qtoll, _Q_qtoull and _Q_lltoq if DITF_CONVERSION_LIBFUNCS.
	* config.gcc (sparc-*-linux*): Revert 2004-03-23 change.
	* config/sparc/t-linux64 (TARGET_LIBGCC2_CFLAGS): Likewise.
	* config/sparc/t-linux: Removed.

From-SVN: r80295
2004-04-01 18:05:22 +02:00
Jakub Jelinek
0b61218593 re PR c++/14755 (miscompilation in bitfielded signed integers)
PR c++/14755
	* fold-const.c (fold) <EQ_EXPR>: Properly compute newconst in
	"bitfld++ == const" to "++bitfld == const + incr" transformations.

	* gcc.c-torture/execute/20040331-1.c: New test.
	* gcc.dg/20040331-1.c: New test.

From-SVN: r80294
2004-04-01 17:50:11 +02:00
Richard Kenner
a150de2951 expr.c (get_inner_reference): Use DECL_UNSIGNED, not TREE_UNSIGNED.
* expr.c (get_inner_reference): Use DECL_UNSIGNED, not TREE_UNSIGNED.
	* stor-layout.c (layout_decl): Likewise.
	* tree.c (get_narrower): Likewise and also use BIT_FIELD_REF_UNSIGNED.
	* fold-const.c (make_bit_field_ref): Use BIT_FIELD_REF_UNSIGNED.
	* print-tree.c (print_node): Handle various used of unsigned_flag.
	* tree.def (BIT_FIELD_REF): Update comment.
	* tree.h (TREE_UNSIGNED): Deleted.
	(DECL_UNSIGNED, BIT_FIELD_REF_UNSIGNED): New macros.

	* cp/class.c (VTT_TOP_LEVEL_P): Use unsigned_flag directly.

	* f/com.c (ffe_truthvalue_conversion, case COMPONENT_REF):
	Use DECL_UNSIGNED and integer_onep.

From-SVN: r80293
2004-04-01 08:41:37 -05:00
Arnaud Charlet
0c250f07da * utils2.c: Update copyright notice.
From-SVN: r80291
2004-04-01 12:11:27 +02:00
Arnaud Charlet
6b6fcd3ead [multiple changes]
2004-04-01  Robert Dewar  <dewar@gnat.com>

	* checks.adb: Minor reformatting throughout
	Note that prev checkin added RM reference to alignment warning

2004-04-01  Ed Schonberg  <schonberg@gnat.com>

	* exp_aggr.adb (Get_Component_Val): Treat a string literal as
	non-static when building aggregate for bit-packed array.

	* exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a
	function call that is itself the actual in a procedure call, build
	temporary for it.

	* exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
	a string literal, create a temporary for it, constant folding only
	handles scalars here.

2004-04-01  Vincent Celier  <celier@gnat.com>

	* ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
	Error_Msg_SP): New empty procedures to instantiate the Scanner.
	(Style, Scanner): Instantiations of Styleg and Scng to be able to scan
	tokens.
	(Accumulate_Checksum, Initialize_Checksum): Remove procedures.
	(Get_File_Checksum): Use the instantiated scanner to scan all the tokens
	and get the checksum.

	* make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
	already in the Q.
	Increase the Marking_Label at the end of the Multiple_Main_Loop,
	instead of at the beginning.

	* osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
	directly.
	(Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
	on VMS.

	* osint.ads (Multi_Unit_Index_Character): New Character global variable

	* osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
	not '~' directly.

	* par.adb: Remove test on file name to detect language defined units.
	Add test on unit name, after parsing, to detect language defined units
	that are not compiled with -gnatg (except System.RPC and its children)

	* par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
	following units without style checking.

	* switch-c.adb: Change -gnatC to -gnateI

	* usage.adb: Document new switch -gnateInnn

	* scng.adb (Accumulate_Token_Checksum): New procedure
	(Scan): Call Accumulate_Token_Checksum after each identifier, reserved
	word or literal number.
	(Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
	numbers.

2004-04-01  Thomas Quinot  <quinot@act-europe.fr>

	* a-tasatt.adb,
	g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
	switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
	5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
	5vtpopde.adb: Add missing 'constant' keywords.

2004-04-01  Javier Miranda  <miranda@gnat.com>

	* par-ch4.adb: (P_Allocator): Code cleanup

	* sem_ch3.adb (Access_Definition): Properly set the null-excluding
	attribute.

	* sinfo.ads: Complete documentation of previous change

2004-04-01  GNAT Script  <nobody@gnat.com>

	* Make-lang.in: Makefile automatically updated

2004-04-01  Pascal Obry  <obry@gnat.com>

	* gnatlink.adb (Process_Binder_File): Remove duplicate linker options
	only on VMS.  This special handling was done because an old GNU/ld bug
	on Windows which has been fixed.

From-SVN: r80290
2004-04-01 12:04:40 +02:00
Paolo Carlini
2ae6e9823a re PR libstdc++/14775 ([3.4 only] LFS tests missing)
2004-04-01  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/14775
	* acconfig.h: Rename _GLIBCXX_MEM_LIMITS to _GLIBCXX_RES_LIMITS.
	* acinclude.m4 (GLIBCXX_CHECK_SETRLIMIT): Call
	GLIBCXX_CHECK_SETRLIMIT_ancilliary for FSIZE too, adjust define
	to _GLIBCXX_RES_LIMITS.
	(GLIBCXX_CHECK_SETRLIMIT_ancilliary): Rename HAVE_MEMLIMIT_* to
	HAVE_LIMIT_*.
	* testsuite/testsuite_hooks.h: Declare set_file_limit.
	* testsuite/testsuite_hooks.cc: Define it, using getrlimit
	and setrlimit(RLIMIT_FSIZE).
	* testsuite/27_io/fpos/14775.cc: New.
	* config.h.in: Regenerate.
	* configure: Likewise.

From-SVN: r80289
2004-04-01 09:16:36 +00:00
Richard Kenner
8df83eae1e builtins.c, [...]: Change most occurrences of TREE_UNSIGNED to TYPE_UNSIGNED.
* builtins.c, c-aux-info.c, c-common.c, c-cppbuiltin.c, c-decl.c:
	Change most occurrences of TREE_UNSIGNED to TYPE_UNSIGNED.
	* c-format.c, c-opts.c, c-pretty-print.c, c-typeck.c: Likewise.
	* calls.c, convert.c, dbxout.c, dojump.c, dwarf2out.c: Likewise.
	* expmed.c, expr.c, fold-const.c, function.c, integrate.c: Likewise.
	* optabs.c, sdbout.c, stmt.c, stor-layout.c, tree-dump.c: Likewise.
	* tree.c, config/iq2000/iq2000.c, config/m32r/m32r.c: Likewise.
	* config/mips/mips.c, config/rs6000/rs6000.c: Likewise.
	* config/s390/s390.c, config/sparc/sparc.c, objc/objc-act.c: Likewise.
	* stor-layout.c (layout_type, case COMPLEX_TYPE): Test for
	REAL_TYPE, not INTEGER_TYPE.
	(layout_type, case VECTOR_TYPE): Simplify code.
	* tree.c (build_vector_type_for_mode): Remove dup unsigned setting.
	* tree.h: Update comments.
	(STRIP_NOPS): Use TYPE_UNSIGNED.
	(TYPE_UNSIGNED): New macro.
	(TYPE_TRAP_SIGNED): Remove now redundant check.
	(SAVE_EXPR_NOPLACEHOLDER): Don't use TREE_UNSIGNED.

	* cp/call.c (joust): Use TYPE_UNSIGNED, not TREE_UNSIGNED.
	* cp/class.c (check_bitfield_decl): Likewise.
	* cp/cvt.c (type_promotes_to): Likewise.
	* cp/decl.c (finish_enum): Likewise.
	* cp/mangle.c (write_builtin_type): Likewise.
	* cp/semantics.c (finish_switch_cond, finish_unary_op_expr): Likewise.
	* cp/typeck.c (type_after_usual_arithmetic_conversions): Likewise.
	(build_binary_op): Likewise.

	* f/com.c (ffecom_arrayref_): Use TYPE_UNSIGNED, not TREE_UNSIGNED.
	(ffecom_expr_): Likewise.

	* java/jcf-write.c (generate_bytecode_insns): Use TYPE_UNSIGNED.

	* treelang/treetree.c (tree_lang_signed_or_unsigned_type):
	Use TYPE_UNSIGNED, not TREE_UNSIGNED.

	* ada/decl.c (gnat_to_gnu_entity, make_type_from_size):
	Use TYPE_UNSIGNED, not TREE_UNSIGNED.
	* ada/trans.c (tree_transform, convert_with_check): Likewise.
	* ada/utils.c (gnat_signed_or_unsigned_type): Likewise.
	(build_vms_descriptor, unchecked_convert): Likewise.
	* ada/utils2.c (nonbinary_modular_operation): Likewise.

From-SVN: r80287
2004-03-31 22:50:43 -05:00
Richard Henderson
d9175b871c hashtab.c (htab_size): Move to top of file; mark inline.
* hashtab.c (htab_size): Move to top of file; mark inline.
        (htab_elements): Likewise.
        (htab_mod, htab_mod_m2): New.
        (htab_delete): Refactor htab->size and htab->entries.
        (htab_empty): Likewise.
        (find_empty_slot_for_expand): Use htab_size, htab_mod, htab_mod_m2.
        (htab_find_with_hash, htab_find_slot_with_hash): Likewise.
        (htab_clear_slot): Use htab_size, htab_elements.
        (htab_traverse_noresize, htab_traverse): Likewise.

From-SVN: r80278
2004-03-31 17:40:43 -08:00
Paul Brook
2cbf9f609b * gcc.dg/arm-mmx-1.c: Add -mabi=iwmmxt to dg-options.
From-SVN: r80265
2004-04-01 00:56:55 +00:00
GCC Administrator
10414f2acd Daily bump.
From-SVN: r80262
2004-04-01 00:16:15 +00:00
Richard Kenner
8465edcc9f * function.c (put_var_into_stack): Properly set orig_reg for indirect.
From-SVN: r80254
2004-03-31 13:13:50 -05:00
Andrew Pinski
efdc5d916b t-darwin (LIB2FUNCS_STATIC_EXTRA): Add darwin-fpsave.asm, darwin-vecsave.asm, and darwin-world.asm.
2004-03-21  Andrew Pinski  <pinskia@physics.uc.edu>

        * config/rs6000/t-darwin (LIB2FUNCS_STATIC_EXTRA):
        Add darwin-fpsave.asm, darwin-vecsave.asm,
        and darwin-world.asm.
        (TARGET_LIBGCC2_CFLAGS): Add -Wa,-force_cpusubtype_ALL
        as the asm files contain altivec instructions.
        * config/rs6000/darwin-fpsave.asm: New file.
        * config/rs6000/darwin-vecsave.asm: New file.
        * config/rs6000/darwin-world.asm: New file.

From-SVN: r80251
2004-03-31 08:06:56 -08:00
Zack Weinberg
5fece1829e gengtype-yacc.y (option, stringseq): Add missing terminating semicolon.
* gengtype-yacc.y (option, stringseq): Add missing
	terminating semicolon.

From-SVN: r80250
2004-03-31 14:45:58 +00:00
Andrew Haley
31023ac57f re PR java/14104 (java testsuite fails "linking simple")
2004-03-31  Andrew Haley  <aph@redhat.com>

        PR java/14104
        * jcf-io.c (opendir_in_zip): Tidy up error handling.

From-SVN: r80248
2004-03-31 13:36:06 +00:00
Paolo Carlini
e004c3313e c_locale.cc (__convert_to_v(long double&)): In v3 uses of sscanf...
2004-03-31  Paolo Carlini  <pcarlini@suse.de>

	* config/locale/generic/c_locale.cc (__convert_to_v(long double&)):
	In v3 uses of sscanf, the special floating-point numbers INF,
	INFINITY, etc., cannot occur in input, therefore, if the latter
	is too large, ERANGE is always stored in errno, no need of finitel.

From-SVN: r80247
2004-03-31 09:13:10 +00:00
Jan Hubicka
0ba13880d1 tree.h (optimize_function): Kill prototype.
* tree.h (optimize_function): Kill prototype.
	* optimize.c (dump_function, optimize_function, dump_finction): Kill.
	* semantics.c (expand_body): Kill.

From-SVN: r80246
2004-03-31 08:41:26 +00:00
David Edelsohn
b150f4f320 [multiple changes]
2004-03-30  David Edelsohn  <edelsohn@gnu.org>

        * config/rs6000/rs6000.md (tls_gd_32, tls_gd_64,
        tls_ld_32, tls_ld_64, tls_dtprel_32, tls_dtprel_64,
        tls_dtprel_ha_32, tls_dtprel_ha_64,
        tls_dtprel_lo_32, tls_dtprel_lo_64,
        tls_got_dtprel_64, tls_tprel_32, tls_tprel_64,
        tls_tprel_ha_32, tls_tprel_ha_64,
        tls_tprel_lo_32, tls_tprel_lo_64,
        tls_got_tprel_32, tls_got_tprel_64,
        tls_tls_32, tls_tls_64): Replace register_operand with
        gpc_reg_operand.

2004-03-30  Mostafa Hagog  <mustafa@il.ibm.com>

        * config/rs6000/rs6000.md (*ctrsi_internal1, *ctrsi_internal2,
        *ctrdi_internal1, *ctrdi_internal2, *ctrsi_internal3,
        *ctrsi_internal4, *ctrdi_internal3, *ctrdi_internal4,
        *ctrsi_internal5, *ctrsi_internal6, *ctrdi_internal5,
        *ctrdi_internal6): Replace register_operand with
        nonimmediate_operand.

From-SVN: r80114
2004-03-30 23:29:13 -05:00
GCC Administrator
8cfa1c3e37 Daily bump.
From-SVN: r80104
2004-03-31 00:16:11 +00:00
Mark Mitchell
c6671cbbbc re PR c++/14724 (Destructor not called on backwards goto past initialization)
PR c++/14724
	* decl.c (start_decl_1): Do not decide whether or not to create a
	new cleanup level until after the type has been completed.

	PR c++/14763
	* pt.c (tsubst_default_argument): Clear current_function_decl.

	PR c++/14724
	* g++.dg/init/goto1.C: New test.

	PR c++/14763
	* g++.dg/template/defarg4.C: New test.

From-SVN: r80101
2004-03-30 23:45:00 +00:00
Benjamin Kosnik
06ce772609 re PR libstdc++/14783 (Warning in std::set constructor at bits/stl_tree.h:403)
2004-03-30  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/14783
	* include/bits/stl_tree.h: Adjust initialization list order.

From-SVN: r80095
2004-03-30 21:04:19 +00:00
Fariborz Jahanian
0af5da7fb0 Reassociate multiply expression with an adjacent non-multiply expression.
Reviewed by Roger Sayle.

From-SVN: r80093
2004-03-30 20:00:23 +00:00
Zack Weinberg
cfdfa11075 * hashtab.h, splay-tree.h: Use new shorter form of GTY markers.
From-SVN: r80092
2004-03-30 19:23:16 +00:00
Zack Weinberg
1431042ef1 gengtype.c (create_option): New function.
* gengtype.c (create_option): New function.
	* gengtype.h: Prototype it.
	* gengtype-yacc.y (stringseq): New rule.
	(option): Use create_option.  Add new bare ID production.  Use
	stringseq, not STRING directly.

	* alias.c, bitmap.c, c-decl.c, cgraph.h, cpplib.h, cselib.h
	* dwarf2out.c, emit-rtl.c, function.h, lists.c, tree.h
	* varray.h, config/alpha/alpha.c, cp/name-lookup.c, cp/parser.c
	* f/com.c, java/builtins.c, java/expr.c, java/jcf.h, java/parse.h:
	Use new shorter form of GTY markers.

	* doc/gty.texi: Rewrite.

From-SVN: r80091
2004-03-30 19:19:06 +00:00
Andrew Pinski
9ffab06b25 darwin.c (machopic_function_base_name): Remove current_name and getting the name of the current function.
* config/darwin.c (machopic_function_base_name):
	Remove current_name and getting the name of the
	current function.

From-SVN: r80085
2004-03-30 05:37:04 -08:00
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