Commit Graph

74603 Commits

Author SHA1 Message Date
GCC Administrator bca724e65d Daily bump.
From-SVN: r113064
2006-04-19 00:17:17 +00:00
Alan Modra 0f35201e17 re PR rtl-optimization/26026 (power of 2 mod missing optimisation)
PR rtl-optimization/26026
	* fold-const.c (fold_binary): Optimize div and mod where the divisor
	is a known power of two shifted left a variable amount.

From-SVN: r113060
2006-04-19 09:15:47 +09:30
Geoffrey Keating 76f7a74ff6 dwarf2out.c (prune_unused_types_update_strings): Don't add strings to hash table twice when the debug_str section has SECTION_MERGE.
* dwarf2out.c (prune_unused_types_update_strings): Don't add strings
	to hash table twice when the debug_str section has SECTION_MERGE.

From-SVN: r113057
2006-04-18 21:52:49 +00:00
Joseph Myers 49721058b7 soft-fp: New directory.
* config/soft-fp: New directory.  From glibc.
	* config/soft-fp/t-softfp: New.
	* config/soft-fp/README: New.
	* mklibgcc.in: Handle LIB2FUNCS_EXCLUDE.
	* Makefile.in (LIB2FUNCS_EXCLUDE, SFP_MACHINE): New.
	(libgcc.mk): Pass LIB2FUNCS_EXCLUDE.
	(LIBGCC_DEPS): Add $(SFP_MACHINE).
	* config.gcc: Use rs6000/t-fprules-fpbit or
	rs6000/t-fprules-softfp and soft-fp/t-softfp together with
	rs6000/t-fprules.
	* config/rs6000/sfp-machine.h: New.  Based on glibc.
	* config/rs6000/t-fprules-fpbit, config/rs6000/t-fprules-softfp:
	New.
	* config/rs6000/t-fprules: Remove fp-bit rules.
	* config/rs6000/t-ppccomm (LIB2FUNCS_EXTRA): Use +=.
	* config/rs6000/t-linux64: Likewise.  Remove duplicates from
	LIB2FUNCS_EXTRA.  Remove fp-bit rules.
	(softfp_wrap_start, softfp_wrap_end): New.

From-SVN: r113056
2006-04-18 21:50:45 +01:00
DJ Delorie 7e96ee3606 * config/m32c/m32c.h (PTRDIFF_TYPE): Define.
From-SVN: r113054
2006-04-18 14:58:17 -04:00
Bernhard Fischer 9b3e4c45ad parse.c (next_free): Use consistent error string between free-form and fixed-form for illegal...
fortran/

	* parse.c (next_free): Use consistent error string between
	free-form and fixed-form for illegal statement label of zero.
	(next_fixed): Use consistent warning string between free-form
	and fixed-form for statement labels for empty statements.

testsuite/

	* gfortran.dg/label_1.f90: Adjust dg-error.

From-SVN: r113053
2006-04-18 19:58:41 +02:00
Devang Patel d955420ef2 * doc/invoke.texi (-Wuninitialized): Clarify -O connection.
From-SVN: r113048
2006-04-18 09:06:32 -07:00
Steve Ellcey 7ae9933719 * trans-io.c (gfc_build_io_library_fndecls): Align pad.
From-SVN: r113047
2006-04-18 16:05:42 +00:00
Nick Clifton 503b5c9f9e t-symbian: Add rule to build sh-c.o
* config/sh/t-symbian: Add rule to build sh-c.o
* config/sh/symbian.c (sh_symbian_mark_dllexport): Replace use
  of DECL_NON_ADDR_CONST_P with DECL_DLLIMPORT_P.
  (sh_symbian_encode_section_info): Likewise.

From-SVN: r113042
2006-04-18 14:48:36 +00:00
Andreas Krebbel c2f07c00b8 builtins.c (expand_builtin_strcmp): Cover label definition of do_libcall with HAVE_cmpstrnsi.
2006-04-18  Andreas Krebbel  <krebbel1@de.ibm.com>

	* builtins.c (expand_builtin_strcmp): Cover label definition of 
	do_libcall with HAVE_cmpstrnsi.

From-SVN: r113039
2006-04-18 13:56:51 +00:00
Paolo Carlini 065fc47037 index.html ([5.5]): Adjust to mention function objects and reference_wrapper; minor tweaks.
2006-04-18  Paolo Carlini  <pcarlini@suse.de>

	* docs/html/faq/index.html ([5.5]): Adjust to mention function
	objects and reference_wrapper; minor tweaks.
	* docs/html/faq/index.txt: Regenerate.

