71205 Commits

Author SHA1 Message Date
J"orn Rennecke
ca7a5aec06 optabs.c (no_conflict_move_test): Check if a result of a to-be-moved insn would be clobbered by an originally...
* optabs.c (no_conflict_move_test): Check if a result of a
	to-be-moved insn would be clobbered by an originally
	preceding insn.

From-SVN: r104709
2005-09-27 22:09:28 +01:00
Uros Bizjak
dbc6e7b800 pr22585.c: Run on 32-bit x86 only.
2005-09-27  Uros Bizjak  <uros@kss-loka.si>

	* gcc.target/i386/pr22585.c: Run on 32-bit x86 only.
	* gcc.target/i386/builtin-apply-mmx.c: Run on 32-bit x86 only.

From-SVN: r104708
2005-09-27 21:04:42 +00:00
Tom Tromey
b9e6a2e5de re PR libgcj/23367 (_Jv_FindMethodInCache is not thread-safe)
PR libgcj/23367:
	* include/jvm.h (_Jv_FreeMethodCache): Declare.
	* java/lang/natClass.cc (MCACHE_SIZE): Conditional on HAVE_TLS.
	(struct _Jv_mcache): Likewise.
	(method_cache): Likewise.
	(_Jv_FindMethodInCache): Do nothing unless TLS is available.
	(_Jv_AddMethodToCache): Likewise.
	(_Jv_FreeMethodCache): New function.
	* java/lang/natThread.cc (finish_): Call _Jv_FreeMethodCache.
	* aclocal.m4, configure, include/config.h.in: Rebuilt.
	* configure.ac: Invoke GCC_CHECK_TLS.

From-SVN: r104707
2005-09-27 20:03:09 +00:00
Tom Tromey
ab3fa9d344 configure, [...]: Rebuilt.
* configure, Makefile.in: Rebuilt.
	* sources.am: Rebuilt.
	* scripts/makemake.tcl (emit_bc_rule): Special-case qt.
	* configure.ac (TOOLKIT): Handle Qt peers properly.

From-SVN: r104706
2005-09-27 18:51:40 +00:00
Jeff Law
f20731b7ca passes.c (init_optimization_passes): Replace copy propagation passes immediately after DOM with phi-only copy...
* passes.c (init_optimization_passes): Replace copy propagation
        passes immediately after DOM with phi-only copy propagation
        pases.  Add phi-only copy propagation pass after first DOM pass.
        * tree-pass.h (pass_phi_only_copy_prop): Declare.
        * tree-ssa-copy.c (init_copy_prop): Accept new PHI_ONLY argument.
        If true, then mark all non-control statements with DONT_SIMULATE_AGAIN.
        (execute_copy_prop): Accept new PHI_ONLY argument.  Pass it along
        to init_copy_prop.  Callers updated.
        (do_phi_only_copy_prop): New function.
        (pass_phi_only_copy_prop): New pass descriptor.

From-SVN: r104705
2005-09-27 12:47:27 -06:00
Nick Clifton
3542b7ccd2 * libgcc2.c (__popcount_tab): Remove redundant prototype.
From-SVN: r104702
2005-09-27 17:11:39 +00:00
Jason Merrill
86ad3aa989 re PR c++/13764 (c++ front-end creates extra blocks)
PR c++/13764
        * c-common.c (finish_fname_decls): Use append_to_statement_list_force.
        * cp/cp-tree.h (FUNCTION_NEEDS_BODY_BLOCK): New macro.
        * cp/name-lookup.c (pushdecl_maybe_friend): Check it.
        * cp/decl.c (begin_function_body): Do nothing if it's false.
        (finish_function_body): Ditto.
        (outer_curly_brace_block): New fn.
        (finish_function): Use it.

From-SVN: r104698
2005-09-27 12:04:25 -04:00
Daniel Berlin
8ec88e19de Add missing part of committed patch from 21st
From-SVN: r104696
2005-09-27 15:33:51 +00:00
Mark Mitchell
affbb54ac4 * argv.c (expandargv): Do not use xmalloc_failed.
From-SVN: r104695
2005-09-27 15:21:41 +00:00
David Edelsohn
f660281695 Correct ChangeLog formatting.
From-SVN: r104683
2005-09-27 00:04:30 -04:00
David Edelsohn
63d261c617 Correct ChangeLog formatting and email address.
From-SVN: r104682
2005-09-27 00:02:35 -04:00
Jason Merrill
4381020e03 * doc/invoke.texi: Clarify documentation of -fno-enforce-eh-specs.
From-SVN: r104681
2005-09-26 23:11:28 -04:00
Benjamin Kosnik
4bd2f9d6a1 2005-09-25 Benjamin Kosnik <bkoz@redhat.com>
Eric Botcazou  <ebotcazou@libertysurf.fr>

	* include/ext/mt_allocator.h
	(__per_type_pool<...true>::_S_initialize_once): Always call
	_M_initialize_once.
	(__common_pool<...true>::_S_initialize_once): Same.