From-SVN: r113031
2006-04-18 12:34:41 +00:00
Kazu Hirata 6370682af4 function.c (temp_slots_at_level, [...]): Use VEC instead of VARRAY.
* function.c (temp_slots_at_level, max_slot_level): Use VEC
	instead of VARRAY.
	* function.h (temp_slot_p): New.
	(function): Change the type of x_used_temp_slots to
	VEC(temp_slot_p,gc) *.

From-SVN: r113029
2006-04-18 12:32:11 +00:00
Nick Clifton 13a41b42ed * config/mmix/mmix.h (OPTIMIZATION_OPTIONS): Remove reference to flag_strength_reduce.
From-SVN: r113028
2006-04-18 10:15:41 +00:00
Nick Clifton 224504d28e * doc/tm.texi (TARGET_SECTION_TYPE_FLAGS): Fix typo.
From-SVN: r113027
2006-04-18 10:11:30 +00:00
Paolo Bonzini 6ee2e1587a re PR target/27117 (SH backend cheats to reload -- disables indexed addressing but uses it internally)
2006-04-18  Paolo Bonzini  <bonzini@gnu.org>

        PR target/27117

	Partial revert of revision 112637
	2006-04-03  Paolo Bonzini  <bonzini@gnu.org>
		    Dale Johannesen  <dalej@apple.com>

	PR target/19653
	* regclass.c (struct reg_pref): Update documentation.
	(regclass): Set prefclass to NO_REGS if memory is the best option.
	(record_reg_classes): Cope with a prefclass set to NO_REGS.

From-SVN: r113026
2006-04-18 08:23:39 +00:00
Paolo Bonzini e3949961fb re PR tree-optimization/26821 (ice in varasm.c with certain flags)
2006-04-18  Paolo Bonzini  <bonzini@gnu.org>

        PR tree-optimization/26821
        * tree-ssa-math-opts.c (get_constant_one): New.
        (insert_reciprocals): Use it.

From-SVN: r113025
2006-04-18 08:08:47 +00:00
GCC Administrator 231816e717 Daily bump.
From-SVN: r113022
2006-04-18 00:17:34 +00:00
Tom Tromey dff81d4f4c re PR libgcj/27171 (UTF8 PrintWriter goes haywire)
PR libgcj/27171:
	* testsuite/libjava.lang/pr27171.java: New file.
	* testsuite/libjava.lang/pr27171.out: New file.
	* gnu/gcj/convert/Output_UTF8.java (havePendingBytes): Return
	true if we've seen a high surrogate.
	(write): Handle high surrogates at the end of the stream.
	Properly emit isolated low surrogates.

From-SVN: r113013
2006-04-17 21:41:47 +00:00
Geoffrey Keating e26303c2f7 dwarf2out.c (free_AT): Delete.
* dwarf2out.c (free_AT): Delete.
	(remove_AT): Update string ref counts.
	(remove_child_TAG): Don't call free_die.
	(free_die): Delete.
	(break_out_includes): Don't call free_die on DW_TAG_GNU_BINCL
	or DW_TAG_GNU_EINCL.
	(prune_unused_types_walk_attribs): Reset string refcounts.
	(prune_unused_types_update_strings): New.
	(prune_unused_types_prune): Don't make unnecessary stores.  Don't
	call free_die.  Do call prune_unused_types_update_strings.
	(prune_unused_types): Empty debug_str_hash.

From-SVN: r113012
2006-04-17 21:27:57 +00:00
Andreas Tobler c60fe329d5 stringconst2.java: Print a stack trace in case of failure.
2006-04-17  Andreas Tobler  <a.tobler@schweiz.ch>

	* testsuite/libjava.lang/stringconst2.java: Print a stack trace in case
	of failure.

From-SVN: r113011
2006-04-17 23:18:23 +02:00
Janis Johnson 778f6a08fd PR c++/26114, c++/26115
PR c++/26114, c++/26115
	* typeck.c (cxx_mark_addressable): Restore check for extra_warnings.
	* class.c (check_field_decls): Ditto.

From-SVN: r113010
2006-04-17 19:35:56 +00:00
Roger Sayle 6cc1d69426 expr.c (expand_assignment): Optimize away no-op moves where the source and destination are equal and have...
* expr.c (expand_assignment): Optimize away no-op moves where the
	source and destination are equal and have no side-effects.

From-SVN: r113009
2006-04-17 16:49:54 +00:00
Volker Reichelt 7304fcb4a7 * init.c (build_offset_ref): Remove superfluous temporary.
From-SVN: r113008
2006-04-17 16:32:03 +00:00
Richard Guenther 71a9b19ae8 re PR target/26826 (ICE in reg_or_subregno, at jump.c:2011)
2006-04-17  Richard Guenther  <rguenther@suse.de>

	PR target/26826
	* reload.c (push_reload): Guard calls to get_secondary_mem
	for memory subregs.

From-SVN: r113007
2006-04-17 13:53:19 +00:00
Kazu Hirata b2c0ad4071 cgraph.h (cgraph_edge_p): New.
* cgraph.h (cgraph_edge_p): New.
	Update the prototype of cgraph_function_versioning.
	* cgraphunit.c (cgraph_copy_node_for_versioning,
	cgraph_function_versioning): Use VEC instead of VARRAY.
	* ipa-cp.c (ipcp_insert_stage): Likewise.

From-SVN: r113006
2006-04-17 12:45:25 +00:00
Kazu Hirata 1a5640b4e1 alias.c (alias_sets): Change the type to VEC(alias_set_entry,gc) *.
* alias.c (alias_sets): Change the type to
	VEC(alias_set_entry,gc) *.
	(get_alias_set_entry, new_alias_set, record_alias_subset): Use
	VEC instead of VARRAY.
	(last_alias_set): Remove.

From-SVN: r113005
2006-04-17 12:42:37 +00:00
Kazu Hirata 08c796829c alias.c (reg_base_value, [...]): Change the type to VEC(rtx,gc) *.
* alias.c (reg_base_value, old_reg_base_value): Change the
	type to VEC(rtx,gc) *.
	(REG_BASE_VALUE, find_base_value, record_set,
	init_alias_analysis): Use VEC instead of VARRAY.

From-SVN: r113004
2006-04-17 12:40:57 +00:00
Roger Sayle 726ac11ebd re PR target/26961 (ICE simplify_subreg:3813)
PR target/26961
	* fold-const.c (fold_ternary): When converting "A ? B : C" into either
	"A op B" or "A op C", we may need to convert A to the type of B and C.

	* gcc.dg/fold-cond-1.c: New test case.
	* gcc.dg/pr26961-1.c: Likewise.

From-SVN: r113001
2006-04-17 02:38:50 +00:00
Jerry DeLisle 27b9964175 re PR fortran/27138 (gfortran: read(*,*) myInt advances only one character on error)
2006-04-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/27138
	* gfortran.dg/read_bad_advance.f90: New test.

From-SVN: r113000
2006-04-17 02:37:15 +00:00
Jerry DeLisle 9855448d22 re PR fortran/27138 (gfortran: read(*,*) myInt advances only one character on error)
2006-04-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/27138
	* io/list_read.c (eat_line): New function.
	(parse_repeat): Use new function and free_saved.
	(read_logical): Same.
	(read_integer): Use new function.
	(parse_real): Use nml_bad_return and new function.
	(read_complex): Use new function and free_saved.
	(read_real): Same.

From-SVN: r112999
2006-04-17 02:33:51 +00:00
Adam Nemet b12cbf2cc5 target.h (struct gcc_target): Add mode_rep_extended.
* target.h (struct gcc_target): Add mode_rep_extended.
	* rtlanal.c (num_sign_bit_copies_in_rep): New global.
	(init_num_sign_bit_copies_in_rep): Initialize it using
	mode_rep_extended.
	(truncate_to_mode): Use it.
	(init_rtlanal): Call init_num_sign_bit_copies_in_rep.
	* targhooks.h (default_mode_rep_extended): Declare it.
	* targhooks.c (default_mode_rep_extended): Define it.
	* target-def.h (TARGET_MODE_REP_EXTENDED): New macro.  Default to
	default_mode_rep_extended.
	(TARGET_INITIALIZER): Include it.
	* doc/tm.texi (Misc): Document it.
	* config/mips/mips.c (TARGET_TRUNCATED_TO_MODE): Override it.
	(mips_truncated_to_mode): New function.

From-SVN: r112998
2006-04-17 01:59:41 +00:00
GCC Administrator ca8b30c8d1 Daily bump.
From-SVN: r112995
2006-04-17 00:17:12 +00:00
Roger Sayle d763e13096 re PR middle-end/25474 (Extra load for some FP code)
PR middle-end/25474
	* expr.c (compress_float_constant): Copy the narrow constant into
	a new pseudo before extending it to its final width.