Co-Authored-By: Eric Botcazou <ebotcazou@libertysurf.fr>

From-SVN: r104678
2005-09-27 01:40:46 +00:00
James E Wilson
92b4f0af9d Fix problems with copyrights for files that end up in libgcc.a.
* config/ia64/crtbegin.asm, config/ia64/crtend.asm: Remove glibc
copyright.  Add gcc copyright plus libgcc exception.
* config/ia64/crtfastmath.asm: Remove glibc copyright.  Add gcc
copyright.
* config/ia64/lib1funcs.asm: Add gcc copyright plus libgcc exception.

From-SVN: r104675
2005-09-26 17:52:24 -07:00
GCC Administrator
d5a0cd8d15 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104671.2
2005-09-27 00:16:45 +00:00
Mark Mitchell
240921b985 * Makefile.in: Regenerated.
From-SVN: r104666
2005-09-26 20:57:42 +00:00
Mark Mitchell
97393d0a03 libiberty.h (expandargv): New function.
* libiberty.h (expandargv): New function.

	* argv.c (safe-ctype.h): Include it.
	(ISBLANK): Remove.
	(stdio.h): Include.
	(buildargv): Use ISSPACE instead of ISBLANK.
	(expandargv): New function.

From-SVN: r104664
2005-09-26 20:55:10 +00:00
Janne Blomqvist
18623faed1 [multiple changes]
2005-09-24  Janne Blomqvist  <jblomqvi@cc.hut.fi>

	* trans-io.c (gfc_build_io_library_fndecls): Add entry
	iocall_x_array for transfer_array. (transfer_array_desc): New
	function. (gfc_trans_transfer): Add code to call
	transfer_array_desc.

2005-09-24  Janne Blomqvist <jblomqvi@cc.hut.fi>

	* io.h: Changed prototypes of list_formatted_{read|write}.
	* list_read.c (list_formatted_read): Renamed to
	list_formatted_read_scalar and made static. (list_formatted_read):
	New function.
	* transfer.c: Prototype for transfer_array. Changed transfer
	function pointer. (unformatted_read): Add nelems argument, use
	it. (unformatted_write): Likewise. (formatted_transfer): Changed
	name to formatted_transfer_scalar. (formatted_transfer): New
	function. (transfer_integer): Add nelems argument to transfer
	call, move updating item count to transfer
	functions. (transfer_real): Likewise. (transfer_logical):
	Likewise. (transfer_character): Likewise. (transfer_complex):
	Likewise. (transfer_array): New function. (data_transfer_init):
	Call formatted_transfer with new argument. (iolength_transfer):
	New argument, use it.
	* write.c (list_formatted_write): Renamed to
	list_formatted_write_scalar, made static. (list_formatted_write):
	New function.

From-SVN: r104662
2005-09-26 20:24:45 +00:00
Jakub Jelinek
d05d9ac771 re PR fortran/23677 (-fno-automatic does not accept legal save statements)
PR fortran/23677
	* symbol.c (gfc_is_var_automatic): Return true if character length
	is non-constant rather than constant.
	* resolve.c (gfc_resolve): Don't handle !gfc_option.flag_automatic
	here.
	* options.c (gfc_post_options): Set gfc_option.flag_max_stack_var_size
	to 0 for -fno-automatic.

	* gfortran.fortran-torture/execute/save_1.f90: New test.
	* gfortran.dg/save_1.f90: New test.

From-SVN: r104661
2005-09-26 22:06:37 +02:00
Tom Tromey
d674eb2f5c float1.c (value_type): New typedef.
* testsuite/libffi.call/float1.c (value_type): New typedef.
	(CANARY): New define.
	(main): Check for result buffer overflow.
	* src/powerpc/linux64.S: Handle linux64 long double returns.
	* src/powerpc/ffi.c (FLAG_RETURNS_128BITS): New constant.
	(ffi_prep_cif_machdep): Handle linux64 long double returns.

From-SVN: r104660
2005-09-26 19:56:22 +00:00
Jeff Law
608af77dc1 tree-ssa-dom.c (tree_ssa_dominator_optimize): Be more selective about when to iterate.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Be more selective
        about when to iterate.

From-SVN: r104658
2005-09-26 13:40:20 -06:00
Uros Bizjak
a35074775f re PR target/22576 (ICE with simple factorial program compiled with -ffast-math on gcc 4.0.2)
2005-08-26  Uros Bizjak  <uros@kss-loka.si>

	* gcc.target/i386/builtin-apply-mmx.c: New test.

	PR target/22576
	* gcc.target/i386/pr22576.c: New test.

	PR target/22585
	* gcc.target/i386/pr22585.c: New test.

	PR target/23268
	* gcc.target/i386/pr23268.c: New test.

From-SVN: r104656
2005-09-26 19:19:43 +00:00
Fariborz Jahanian
0f086e42e3 re PR target/23847 (Darwin -mpowerpc64 complex ABI breakage)
PR target/23847.
Oked by David Edelsohn.

From-SVN: r104655
2005-09-26 19:12:30 +00:00
David Edelsohn
e097b4f158 configure.ac: Add check for __clog.
* configure.ac: Add check for __clog.
	* configure: Regenerate.

From-SVN: r104654
2005-09-26 19:08:27 +00:00
Sebastian Pop
c59dabbe46 re PR tree-optimization/23942 (loop problem / testcase takes very long time to compile)
PR tree-optimization/23942
	* Makefile.in (SCEV_H): Depends on PARAMS_H.
	* tree-scalar-evolution.c: Include params.h.
	(t_bool): New enum.
	(follow_ssa_edge, follow_ssa_edge_in_rhs,
	follow_ssa_edge_in_condition_phi_branch,
	follow_ssa_edge_in_condition_phi, follow_ssa_edge_inner_loop_phi):
	Change return type to t_bool.  Use a parameter to limit the size of
	trees that are walked before stopping
	(analyze_evolution_in_loop): Initialize the limit to 0.
	(follow_ssa_edge): Give up by returning t_dont_know if the limit
	exceeds PARAM_SCEV_MAX_EXPR_SIZE.

From-SVN: r104653
2005-09-26 18:44:16 +00:00
Uros Bizjak
0f9284bf83 re PR middle-end/23831 (ICE in immed_double_const with vectorized multipication)
PR middle-end/23831
	* gcc.dg/vect/pr23831.c: New test.

From-SVN: r104651
2005-09-26 18:17:53 +00:00
Uros Bizjak
3242fbd83f re PR middle-end/23831 (ICE in immed_double_const with vectorized multipication)
PR middle-end/23831
	* simplify-rtx.c (simplify_immed_subreg) [MODE_INT]: Skip
	simplification if elem_bitsize > 2 * HOST_BITS_PER_WIDE_INT.

From-SVN: r104650
2005-09-26 18:16:07 +00:00
Fariborz Jahanian
b166bfd224 Check for valid use of subreg.
Oked by Richard Henderson.

From-SVN: r104649
2005-09-26 17:42:16 +00:00
Uros Bizjak
bd0ffa878a re PR target/24055 ("could not split insn" with -O1 -ffast-math)
PR target/24055
	* gcc.target/i386/pr24055.c: New test.

From-SVN: r104648
2005-09-26 17:25:48 +00:00
Uros Bizjak
4d06b0a2fe re PR target/24055 ("could not split insn" with -O1 -ffast-math)
PR target/24055
	* config/i386/i386.md ("*fistdi2_1"): New pattern.
	("*fist<mode>2_1"): Use only HImode and SImode register operands.
	("fist<mode>2_with_temp"): Use only register operands.

From-SVN: r104647
2005-09-26 17:21:00 +00:00
J"orn Rennecke
76dd592360 rtlanal.c (reg_used_between_p): Don't check for CLOBBERs in CALL_INSN_FUNCTION_USAGE.
* rtlanal.c (reg_used_between_p): Don't check for CLOBBERs in
	CALL_INSN_FUNCTION_USAGE.