From-SVN: r112991
2006-04-16 23:33:51 +00:00
Roger Sayle 2ff619482d re PR target/24076 ((vector char){x, x, x, x, x, x, x, x, x, x, x, x, x, x, x, x} code gen is not that good)
2006-04-15  Roger Sayle  <roger@eyesopen.com>
	    Andrew Pinski  <pinskia@gcc.gnu.org>
	    Dale Johannesen  <dalej@apple.com>

	PR target/24076
	* config/i386/i386.c (ix86_expand_vector_init_duplicate): Add
	special case code to implement V8HImode and V16QImode with SSE2.

	* gcc.target/i386/vecinit-3.c: New testcase.
	* gcc.target/i386/vecinit-4.c: Likewise.
	* gcc.target/i386/sse-18.c: Likewise.
	* gcc.target/i386/sse-19.c: Likewise.


Co-Authored-By: Andrew Pinski <pinskia@gcc.gnu.org>
Co-Authored-By: Dale Johannesen <dalej@apple.com>

From-SVN: r112990
2006-04-16 21:46:59 +00:00
Thomas Koenig 3c86fb4e17 re PR fortran/26017 (allocate (a(1:-1)) should yield zero-sized array)
2006-04-16  Thomas Koenig  <Thomas.Koenig@online.de>

	PR fortran/26017
	* trans-array.c(gfc_array_init_size):  Introduce or_expr
	which is true if the size along any dimension
	is negative.  Create a temporary variable with base
	name size.  If or_expr is true, set the temporary to 0,
	to the normal size otherwise.

2006-04-16  Thomas Koenig  <Thomas.Koenig@online.de>

        * gfortran.dg/allocate_zerosize_1.f90:  New test.

From-SVN: r112988
2006-04-16 20:29:24 +00:00
Mark Mitchell e13d2b4e53 re PR c++/26365 (ICE in finish_class_member_access_expr, at cp/typeck.c)
PR c++/26365
	* typeck.c (finish_class_member_access_expr): Robustify
	PR c++/26365
	* g++.dg/template/crash45.C: New test.

From-SVN: r112986
2006-04-16 18:12:41 +00:00
Paolo Carlini 8a9b2875db PR libstdc++/6702 (again)
2006-04-16  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/6702 (again)
	* acinclude.m4 (GLIBCXX_ENABLE_C99): Don't check non-C99
	wchar_t functions...
	(GLIBCXX_ENABLE_WCHAR_T): ... do that here.
	* configure.ac: Adjust order of checks.
	* configure: Regenerate.

From-SVN: r112983
2006-04-16 09:06:46 +00:00
Roger Sayle 3db8a11346 i386.c (ix86_va_start): Ensure all integer constant trees are constructed with a suitable tree type.
* config/i386/i386.c (ix86_va_start): Ensure all integer constant
	trees are constructed with a suitable tree type.

From-SVN: r112982
2006-04-16 04:01:25 +00:00
Paul Thomas f5f701ad00 re PR fortran/26822 (Scalarization of non-elemental intrinsic: __logical_4_l4)
2006-04-16  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/26822
	* intrinsic.c (add_functions): Mark LOGICAL as elemental.

	PR fortran/26787
	* expr.c (gfc_check_assign): Extend scope of error to include
	assignments to a procedure in the main program or, from a
	module or internal procedure that is not that represented by
	the lhs symbol. Use VARIABLE rather than l-value in message.

	PR fortran/27096
	* trans-array.c (gfc_trans_deferred_array): If the backend_decl
	is not a descriptor, dereference and then test and use the type.

	PR fortran/25597
	* trans-decl.c (gfc_trans_deferred_vars): Check if an array
	result, is also automatic character length.  If so, process
	the character length.

	PR fortran/18803
	PR fortran/25669
	PR fortran/26834
	* trans_intrinsic.c (gfc_walk_intrinsic_bound): Set
	data.info.dimen for bound intrinsics.
	* trans_array.c (gfc_conv_ss_startstride): Pick out LBOUND and
	UBOUND intrinsics and supply their shape information to the ss
	and the loop.

	PR fortran/27124
	* trans_expr.c (gfc_trans_function_call):  Add a new block, post,
	in to which all the argument post blocks are put.  Add this block
	to se->pre after a byref call or to se->post, otherwise.

2006-04-16  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/26787
	* gfortran.dg/proc_assign_1.f90: New test.
	* gfortran.dg/procedure_lvalue.f90: Change message.
	* gfortran.dg/namelist_4.f90: Add new error.

	PR fortran/27096
	* gfortran.dg/auto_pointer_array_result_1.f90

	PR fortran/27089
	* gfortran.dg/specification_type_resolution_1.f90

	PR fortran/18803
	PR fortran/25669
	PR fortran/26834
	* gfortran.dg/bounds_temporaries_1.f90: New test.

	PR fortran/27124
	* gfortran.dg/array_return_value_1.f90: New test.