From-SVN: r104643
2005-09-26 13:12:35 +01:00
Richard Guenther
6cec5cb56a re PR middle-end/15855 (g++ crash with -O2 and -O3 on input file)
2005-09-26  Richard Guenther  <rguenther@suse.de>

	PR middle-end/15855
	* decl2.c (do_static_destruction): Remove.
	(finish_static_initialization_or_destruction): Likewise.
	(DECL_EFFECTIVE_INIT_PRIORITY): New macro.
	(NEEDS_GUARD_P): Likewise.
	(do_static_initialization): Rename to
	do_static_initialization_or_destruction.  Process all
	initializers/destructors and handle common conditionalizing.
	(start_static_initialization_or_destruction): Rename to
	one_static_initialization_or_destruction.  Handle only
	decl-specific conditionalizing.
	(cp_finish_file): Call do_static_initialization_or_destruction.

From-SVN: r104642
2005-09-26 08:42:57 +00:00
Richard Guenther
9727e468b1 re PR middle-end/15855 (g++ crash with -O2 and -O3 on input file)
2005-09-26  Richard Guenther  <rguenther@suse.de>

	PR middle-end/15855
	* gcse.c: Include hashtab.h, define ldst entry hashtable.
	(pre_ldst_expr_hash, pre_ldst_expr_eq): New functions.
	(ldst_entry): Use the hashtable instead of list-walking.
	(find_rtx_in_ldst): Likewise.
	(free_ldst_entry): Free the hashtable.
	(compute_ld_motion_mems): Create the hashtable.
	(trim_ld_motion_mems): Remove entry from hashtable if
	removing it from list.
	(compute_store_table): Likewise^2.
	(store_motion): Free hashtable in case we did not see
	any stores.

From-SVN: r104641
2005-09-26 08:38:29 +00:00
Kazu Hirata
3f1dfb4145 re PR middle-end/23960 (ICE in compare_values in VRP)
gcc/
	PR tree-optimization/23960
	* fold-const.c (fold_binary): Use op0 and op1 instead of arg0
	and arg1 if we are passing them to fold_build2.

gcc/testsuite/
	PR tree-optimization/23960
	* gcc.c-torture/compile/pr23960.c: New.

From-SVN: r104634
2005-09-26 01:28:50 +00:00
GCC Administrator
89251091ec Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104631.2
2005-09-26 00:16:15 +00:00
Francois-Xavier Coudert
1409cd0b8e c99_protos.h: Add prototypes for C99 complex functions.
* c99_protos.h: Add prototypes for C99 complex functions.
	* libgfortran.h: Include complex.h before c99_protos.h.
	* intrinsics/c99_functions.c: Define HAVE_ macros for the
	fallback functions we provide.
	(cabsf, cabs, cabsl, cargf, carg, cargl, cexpf, cexp, cexpl,
	clogf, clog, clogl, clog10f, clog10, clog10l, cpowf, cpow, cpowl,
	cqsrtf, csqrt, csqrtl, csinhf, csinh, csinhl, ccoshf, ccosh,
	ccoshl, ctanhf, ctanh, ctanhl, csinf, csin, csinl, ccosf, ccos,
	ccosl, ctanf, ctan, ctanl): New fallback functions.
	* Makefile.am (gfor_math_trig_c, gfor_math_trig_obj,
	gfor_specific_c, gfor_cmath_src, gfor_cmath_obj): Remove.
	* Makefile.in: Regenerate.
	* configure.ac: Remove checks for csin. Add checks for all C99
	complex functions.
	* config.h.in: Regenerate.
	* configure: Regenerate.
	* aclocal.m4: Regenerate.

From-SVN: r104626
2005-09-25 21:39:58 +00:00
Francois-Xavier Coudert
86ab632081 re PR libfortran/23803 ([mingw32] getlog malfunction)
PR libfortran/23803
	* intrinsics/getXid.c: Add getpid wrapper for MinGW.
	* intrinsics/getlog.c: Add getlogin wrapper for MinGW.
	* intrinsics/hostnm.c: Add gethostname wrapper for MinGW.

Co-Authored-By: Danny Smith <dannysmith@users.sourceforge.net>

From-SVN: r104624
2005-09-25 21:02:17 +00:00
Dan Nicolaescu
ad90e28f8f re PR target/23828 (local calling convention not used when using --combine)
PR 23828
* config/i386/i386.c (ix86_function_regparm): Fix the test for
a nested function.

From-SVN: r104623
2005-09-25 20:01:07 +00:00
Richard Henderson
f6326c19c7 alpha.c (tls_symbolic_operand_1): Trust SYMBOL_REF_TLS_MODEL to be correct.
* config/alpha/alpha.c (tls_symbolic_operand_1): Trust
        SYMBOL_REF_TLS_MODEL to be correct.

From-SVN: r104622
2005-09-25 11:34:45 -07:00
Richard Henderson
2eca7d1572 ipa-type-escape.c (discover_unique_type): Remove dead code at end of function.
* ipa-type-escape.c (discover_unique_type): Remove dead code at
        end of function.  Reindent.

From-SVN: r104619
2005-09-24 22:28:01 -07:00
Ian Lance Taylor
1f6f3d15c6 convert.c (convert_to_integer): Don't test for ENUMERAL_TYPE in NEGATE_EXPR/BIT_NOT_EXPR case.
* convert.c (convert_to_integer): Don't test for ENUMERAL_TYPE in
	NEGATE_EXPR/BIT_NOT_EXPR case.

From-SVN: r104615
2005-09-25 03:05:57 +00:00
GCC Administrator
8028abd70d Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104612.2
2005-09-25 00:16:14 +00:00
Richard Henderson
99db1ef0e2 c-common.c (handle_mode_attribute): When not modifying in place, create subtypes for enumerations.
* c-common.c (handle_mode_attribute): When not modifying in place,
        create subtypes for enumerations.
        (sync_resolve_return): Use TYPE_MAIN_VARIANT.
        * gimplify.c (create_tmp_from_val): Likewise.

From-SVN: r104603
2005-09-24 09:21:43 -07:00
Alexandre Oliva
e347ff9e3d * config/i386/i386.md (*tls_global_dynamic_64,
*tls_local_dynamic_base_64): Add missing mode to call.
(tls_global_dynamic_64, tls_local_dynamic_base_64): Likewise.

From-SVN: r104602
2005-09-24 15:47:57 +00:00
Jan Hubicka
06191a239b cgraph.c (cgraph_clone_edge): Make the scale gcov_type.
* cgraph.c (cgraph_clone_edge): Make the scale gcov_type.
	(cgraph_clone_node): Likewise.
	* cgraph.h (cgraph_clone_edge): Update prototype.
	(cgraph_mark_inline_edge, cgraph_clone_inlined_nodes): Remove
	duplicated prototypes; add updating argument.
	* cgraphunit.c (verify_cgraph_node): Verify that counts are non-negative.
	* ipa-inline.c (cgraph_clone_inlined_nodes): Allow clonning without
	updating profile.
	(cgraph_mark_inline_edge): Likewise.
	(cgraph_mark_inline): Update use of cgraph_mark_inline_edge.
	(cgraph_flatten_node): Likewise.
	(cgraph_decide_recursive_inlining): Likewise.
	(cgraph_decide_inlining_of_small_function): Likewise.
	* tree-optimize.c (tree_rest_of_compilation): Likewise.

From-SVN: r104601
2005-09-24 12:43:30 +00:00
Francois-Xavier Coudert
26b7ebf6bf re PR libfortran/23802 ([mingw32] sleep malfunction)
PR libfortran/23802
	* intrinsics/sleep.c: Add correct sleep macro for MinGW.

From-SVN: r104599
2005-09-24 08:55:37 +00:00
Francois-Xavier Coudert
399a39c720 re PR libfortran/23380 ([mingw32] cpu_time intrinsic malfunction)
PR libfortran/23380
	* intrinsics/cpu_time.c (__cpu_time_1): Provide a MS Windows
	version.

From-SVN: r104598
2005-09-24 08:39:35 +00:00
GCC Administrator
46919f9ce3 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r104595.2
2005-09-24 00:16:42 +00:00
Tom Tromey
34d9dc2d29 cvsignore: Likewise.
* native/jawt/.cvsignore: Likewise.
	* native/jni/qt-peer/.cvsignore
	* native/jawt/Makefile.in: Added.
	* native/jni/qt-peer/Makefile.in: Likewise.

From-SVN: r104592
2005-09-24 00:07:48 +00:00
Benjamin Kosnik
8d4addde19 tune-1.cc: Clarify for single-thread.
2005-09-23  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/ext/mt_allocator/tune-1.cc: Clarify for single-thread.
	* testsuite/ext/mt_allocator/tune-2.cc: Same.
	* testsuite/ext/mt_allocator/tune-3.cc: Same.
	* testsuite/ext/mt_allocator/tune-4.cc: Same.

From-SVN: r104591
2005-09-23 23:53:07 +00:00