From-SVN: r112981
2006-04-16 03:45:24 +00:00
Roger Sayle 7fe25d1a55 tree.c (integer_zerop): Ignore TREE_CONSTANT_OVERFLOW.
* tree.c (integer_zerop): Ignore TREE_CONSTANT_OVERFLOW.
	(integer_onep): Likewise.
	(integer_all_onesp): Likewise.
	(integer_pow2p): Likewise.
	(integer_nonzerop): Likewise.
	(real_zerop): Likewise.
	(real_onep): Likewise.
	(real_twop): Likewise.
	(real_minus_onep): Likewise.
	(int_size_in_bytes): Likewise.
	(host_integerp): Likewise.

From-SVN: r112980
2006-04-16 02:38:44 +00:00
Kazu Hirata aacac31f2c * tree-ssa-structalias.h (alias_info): Remove num_references.
From-SVN: r112979
2006-04-16 00:55:20 +00:00
GCC Administrator 13bf5947fc Daily bump.
From-SVN: r112977
2006-04-16 00:17:06 +00:00
Kazu Hirata e69460b664 * cp/call.c: Fix comment typos.
From-SVN: r112972
2006-04-15 21:48:54 +00:00
Kazu Hirata 75c40d56f7 cfgcleanup.c, [...]: Fix comment typos.
* cfgcleanup.c, config/dfp-bit.c, expr.c, fold-const.c,
	jump.c, mips-tfile.c, omp-low.c, sched-int.h,
	tree-ssa-loop-prefetch.c, tree-vrp.c: Fix comment typos.

From-SVN: r112971
2006-04-15 21:45:06 +00:00
John David Anglin 8370f6fa3c pa.md (output_bb patterns): Shorten long branch alternatives by 4.
* pa.md (output_bb patterns): Shorten long branch alternatives by 4.
	(output_bvb patterns): Likewise.
	* pa.c (output_bb): Use 'bb' insn for long branch case.
	(output_bvb): Likewise use '{bvb|bb}' for long branch case.
	(output_dbra): Use '{comb|cmpb}' for long branch case for alternative
	1.  Correct length operand for alternatives 1 and 2.
	(output_movb): Use '{comb|cmpb}' for long branch case for alternatives
	1, 2 and 3.  Correct length operand for alternatives 1, 2 and 3.

From-SVN: r112970
2006-04-15 15:53:33 +00:00
Kazu Hirata 5382402614 Make-lang.in (cp/pt.o): Depend on vecprim.h.
* Make-lang.in (cp/pt.o): Depend on vecprim.h.
	* pt.c: Include vecprim.h.
	(inline_parm_levels): Change the type to VEC(int,heap) *.
	(inline_parm_levels_used): Remove.
	(maybe_begin_member_template_processing,
	maybe_end_member_template_processing): Use VEC instead of
	VARRAY.

From-SVN: r112969
2006-04-15 12:40:14 +00:00
Roger Sayle a01de5ece5 trans-io.c (set_string): Use fold_build2 and build_int_cst instead of build2 and convert to construct "x...
* trans-io.c (set_string): Use fold_build2 and build_int_cst instead
	of build2 and convert to construct "x < 0" rather than "x <= -1".

From-SVN: r112968
2006-04-15 05:50:42 +00:00
Jerry DeLisle db753da024 re PR testsuite/25336 (Identical tests: gfortran.dg/g77/20030115-1.f gfortran.dg/g77/pr9258.f)
2006-04-15  Jerry DeLisle <jvdelisle@gcc.gnu.org>

	PR fortran/25336
	* gfortran/dg/g77/20030115-1.f: Delete duplicate test.

From-SVN: r112967
2006-04-15 04:51:39 +00:00
Roger Sayle bed575d525 tree-cfg.c (make_edges, [...]): Reinstate RTH's changes from r112935 that were accidentally reverted by r112959.
* tree-cfg.c (make_edges, make_omp_sections_edges, move_stmt_r,
	is_ctrl_altering_stmt): Reinstate RTH's changes from r112935 that
	were accidentally reverted by r112959.

From-SVN: r112966
2006-04-15 03:24:23 +00:00
GCC Administrator 8ba0097ac4 Daily bump.
From-SVN: r112964
2006-04-15 00:17:11 +00:00