Tom Tromey [Tue, 28 Mar 2006 19:05:21 +0000 (19:05 +0000)]
Correcting PR number in ChangeLog:
PR libgcj/26441:
* Merged libltdl 1.5.16 from vendor branch.
From-SVN: r112465
Tom Tromey [Tue, 28 Mar 2006 19:02:25 +0000 (19:02 +0000)]
re PR libgcj/26441 (Old libltdl may cause memory leak in Class.forName())
PR libgcj/26641:
* Merged libltdl 1.5.16 from vendor branch.
From-SVN: r112464
Denis Chertykov [Tue, 28 Mar 2006 18:56:10 +0000 (22:56 +0400)]
Fix ChangeLog entry.
From-SVN: r112463
Roger Sayle [Tue, 28 Mar 2006 17:55:26 +0000 (17:55 +0000)]
fold-const.c (fold_binary): Fold (X & Y) ^ Y as the equivalent ~X & Y, and the symmetry related transformations.
* fold-const.c (fold_binary) <BIT_XOR_EXPR>: Fold (X & Y) ^ Y as
the equivalent ~X & Y, and the symmetry related transformations.
(fold_binary) <BIT_AND_EXPR>: Similarly, fold (X ^ Y) & Y as
~X & Y, and symmetry related transforms.
* gcc.dg/fold-andxor-1.c: New test case.
* gcc.dg/fold-xorand-1.c: Likewise.
From-SVN: r112459
Maxim Kuvyrkov [Tue, 28 Mar 2006 17:33:41 +0000 (17:33 +0000)]
2006-03-28 Maxim Kuvyrkov <mkuvyrkov@ispras.ru>
Revert my 2006-03-27 patches.
From-SVN: r112456
Roger Sayle [Tue, 28 Mar 2006 17:06:19 +0000 (17:06 +0000)]
fold-const.c (fold_unary): Fold (T1)(~(T2)X) as ~(T1)X...
* fold-const.c (fold_unary) <NOP_EXPR>: Fold (T1)(~(T2)X) as
~(T1)X, when T1 and T2 are integer types of the same precision
and (T2)X isn't an extension.
* gcc.dg/fold-convnotconv-1.c: New test case.
From-SVN: r112455
Anthony Balkissoon [Tue, 28 Mar 2006 16:12:52 +0000 (16:12 +0000)]
unicode-muncher.pl: Removed this file.
2006-03-28 Anthony Balkissoon <abalkiss@redhat.com>
* scripts/unicode-muncher.pl: Removed this file.
* scripts/MakeCharTables.java: Likewise.
* scripts/unicode-to-chartables.pl: New file.
* java/lang/natCharacter.cc:
(UNASSIGNED_TYPE): New field.
(UNASSIGNED_DIGIT): Likewise.
(UNASSIGNED_DIRECTION): Likewise.
(UNASSIGNED_NUMERIC_VALUE): Likewise.
(PRIVATE_TYPE): Likewise.
(PRIVATE_DIRECTION): Likewise.
(readCodePoint): New method.
(getType(jint)): Likewise.
(toLowerCase(jint)): Likewise.
(toUpperCase(jint)): Likewise.
(toTitleCase(jint)): Likewise.
(digit(jint, jint)): Likewise.
(getNumericValue(jint)): Likewise.
(getDirectionality(jint)): Likewise.
(readChar),
(getType(jchar)),
(toLowerCase(jchar)),
(toUpperCase(jchar)),
(toTitleCase(jchar)),
(digit(jchar, jint)),
(getNumericValue(jchar)),
(getDirectionality(jchar)): Changed references from data to data[0],
blocks to blocks[0], direction to direction[0], numValue to
numValue[0], upper to upper[0], lower to lower[0], and shift to
shift[0] to reflect the new structures in java-chartables.h.
* java/lang/Character.java:
(readCodePoint): Declared new native method.
(getType(int)): Likewise.
(toLowerCase(int)): Likewise.
(toUpperCase(int)): Likewise.
(toTitleCase(int)): Likewise.
(digit(int, int)): Likewise.
(getNumericValue(int)): Likewise.
(getDirectionality(int)): Likewise.
(isLowerCase(int)): New method.
(isUpperCase(int)): Likewise.
(itTitleCase(int)): Likewise.
(isDigit(int)): Likewise.
(isDefined(int)): Likewise.
(isLetter(int)): Likewise.
(isLetterOrDigit(int)): Likewise.
(isJavaIdentifierStart(int)): Likewise.
(isJavaIdentifierPart(int)): Likewise.
(isUnicodeIdentifierStart(int)): Likewise.
(isUnicodeIdentifierPart(int)): Likewise.
(isIdentifierIgnorable(int)): Likewise.
(isSpaceChar(int)): Likewise.
(isWhitespace(int)): Likewise.
(isISOControl(int)): Likewise.
(isMirrored(int)): Likewise.
* include/java-chartables.h: Generated from
scripts/unicode-to-chartables.h.
From-SVN: r112454
Jeff Law [Tue, 28 Mar 2006 15:35:47 +0000 (08:35 -0700)]
re PR tree-optimization/26796 (ACATS ICE
c34002a c52005 spurious storage_error)
PR tree-optimization/26796
* tree-ssa-dom.c (propagate_rhs_into_lhs): Queue blocks which
need EH edge cleanups rather than purging them immediately.
(eliminate_degenerate_phis): Handle queued EH cleanups.
From-SVN: r112453
Daniel Berlin [Tue, 28 Mar 2006 14:36:56 +0000 (14:36 +0000)]
tree-ssa-alias.c (create_sft): Initially inherit TREE_ADDRESSABLE from parent_var.
2006-03-28 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-alias.c (create_sft): Initially inherit TREE_ADDRESSABLE
from parent_var.
From-SVN: r112451
Paolo Carlini [Tue, 28 Mar 2006 12:54:04 +0000 (12:54 +0000)]
vstring.h (operator[]): Allow s[s.size()] in debug mode, but not pedantic mode.
2006-03-28 Paolo Carlini <pcarlini@suse.de>
* include/ext/vstring.h (operator[]): Allow s[s.size()] in
debug mode, but not pedantic mode.
From-SVN: r112447
Paul Thomas [Tue, 28 Mar 2006 10:13:50 +0000 (10:13 +0000)]
re PR fortran/26779 (Internal module procedure may not have private type dummy arguments)
2006-03-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/26779
*resolve.c (resolve_fl_procedure): Do not check the access of
derived types for internal procedures.
2006-03-28 Paul Thomas <pault@gcc.gnu.org>
PR fortran/26779
* gfortran.dg/private_type_5.f90: New test.
From-SVN: r112442
Roger Sayle [Tue, 28 Mar 2006 05:01:27 +0000 (05:01 +0000)]
re PR middle-end/22524 (fold (or the front-ends) produces UNARY (BIT_NOT_EXPR) tree with mismatch types)
PR middle-end/22524
* fold-const.c (fold_binary) <MINUS_EXPR>: Call fold_convert to
cast BIT_NOT_EXPR operand to the correct type.
From-SVN: r112438
Sebastian Pop [Tue, 28 Mar 2006 04:19:26 +0000 (06:19 +0200)]
tree-loop-linear.c: Don't include varray.h.
* tree-loop-linear.c: Don't include varray.h.
(gather_interchange_stats, try_interchange_loops,
linear_transform_loops): Use VEC instead of VARRAY.
* lambda-mat.c: Don't include varray.h.
* tree-chrec.c: Same.
* lambda-trans.c: Same.
* tree-vectorizer.c (new_loop_vec_info, destroy_loop_vec_info): Use
VEC instead of VARRAY.
* tree-vectorizer.h: Idem.
* tree-data-ref.c (dump_data_references,
dump_data_dependence_relations, dump_dist_dir_vectors, dump_ddrs,
initialize_data_dependence_relation, finalize_ddr_dependent,
compute_all_dependences, find_data_references_in_loop,
compute_data_dependences_for_loop, analyze_all_data_dependences,
free_dependence_relation, free_dependence_relations,
free_data_refs): Idem.
* tree-data-ref.h (data_reference_p, subscript_p): New.
(data_dependence_relation, DDR_SUBSCRIPT, DDR_NUM_SUBSCRIPTS): Use
VEC instead of VARRAY.
(DDR_SUBSCRIPTS_VECTOR_INIT): Removed.
(find_data_references_in_loop, compute_data_dependences_for_loop,
dump_ddrs, dump_dist_dir_vectors, dump_data_references,
dump_data_dependence_relations, free_dependence_relations,
free_data_refs): Adjust declaration.
(lambda_transform_legal_p): Move declaration here...
* tree-vect-analyze.c (vect_analyze_data_ref_dependences,
vect_compute_data_refs_alignment, vect_verify_datarefs_alignment,
vect_enhance_data_refs_alignment, vect_analyze_data_ref_accesses,
vect_analyze_data_refs): Use VEC instead of VARRAY.
* lambda.h (lambda_transform_legal_p): ...from here.
* lambda-code.c (lambda_transform_legal_p): Use VEC instead of VARRAY.
* tree-vect-transform.c (vect_update_inits_of_drs): Idem.
* Makefile.in (tree-loop-linear.o, lambda-mat.o, lambda-trans.o,
tree-chrec.o): Don't depend on VARRAY_H.
From-SVN: r112437
GCC Administrator [Tue, 28 Mar 2006 00:17:29 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112432
Maxim Kuvyrkov [Mon, 27 Mar 2006 22:59:07 +0000 (22:59 +0000)]
rtl.def (Copyright): Update date.
2006-03-27 Maxim Kuvyrkov <mkuvyrkov@ispras.ru>
* rtl.def (Copyright): Update date.
(DEPS_LIST): Change type of the second operand to 'int'.
* target.h (Copyright): Update date.
(struct gcc_target.speculate_insn): Change type of the second parameter
to 'int'.
* lists.c (Copyright): Update date.
(alloc_DEPS_LIST): Change signature. Update reference to the second
operand of the DEPS_LIST.
(copy_DEPS_LIST_list): Update reference to the second operand of the
DEPS_LIST.
* rtl.h (Copyright): Update date.
(alloc_DEPS_LIST): Update signature.
* sched-int.h (Copyright): Update date.
(ds_t): Change typedef to 'int'.
(DEP_STATUS, BITS_PER_DEP_STATUS): Update.
From-SVN: r112428
Maxim Kuvyrkov [Mon, 27 Mar 2006 22:38:06 +0000 (22:38 +0000)]
haifa-sched.c (Copyright): Update date.
2006-03-27 Maxim Kuvyrkov <mkuvyrkov@ispras.ru>
* haifa-sched.c (Copyright): Update date.
(try_ready): Change condition to restore non-speculative pattern
of the instruction.
(process_insn_depend_be_in_spec): Code to keep probability of the
speculative dependence non-decreasing.
From-SVN: r112427
David Edelsohn [Mon, 27 Mar 2006 17:03:56 +0000 (17:03 +0000)]
* objc.dg/objc-nofilename-1.m: Limit to Darwin.
From-SVN: r112424
Bernd Schmidt [Mon, 27 Mar 2006 16:25:16 +0000 (16:25 +0000)]
regrename.c (replace_oldest_value_addr): Initialize a variable to shut up the compiler.
* regrename.c (replace_oldest_value_addr): Initialize a variable to
shut up the compiler.
From-SVN: r112423
J"orn Rennecke [Mon, 27 Mar 2006 15:59:27 +0000 (15:59 +0000)]
t-sh ($(T)libic_invalidate_array_4-100.a): Fix rule to use lib prefix for target.
* config/sh/t-sh ($(T)libic_invalidate_array_4-100.a): Fix rule
to use lib prefix for target.
($(T)libic_invalidate_array_4-200.a): Likewise.
($(T)libic_invalidate_array_4a.a): Likewise.
From-SVN: r112422
Andrew Stubbs [Mon, 27 Mar 2006 14:11:14 +0000 (14:11 +0000)]
superh.opt: New file.
2006-03-27 Andrew Stubbs <andrew.stubbs@st.com>
J"orn Rennecke <joern.rennecke@st.com>
* superh.opt: New file.
* sh.c (boardtype, osruntime): Remove.
* superh.h (SUBTARGET_OPTIONS): Remove.
* config.gcc (sh*-superh-elf): Add sh/superh.opt to extra_options.
* config.gcc (sh*-*-*): Don't use c-c ranges for tr. Quote sed
arguments with ^ and/or [].
* config.gcc (sh-*-*): Add quoting to account for quirk of
Solaris /bin/sh.
Replace == with = in enable_incomplete_targets test.
* config/sh/superh.h (SUBTARGET_LINK_SPEC): Replace LITTLE_ENDIAN_BIT
with MASK_LITTLE_ENDIAN.
* config.gcc (sh*-superh-elf): Add sh/superh.h to tm_file.
* config/sh/sh.opt: Added to some comments.
* config/sh/superh.h: Removed some chaff.
* config/sh/sh.opt: Add m4-[1234]00* options.
* config/sh/sh.c (sh_handle_option): Likewise.
* config/sh/t-sh (IC_EXTRA_PARTS, EXTRA_MULTILIB_PARTS): Define.
(ic_invalidate_array_4-100.o): New rule.
($(T)libic_invalidate_array_4-100.a): Likewise.
(ic_invalidate_array_4-200.o): Likewise.
($(T)libic_invalidate_array_4-200.a): Likewise.
(ic_invalidate_array_4a.o): Likewise.
($(T)libic_invalidate_array_4a.a): Likewise.
* config/sh/t-elf (EXTRA_MULTILIB_PARTS): Add IC_EXTRA_PARTS.
* config/sh/embed-elf.h (LIBGCC_SPEC): Add clauses for m4-100*,
m4-200*, and m4a*.
* config/sh/crt1.asm: Merged in profiling code.
* config/sh/superh.h (STARTFILE_SPEC): Override.
* config/sh/t-superh: Override EXTRA_MULTILIB_PARTS.
Add rules for $(T)crt1-mmu.o, $(T)gcrt1-mmu.o and $(T)gcrt1.o.
* config.gcc (sh*-superh-elf): Add t-superh to tmake_file.
* t-sh (MULTILIB_MATCHES): Add sh4-[1245]00* variants.
* config/sh/t-superh: Removed now-redundant MULTILIB_OPTIONS /
MULTILIB_DIRNAMES / MULTILIB_MATCHES settings.
* sh.opt (mpretend-cmove): New option.
* sh.h (OPERRIDE_OPTIONS): Switch it off if not TARGET_SH1.
* sh.md (movsicc_t_false, movsicc_t_tru): New patterns.
(movsicc): Add TARGET_PRETEND_CMOVE code.
Co-Authored-By: J"orn Rennecke <joern.rennecke@st.com>
From-SVN: r112421
Andreas Krebbel [Mon, 27 Mar 2006 13:15:46 +0000 (13:15 +0000)]
s390-protos.h (s390_hard_regno_mode_ok, [...]): New function prototypes.
2006-03-27 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390-protos.h (s390_hard_regno_mode_ok,
s390_class_max_nregs): New function prototypes.
* config/s390/s390.c (REGNO_PAIR_OK): New macro.
(s390_hard_regno_mode_ok, s390_class_max_nregs): New functions.
* config/s390/s390.h (HARD_REGNO_NREGS, HARD_REGNO_MODE_OK,
CLASS_MAX_NREGS): Macro bodies replaced by function calls.
From-SVN: r112418
Jakub Jelinek [Mon, 27 Mar 2006 12:32:51 +0000 (14:32 +0200)]
io.c (check_io_constraints): Don't look at dt->advance->value.charater.string, unless it is a CHARACTER constant.
* io.c (check_io_constraints): Don't look at
dt->advance->value.charater.string, unless it is a CHARACTER
constant.
* gfortran.dg/advance_2.f90: New test.
* gfortran.dg/advance_3.f90: New test.
From-SVN: r112417
Jakub Jelinek [Mon, 27 Mar 2006 12:27:40 +0000 (14:27 +0200)]
f95-lang.c (gfc_get_alias_set): New function.
* f95-lang.c (gfc_get_alias_set): New function.
(LANG_HOOKS_GET_ALIAS_SET): Define.
* gfortran.fortran-torture/execute/equiv_5.f: New test.
From-SVN: r112416
Jerry DeLisle [Mon, 27 Mar 2006 06:55:20 +0000 (06:55 +0000)]
re PR libfortran/26661 (Sequential formatted read goes too far)
2006-03-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26661
PR libgfortran/26880
* gfortran.dg/read_x_past.f: New test.
From-SVN: r112410
Geoffrey Keating [Mon, 27 Mar 2006 06:14:55 +0000 (06:14 +0000)]
darwin-
20040809-2.c: Don't expect default debugging to be STABS.
* gcc.dg/darwin-
20040809-2.c: Don't expect default debugging
to be STABS.
From-SVN: r112409
Geoffrey Keating [Mon, 27 Mar 2006 06:09:48 +0000 (06:09 +0000)]
dwarf2out.c (add_location_or_const_value_attribute): Call tree_add_const_value_attribute if nothing else works.
* dwarf2out.c (add_location_or_const_value_attribute): Call
tree_add_const_value_attribute if nothing else works.
(reference_to_unused): New.
(rtl_for_decl_init): Use reference_to_unused to decide whether
to output an initializer.
From-SVN: r112408
Jerry DeLisle [Mon, 27 Mar 2006 05:59:37 +0000 (05:59 +0000)]
re PR libfortran/26880 (Can't read after non-advancing write with rewind)
2006-03-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26880
* io/file_pos.c (st_rewind): Clear read_bad flag.
From-SVN: r112407
GCC Administrator [Mon, 27 Mar 2006 00:17:37 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112405
Alan Modra [Sun, 26 Mar 2006 22:48:22 +0000 (22:48 +0000)]
re PR target/26459 (gcc fails to build on powerpc e500-double targets)
PR target/26459
* config/rs6000/rs6000.md (DF reg move peephole): Prevent
peephole removing spe frob_di_df_2.
From-SVN: r112400
Sebastian Pop [Sun, 26 Mar 2006 20:48:05 +0000 (22:48 +0200)]
tree-data-ref.c: Rename DDR_SIZE_VECT to DDR_NB_LOOPS.
* tree-data-ref.c: Rename DDR_SIZE_VECT to DDR_NB_LOOPS.
(subscript_dependence_tester_1): Declared.
(print_dir_vectors, print_dist_vectors): New.
(debug_data_dependence_relation): New.
(dump_data_dependence_relation): Print more details.
(initialize_data_dependence_relation): Initialize DDR_LOOP_NEST.
(analyze_subscript_affine_affine): Don't ICE when gcd_alpha_beta is 0.
(save_dist_v, save_dir_v, add_outer_distances,
build_classic_dist_vector_1): New.
(build_classic_dist_vector): Rewrite to work on DDR_LOOP_NEST.
Don't test for lambda_vector_lexico_pos.
(same_access_functions, add_multivariate_self_dist,
add_other_self_distances, dir_from_dist): New.
(build_classic_dir_vector): Replace implementation almost identical to
build_classic_dist_vector with a walk of DDR_DIST_VECTS with a call to
dir_from_dist.
(subscript_dependence_tester_1): New.
(subscript_dependence_tester): Handle the lexicographically negative
distance vectors by recomputing the dependence relation.
(compute_affine_dependence): Remove parameter loop_nest_depth.
(compute_self_dependence): Don't call compute_subscript_distance.
(compute_all_dependences): Remove parameters nb_loops, loop_nest_depth.
Add a parameter for the loop_nest.
(find_loop_nest_1, find_loop_nest): New.
(compute_data_dependences_for_loop): Compute the loop nest, and give
up if the nest is not well formed.
* tree-data-ref.h (loop_p): New.
(struct data_dependence_relation): Replace size_vect field with
loop_nest, a vec of loops.
(DDR_SIZE_VECT): Renamed DDR_NB_LOOPS.
(DDR_LOOP_NEST): New.
(print_dir_vectors, print_dist_vectors,
debug_data_dependence_relation): Declared.
(index_in_loop_nest): New.
* tree-vect-analyze.c (vect_analyze_data_ref_dependence): Use
DDR_LOOP_NEST and index_in_loop_nest to determine the dependence
distance.
From-SVN: r112399
David Edelsohn [Sun, 26 Mar 2006 17:15:43 +0000 (17:15 +0000)]
dwarf-1.m: Skip on AIX.
* objc.dg/dwarf-1.m: Skip on AIX.
* objc.dg/dwarf-2.m: Skip on AIX.
From-SVN: r112398
Steven G. Kargl [Sun, 26 Mar 2006 05:20:09 +0000 (05:20 +0000)]
re PR fortran/26816 ([4.1 only] FLOAT Intrinsic does not work with Integer Halfword input)
PR fortran/26816
* intrinsic.c (add_functions): Allow FLOAT to accept all integer kinds.
* intrinsic.texi: Document FLOAT.
* gfortran.dg/float_1.f90: New test.
From-SVN: r112392
Jerry DeLisle [Sun, 26 Mar 2006 02:15:44 +0000 (02:15 +0000)]
re PR libfortran/26661 (Sequential formatted read goes too far)
2006-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/26661
* io/io.h: Add read_sf so it can be used by read_x.
* io/transfer.c (read_sf): Pass no_error flag to read_sf. Use it to
break out rather than error on EOF or EOR conditions.
(read_block): Update call to read_sf.
(read_block_direct): Ditto.
* io/read.c (read_x): Use the modified read_sf instead of read_block.
From-SVN: r112390
GCC Administrator [Sun, 26 Mar 2006 00:17:15 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112388
Steven G. Kargl [Sat, 25 Mar 2006 22:08:50 +0000 (22:08 +0000)]
transfer_array_intrinsic_1.f90: Restrict to i?86 and X86_64 targets.
* gfortran.dg/transfer_array_intrinsic_1.f90: Restrict to i?86 and
X86_64 targets.
* gfortran.dg/transfer_array_intrinsic_2.f90: Ditto.
From-SVN: r112384
Adam Nemet [Sat, 25 Mar 2006 21:58:01 +0000 (21:58 +0000)]
simplify-rtx.c (simplify_relational_operation): Call simplify_relational_operation_1 even if mode is VOIDmode.
* simplify-rtx.c (simplify_relational_operation): Call
simplify_relational_operation_1 even if mode is VOIDmode.
From-SVN: r112383
Thomas Koenig [Sat, 25 Mar 2006 21:31:48 +0000 (21:31 +0000)]
re PR libfortran/26735 ([4.1 only] -fconvert=swap and implied open)
2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/26735
* io/transfer.c (data_transfer_init): Set u_flags.convert
on an unopened unit if specified by environment variable
(via get_unformatted_convert) or by compile-time option.
2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/26735
* gfortran.dg/convert_implied_open.f90: New test case.
From-SVN: r112382
Thomas Koenig [Sat, 25 Mar 2006 21:15:48 +0000 (21:15 +0000)]
re PR fortran/26769 (Implement transpose() and reshape() for real instead of using integer)
2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/26769
* iresolve.c (gfc_resolve_reshape): Remove doubling of
kind for complex. For real(kind=10), call reshape_r10.
(gfc_resolve_transpose): For real(kind=10), call
transpose_r10.
2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/26769
* Makefile.am: Add transpose_r10.c and reshape_r10.c.
* aclocal.m4: Regenerate using aclocal 1.9.3.
* Makefile.in: Regenerate using automake 1.9.3.
* m4/iparm.m4 (rtype_ccode): If rtype_letter is `i',
evaluate to rtype_kind, otherwise to rtype_code.
* generated/transpose_r10.c: Add.
* generated/reshape_r10.c: Add.
2006-03-25 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/26769
* gfortran.dg/transpose_reshape_r10.f90: New test case.
From-SVN: r112381
Daniel Berlin [Sat, 25 Mar 2006 19:17:26 +0000 (19:17 +0000)]
re PR tree-optimization/26804 (Alias Time explosion)
2006-03-25 Daniel Berlin <dberlin@dberlin.org>
PR tree-optimization/26804
* tree.h (DECL_CALL_CLOBBERED): New macro.
(tree_decl_common): Add call_clobbered_flag.
* tree-flow-inline.h (is_call_clobbered): Use DECL_CALL_CLOBBERED.
(mark_call_clobbered): Set DECL_CALL_CLOBBERED.
(clear_call_clobbered): Clear DECL_CALL_CLOBBERED.
(mark_non_addressable): Ditto.
* tree-ssa.c (verify_call_clobbered): New function.
(verify_alias_info): Use it.
* tree-pass.h (pass_reset_cc_flags): New prototype.
* tree-ssa-alias.c (pass_reset_cc_flags): New structure.
(reset_cc_flags): New function.
* passes.c (init_optimization_passes): Call reset_cc_flags after
initializing referenced_vars.
From-SVN: r112380
Uros Bizjak [Sat, 25 Mar 2006 17:32:34 +0000 (18:32 +0100)]
re PR middle-end/26717 (complex/complex gives a REAL_CST)
PR middle-end/26717
* fold-const.c (fold_binary) [RDIV_EXPR]: Do not optimize A / A
to 1.0 for non-real operands. Implement A / A optimization for
complex operands.
Co-Authored-By: Roger Sayle <roger@eyesopen.com>
From-SVN: r112379
H.J. Lu [Sat, 25 Mar 2006 15:34:00 +0000 (15:34 +0000)]
i386.c (size_cost): Correct the comment for cost of storing fp registers.
2006-03-25 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (size_cost): Correct the comment for
cost of storing fp registers.
(i386_cost): Likewise.
(i486_cost): Likewise.
(pentium_cost): Likewise.
(pentiumpro_cost): Likewise.
(k6_cost): Likewise.
(athlon_cost): Likewise.
(k8_cost): Likewise.
(pentium4_cost): Likewise.
(nocona_cost): Likewise.
(generic64_cost): Likewise.
(generic32_cost): Likewise.
From-SVN: r112378
Roger Sayle [Sat, 25 Mar 2006 15:01:42 +0000 (15:01 +0000)]
dependency.c (gfc_check_dependency): Improve handling of pointers...
* dependency.c (gfc_check_dependency): Improve handling of pointers;
Two variables of different types can't have a dependency, and two
variables with the same symbol are equal, even if pointers.
* gfortran.dg/dependency_12.f90: New test case.
From-SVN: r112377
David Daney [Sat, 25 Mar 2006 01:53:48 +0000 (01:53 +0000)]
re PR libgcj/26858 (NullPointerException not generated for large classes...)
* testsuite/libjava.lang/PR26858.java: New test.
* testsuite/libjava.lang/PR26858.out: Ditto.
* testsuite/libjava.lang/PR26858.xfail: Ditto.
From-SVN: r112374
Roger Sayle [Sat, 25 Mar 2006 01:28:11 +0000 (01:28 +0000)]
gfortran.h (gfc_symbol): Add a new "forall_index" bit field.
* gfortran.h (gfc_symbol): Add a new "forall_index" bit field.
* match.c (match_forall_iterator): Set forall_index field on
the iteration variable's symbol.
* dependency.c (contains_forall_index_p): New function to
traverse a gfc_expr to check whether it contains a variable
with forall_index set in it's symbol.
(gfc_check_element_vs_element): Return GFC_DEP_EQUAL for scalar
constant expressions that don't variables used as FORALL indices.
* gfortran.dg/dependency_9.f90: New (resurected) test case.
From-SVN: r112373
Geoffrey Keating [Sat, 25 Mar 2006 00:54:40 +0000 (00:54 +0000)]
dwarf2out.c (is_c_family): Understand new DWARF3 language types.
2006-03-24 Geoffrey Keating <geoffk@apple.com>
* dwarf2out.c (is_c_family): Understand new DWARF3 language types.
(is_cxx): Likewise.
(gen_compile_unit_die): Use new language types for Objective-C and
Objective-C++.
(dwarf2out_decl): Use is_cxx rather than testing explicitly against
DW_LANG_C_plus_plus.
Index: testsuite/ChangeLog
2006-03-24 Geoffrey Keating <geoffk@apple.com>
* objc.dg/dwarf-2.m: New.
* obj-c++.dg/dwarf-2.mm: New.
From-SVN: r112372
GCC Administrator [Sat, 25 Mar 2006 00:17:28 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112370
Jeff Law [Fri, 24 Mar 2006 23:21:27 +0000 (16:21 -0700)]
tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt directly.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Don't call update_stmt
directly. Call mark_new_vars_to_rename slightly earlier.
* gcc.c-torture/pr26840.c: New test.
From-SVN: r112365
Jim Blandy [Fri, 24 Mar 2006 22:39:45 +0000 (22:39 +0000)]
pex-common.c (pex_run): Simplify output name handling.
2006-03-24 Jim Blandy <jimb@codesourcery.com>
* pex-common.c (pex_run): Simplify output name handling.
From-SVN: r112363
Geoffrey Keating [Fri, 24 Mar 2006 22:03:19 +0000 (22:03 +0000)]
Back out previous accidental change.
From-SVN: r112362
Geoffrey Keating [Fri, 24 Mar 2006 21:59:48 +0000 (21:59 +0000)]
[multiple changes]
2006-03-23 Geoffrey Keating <geoffk@apple.com>
PR 26793
* config/t-darwin (crt3.o): Work around bug 26840.
* config/darwin-crt3.c: Rewrite.
* config/darwin.h (STARTFILE_SPEC): Don't use -l for crt3.o.
Index: gcc/testsuite/ChangeLog
2006-03-24 Geoffrey Keating <geoffk@apple.com>
* g++.old-deja/g++.other/init19.C: New.
From-SVN: r112361
Carlos O'Donell [Fri, 24 Mar 2006 21:17:41 +0000 (21:17 +0000)]
invoke.texi: Document -femit-class-debug-always
gcc/
2006-03-24 Carlos O'Donell <carlos@codesourcery.com>
* doc/invoke.texi: Document -femit-class-debug-always
* common.opt: Add -femit-class-debug-always.
gcc/cp/
2006-03-24 Carlos O'Donell <carlos@codesourcery.com>
* search.c (maybe_suppress_debug_info): If
flag_emit_class_debug_always then don't suppress.
From-SVN: r112360
David Edelsohn [Fri, 24 Mar 2006 20:49:29 +0000 (20:49 +0000)]
spbp.C: Skip on AIX.
* g++.dg/eh/spbp.C: Skip on AIX.
From-SVN: r112359
Andreas Krebbel [Fri, 24 Mar 2006 19:09:11 +0000 (19:09 +0000)]
s390.c (s390_decompose_address): Allow SImode for index and base register.
2006-03-24 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (s390_decompose_address): Allow SImode for
index and base register.
(s390_expand_plug_operand, legitimate_address_p, preferred_la_operand_p,
print_operand_address, print_operand): Replaced REG_OK_FOR_BASE_STRICT_P
with REGNO_OK_FOR_BASE_P and REG_OK_FOR_INDEX_STRICT_P with
REGNO_OK_FOR_INDEX_P.
* config/s390/s390.h (REGNO_OK_FOR_INDEX_P): Replaced check with
ADDR_REGNO_P.
(REG_OK_FOR_INDEX_NONSTRICT_P, REG_OK_FOR_BASE_NONSTRICT_P,
REG_OK_FOR_INDEX_STRICT_P, REG_OK_FOR_BASE_STRICT_P, REG_OK_FOR_INDEX_P,
REG_OK_FOR_BASE_P): Definitions removed.
From-SVN: r112357
Andreas Tobler [Fri, 24 Mar 2006 17:59:29 +0000 (18:59 +0100)]
configure.ac (THREADS): Add REENTRANT for *-*-hpux11*.
2006-03-24 Andreas Tobler <a.tobler@schweiz.ch>
John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* configure.ac (THREADS): Add REENTRANT for *-*-hpux11*.
Warn about POSIX threads not being supported for *-*-hpux10*.
* configure: Regenerate.
Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
From-SVN: r112355
Denis Chertykov [Fri, 24 Mar 2006 16:30:19 +0000 (19:30 +0300)]
avr-protos.h (extra_constraint): Delete.
* config/avr/avr-protos.h (extra_constraint): Delete.
(extra_constraint_Q): New declaration.
* config/avr/constraints.md: New file.
* config/avr/avr.md: Include it.
(REG_X, REG_Y, REG_Z, REG_W): New constants.
(TMP_REGNO, ZERO_REGNO): Likewise.
(UNSPEC_STRLEN, UNSPEC_INDEX_JMP): Likewise.
* config/avr/avr.c (avr_reg_class_from_letter): Delete.
(extra_constraint): Delete.
(extra_constraint_Q): Test for memory constraint 'Q'.
* config/avr/avr.h (REG_X,REG_Y,REG_Z,REG_W): Delete.
(REG_CLASS_FROM_LETTER): Delete.
(CONST_OK_FOR_LETTER_P): Delete.
(CONST_DOUBLE_OK_FOR_LETTER_P): Delete.
(EXTRA_CONSTRAINT): Delete.
(TMP_REGNO): Delete.
(ZERO_REGNO): Delete.
From-SVN: r112352
Jakub Jelinek [Fri, 24 Mar 2006 16:14:40 +0000 (17:14 +0100)]
re PR middle-end/26611 (openmp gomp ICE at gimplify.c:4257)
PR middle-end/26611
* gimplify.c (gimplify_bind_expr): Only call omp_add_variable on
non-global variables that don't have DECL_SEEN_IN_BIND_EXPR_P bit
set yet or weren't marked as local yet.
* g++.dg/gomp/pr26611-1.C: New test.
* g++.dg/gomp/pr26611-2.C: New test.
From-SVN: r112351
Bernd Schmidt [Fri, 24 Mar 2006 15:53:23 +0000 (15:53 +0000)]
regrename.c (scan_rtx_address): Initialize a variable to shut up the compiler.
* regrename.c (scan_rtx_address): Initialize a variable to shut up
the compiler.
From-SVN: r112350
Eric Botcazou [Fri, 24 Mar 2006 10:09:01 +0000 (10:09 +0000)]
rs6000-protos.h (rs6000_offsettable_memref_p): Declare.
* config/rs6000/rs6000-protos.h (rs6000_offsettable_memref_p): Declare.
(rs6000_legitimate_small_data_p): Delete.
* config/rs6000/rs6000.c (rs6000_offsettable_memref_p): New predicate.
(rs6000_legitimate_small_data_p): Rename to legitimate_small_data_p
and make static. Add forward declaration. Update uses.
(rs6000_split_multireg_move): Use rs6000_offsettable_memref_p instead
of offsettable_memref_p.
* config/rs6000/rs6000.md (movdf_hardfloat32): Revert 2005-08-23 fix.
Use rs6000_offsettable_memref_p instead of a less accurate predicate.
From-SVN: r112349
Jeff Law [Fri, 24 Mar 2006 07:51:32 +0000 (00:51 -0700)]
tree-ssa-dom.c (propagate_rhs_into_lhs): Temporarily work around bug in immediate-use iterator.
* tree-ssa-dom.c (propagate_rhs_into_lhs): Temporarily work
around bug in immediate-use iterator.
* gcc.c-torture/compile/pr26833.c: New test.
* gfortran.fortran-torture/compile/pr26806.f90: New test.
From-SVN: r112348
Mark Mitchell [Fri, 24 Mar 2006 01:59:35 +0000 (01:59 +0000)]
re PR libstdc++/20448 (locale testsuite fails when GCC is configured with --disable-nls)
PR libstdc++/20448
PR libstdc++/20451
* scripts/testsuite_flags.in (--cxxflags): Don't define LOCALEDIR.
* testsuite/lib/libstdc++.exp (libstdc++_init): Always define
LOCALEDIR to ".".
(v3-build_support): Build MO files.
Co-Authored-By: Joseph Myers <joseph@codesourcery.com>
From-SVN: r112346
GCC Administrator [Fri, 24 Mar 2006 00:17:25 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112344
Alan Modra [Thu, 23 Mar 2006 23:15:46 +0000 (23:15 +0000)]
ffitarget.h (enum ffi_abi): Add FFI_LINUX.
* src/powerpc/ffitarget.h (enum ffi_abi): Add FFI_LINUX. Default
for 32-bit using IBM extended double format. Fix FFI_LAST_ABI.
* src/powerpc/ffi.c (ffi_prep_args_SYSV): Handle linux variant of
FFI_TYPE_LONGDOUBLE.
(ffi_prep_args64): Assert using IBM extended double.
(ffi_prep_cif_machdep): Don't munge FFI_TYPE_LONGDOUBLE type.
Handle FFI_LINUX FFI_TYPE_LONGDOUBLE return and args.
(ffi_call): Handle FFI_LINUX.
(ffi_closure_helper_SYSV): Non FFI_LINUX long double return needs
gpr3 return pointer as for struct return. Handle FFI_LINUX
FFI_TYPE_LONGDOUBLE return and args. Don't increment "nf"
unnecessarily.
* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Load both f1 and f2
for FFI_TYPE_LONGDOUBLE. Move epilogue insns into case table.
Don't use r6 as pointer to results, instead use sp offset. Don't
make a special call to load lr with case table address, instead
use offset from previous call.
* src/powerpc/sysv.S (ffi_call_SYSV): Save long double return.
* src/powerpc/linux64.S (ffi_call_LINUX64): Simplify long double
return.
From-SVN: r112340
Alan Modra [Thu, 23 Mar 2006 22:23:24 +0000 (22:23 +0000)]
re PR target/26607 (Illegal inlined assembler on config/rs6000/darwin-ldouble.c)
PR target/26607
* config/rs6000/darwin-ldouble.c: Don't compile when __NO_FPRS__
or __LITTLE_ENDIAN__.
From-SVN: r112334
Joern Rennecke [Thu, 23 Mar 2006 22:10:41 +0000 (22:10 +0000)]
Update FSF address.
From-SVN: r112332
J"orn Rennecke [Thu, 23 Mar 2006 21:39:32 +0000 (21:39 +0000)]
divtab-sh4.c, [...]: New files.
2006-03-23 J"orn Rennecke <joern.rennecke@st.com>
* config/sh/divtab-sh4.c, config/sh/divcost-analysis: New files.
* config/sh/lib1funcs.asm (div_table): Add !__SH5__ variant.
* config/sh/t-sh (LIB1ASMFUNCS): Add _div_table.
* config/sh/sh.opt (mdiv=): Amend description.
* config/sh/sh.h (TARGET_DIVIDE_CALL_DIV1): New macro.
(TARGET_DIVIDE_CALL_FP, TARGET_DIVIDE_CALL_TABLE): Likewise.
(sh_divide_strategy_e): Add new members SH_DIV_CALL_DIV1,
SH_DIV_CALL_FP, SH_DIV_CALL_TABLE and SH_DIV_INTRINSIC.
(OVERRIDE_OPTIONS): Also process sh_div_str for TARGET_SH1.
Calculate sh_divsi3_libfunc using TARGET_DIVIDE_* macros.
* config/sh/sh.md (udivsi3_i4_int, divsi3_i4_int): New patterns.
(udivsi3, divsi3): Use them. Check TARGET_DIVIDE_CALL_TABLE /
TARGET_DIVIDE_CALL_FP.
From-SVN: r112331
Maxim Kuvyrkov [Thu, 23 Mar 2006 18:23:53 +0000 (18:23 +0000)]
haifa-sched.c (choose_ready): Fix type of the local variable.
2006-03-23 Maxim Kuvyrkov <mkuvyrkov@ispras.ru>
* haifa-sched.c (choose_ready): Fix type of the local variable.
Move local variables. Add comment.
(check_reg_live): Change signature. Make callable from debugger.
* sched-int.h (check_reg_live): Update signature.
* sched-ebb.c (check_reg_live): Update parameters.
* sched-rgn.c (check_reg_live): Ditto.
(region_head_or_leaf_p): Check pointer before dereferencing.
* config/ia64/ia64.c (ia64_set_sched_flags): Disable data speculation
before reload on optimization levels below 1.
From-SVN: r112328
Richard Henderson [Thu, 23 Mar 2006 15:51:10 +0000 (07:51 -0800)]
alpha.c (alpha_legitimate_constant_p): Reject tls symbols.
* config/alpha/alpha.c (alpha_legitimate_constant_p): Reject
tls symbols.
From-SVN: r112323
Richard Henderson [Thu, 23 Mar 2006 15:49:00 +0000 (07:49 -0800)]
re PR target/26347 (hidden weak extern functions fail regardless of existence on alpha/linux)
PR target/26347
* config/alpha/predicates.md (local_symbolic_operand): Reject
weak symbols.
From-SVN: r112322
Andrew Pinski [Thu, 23 Mar 2006 15:09:51 +0000 (15:09 +0000)]
re PR tree-optimization/26795 (ACATS ICE
c37213d on x86 in valid_in_set, at tree-ssa-pre.c:1579)
2006-03-23 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/26795
* tree-ssa-pre.c (create_value_expr_from): Don't reject
expressions which have overflowed constants.
From-SVN: r112319
Zdenek Dvorak [Thu, 23 Mar 2006 10:45:09 +0000 (11:45 +0100)]
cse.c (cse_end_of_basic_block): Do not check for LOOP_END note.
* cse.c (cse_end_of_basic_block): Do not check for LOOP_END note.
From-SVN: r112317
Zdenek Dvorak [Thu, 23 Mar 2006 10:33:38 +0000 (11:33 +0100)]
cfgloopmanip.c (create_loop_notes): Removed.
* cfgloopmanip.c (create_loop_notes): Removed.
* final.c (final_scan_insn): Do not handle loop notes.
* jump.c (squeeze_notes): Ditto.
* cfglayout.c (skip_insns_after_block,
duplicate_insn_chain): Ditto.
* cfgcleanup.c (rest_of_handle_jump2): Do not call
create_loop_notes.
* cfgloop.h (create_loop_notes): Declaration removed.
From-SVN: r112316
Richard Sandiford [Thu, 23 Mar 2006 09:29:15 +0000 (09:29 +0000)]
varasm.c (output_constant_pool): Restore fnname and fndecl arguments.
* varasm.c (output_constant_pool): Restore fnname and fndecl
arguments.
(assemble_start_function): Adjust call accordingly.
(assemble_end_function): Likewise.
From-SVN: r112315
Jason Merrill [Thu, 23 Mar 2006 04:20:38 +0000 (23:20 -0500)]
name-lookup.c (push_namespace_with_attribs): Only apply hidden visibility to anonymous namespaces if HAVE_GAS_HIDDEN.
2006-03-22 Jason Merrill <jason@redhat.com>
* name-lookup.c (push_namespace_with_attribs): Only apply hidden
visibility to anonymous namespaces if HAVE_GAS_HIDDEN.
From-SVN: r112312
GCC Administrator [Thu, 23 Mar 2006 00:17:34 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112310
Kaveh R. Ghazi [Wed, 22 Mar 2006 23:18:38 +0000 (23:18 +0000)]
endfile_2.f90: Delete temp file.
* gfortran.dg/endfile_2.f90: Delete temp file.
From-SVN: r112302
Volker Reichelt [Wed, 22 Mar 2006 21:45:13 +0000 (21:45 +0000)]
re PR c++/26790 (ICE with -fmudflap returning an incomplete struct)
PR mudflap/26790
* tree-mudflap.c (mudflap_finish_file): Skip erroneous objects.
From-SVN: r112298
Volker Reichelt [Wed, 22 Mar 2006 21:42:34 +0000 (21:42 +0000)]
re PR c++/26789 (ICE on incomplete struct with -fmudflap)
PR mudflap/26789
* tree-mudflap.c (mf_xform_derefs_1): Return early on error_mark_node.
From-SVN: r112296
Volker Reichelt [Wed, 22 Mar 2006 19:36:22 +0000 (19:36 +0000)]
re PR driver/22600 (Exit code should be different from 1 for internal compiler error)
PR driver/22600
* system.h (ICE_EXIT_CODE): New macro.
* diagnostic.c (diagnostic_count_diagnostic): Exit with ICE_EXIT_CODE.
(diagnostic_action_after_output): Likewise.
* gcc.c (fatal_ice): New function.
(execute): Use it instead of fatal.
(fancy_abort): Likewise.
* doc/invoke.texi (-pass-exit-codes): Document return code for ICEs.
* fortran/error.c (gfc_fatal_error): Return ICE_EXIT_CODE instead of 4.
From-SVN: r112292
Thomas Koenig [Wed, 22 Mar 2006 19:09:11 +0000 (19:09 +0000)]
[multiple changes]
2006-03-22 Thomas Koenig <Thomas.Koenig@onlien.de>
PR fortran/19303
* gfortran.h (gfc_option_t): Add record_marker.
* lang.opt: Add -frecord-marker=4 and -frecord-marker=8.
* trans-decl.c: Add gfor_fndecl_set_record_marker.
(gfc_build_builtin_function_decls): Set
gfor_fndecl_set_record_marker.
(gfc_generate_function_code): If we are in the main program
and -frecord-marker was provided, call set_record_marker.
* options.c (gfc_handle_option): Add handling for
-frecord-marker=4 and -frecord-marker=8.
* invoke.texi: Document -frecord-marker.
2006-03-22 Thomas Koenig <Thomas.Koenig@onlien.de>
PR fortran/19303
* libgfortran.h (compile_options_t): Add record_marker.
* runtime/compile_options.c (set_record_marker):
New function.
* io/open.c: If we have four-byte record markers, use
GFC_INTEGER_4_HUGE as default record length.
* io/file_pos.c (unformatted_backspace): Handle
different size record markers.
* io/transfer.c (us_read): Likewise.
(us_write): Likewise.
(next_record_r): Likewise.
(write_us_marker): Likewise.
(next_record_w): Likewise.
2006-03-22 Thomas Koenig <Thomas.Koenig@online.de>
PR fortran/19303
* gfortran.dg/record_marker_1.f90: New test case.
* gfortran.dg/record_marker_2.f: New test case.
* gfortran.dg/record_marker_3.f90: New test case.
From-SVN: r112290
Jeff Law [Wed, 22 Mar 2006 18:00:50 +0000 (11:00 -0700)]
loop-unroll.c (analyze_iv_to_split_insn): Handle iv_analyze_result returning false.
* loop-unroll.c (analyze_iv_to_split_insn): Handle
iv_analyze_result returning false.
From-SVN: r112289
Janne Blomqvist [Wed, 22 Mar 2006 16:00:23 +0000 (18:00 +0200)]
MAINTAINERS (Write After Approval): Remove myself.
2006-03-22 Janne Blomqvist <jb@gcc.gnu.org>
* MAINTAINERS (Write After Approval): Remove myself.
(Language Front End Maintainers): Add myself as fortran 95 maintainer.
From-SVN: r112287
Paolo Carlini [Wed, 22 Mar 2006 15:13:46 +0000 (15:13 +0000)]
re PR libstdc++/26777 (sync_with_stdio(false) triggers bug with sgetc and pubseekoff)
2006-03-22 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26777
* include/bits/fstream.tcc (basic_filebuf<>::_M_seek): Check
the return value of _M_file.seekoff.
* testsuite/27_io/basic_filebuf/seekoff/char/26777.cc: New.
From-SVN: r112286
Jie Zhang [Wed, 22 Mar 2006 14:53:12 +0000 (14:53 +0000)]
* config/bfin/bfin.h (ASM_FORMAT_PRIVATE_NAME): Remove.
From-SVN: r112285
Richard Henderson [Wed, 22 Mar 2006 12:50:45 +0000 (04:50 -0800)]
re PR middle-end/26084 (ICE (segfault) on C++ OpenMP code)
PR middle-end/26084
* except.c (duplicate_eh_regions_0): New.
(duplicate_eh_region_1): Duplicate the children of the node as
well as the node itself. Link them up properly.
(duplicate_eh_region_2): Merge into ...
(duplicate_eh_regions): ... here. Take copy_region argument, and
copy only a sub-tree if asked. Simplify copying and fixup.
(eh_region_outer_p): New.
* except.h (duplicate_eh_regions): Update decl.
(eh_region_outer_p): Declare.
* omp-low.c (lower_omp_single): Fix eh region placement wrt OMP_RETURN.
(lower_omp_master): Likewise.
(lower_omp_ordered): Likewise.
* tree-cfg.c (struct move_stmt_d): Add new_label_map.
(move_stmt_r): Use it to remap labels. Handle recursion vs
remap_decls_p properly.
(move_block_to_fn): Pass in new_label_map. Remap RESX_EXPR.
(find_outermost_region_in_block): New.
(new_label_mapper): New.
(move_sese_region_to_fn): Copy eh information to the new function
properly.
* tree-inline.c (copy_cfg_body): Update for new duplicate_eh_regions
argument.
* tree-pretty-print.c (dump_generic_node): Dump RESX_EXPR region
number.
From-SVN: r112283
Richard Biener [Wed, 22 Mar 2006 11:01:38 +0000 (11:01 +0000)]
ChangeLog: Revert bogus part of r112256.
2006-03-22 Richard Guenther <rguenther@suse.de>
* ChangeLog: Revert bogus part of r112256.
From-SVN: r112282
Richard Sandiford [Wed, 22 Mar 2006 07:54:45 +0000 (07:54 +0000)]
md.texi (-mshared): Mention that -mshared code can be linked into shared libraries.
* doc/md.texi (-mshared): Mention that -mshared code can be linked
into shared libraries.
From-SVN: r112281
Richard Sandiford [Wed, 22 Mar 2006 07:23:00 +0000 (07:23 +0000)]
md.texi: Refer to i386/constraints.md instead of i386/predicates.md.
* doc/md.texi: Refer to i386/constraints.md instead of
i386/predicates.md.
* config/i386/constraints.md: New file, extracted from...
* config/i386/predicates.md: ...here.
* config/i386/i386.md: Include constraints.md.
From-SVN: r112280
Richard Sandiford [Wed, 22 Mar 2006 07:21:00 +0000 (07:21 +0000)]
predicates.md (const_call_insn_operand): Allow direct calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
* config/mips/predicates.md (const_call_insn_operand): Allow direct
calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
* config/mips/mips.md (jal_macro): Test TARGET_ABSOLUTE_ABICALLS.
Use TARGET_OLDABI instead of !TARGET_NEWABI.
(loadgp): Use mips_current_loadgp_style.
(loadgp_noshared): New pattern.
(sibcall_internal): Use MIPS_CALL.
(sibcall_value_internal): Likewise.
(sibcall_value_multiple_internal): Likewise.
(call_internal): Likewise.
(call_value_internal): Likewise.
(call_value_multiple_internal): Likewise.
(call_split): Use MIPS_CALL and add an 'S' constraint.
(call_value_split): Likewise.
(call_value_multiple_split): Likewise.
* config/mips/mips.opt (-mabicalls): Tweak docstring.
(-mshared): New option.
* config/mips/mips-protos.h (mips_loadgp_style): New enum.
(mips_current_loadgp_style): Declare.
* config/mips/mips.c (mips_classify_symbol): Avoid using
SYMBOL_GOT_LOCAL if TARGET_ABSOLUTE_ABICALLS. Use SYMBOL_GENERAL
rather than SYMBOL_GOT_GLOBAL for locally-binding symbols if
TARGET_ABSOLUTE_ABICALLS.
(override_options): Adjust comments. Improve the warning that is
issued when -mabicalls and -G are used together.
(mips_file_start): Remove comment.
(mips_current_loadgp_style): New function.
(mips_gnu_local_gp): New variable.
(mips_emit_loadgp): Use mips_current_loadgp_style. Handle
LOADGP_ABSOLUTE.
(mips_output_function_prologue): Use mips_current_laodgp_style.
(mips_expand_prologue): Call mips_emit_loadgp before emitting
the cprestore instruction.
(mips_extra_live_on_entry): Fix reversed test. Don't make $25
live for TARGET_ABSOLUTE_ABICALLS.
* config/mips/mips.h (TARGET_ABSOLUTE_ABICALLS): New macro.
(ASM_SPEC): Pass down -mshared and -mno-shared.
(MIPS_CALL): New macro.
* config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Remove __ABICALLS__
definition.
* doc/invoke.texi (-mabicalls): Update documentation.
(-mshared): Document.
From-SVN: r112279
Paul Thomas [Wed, 22 Mar 2006 05:13:13 +0000 (05:13 +0000)]
re PR fortran/17298 (gfortran ICE: Not Implemented: Scalarization of non-elemental intrinsic: __transfer1)
2006-03-22 Paul Thomas <pault@gcc.gnu.org>
PR fortran/17298
*trans-intrinsic.c (gfc_conv_intrinsic_array_transfer): New
function to implement array valued TRANSFER intrinsic.
(gfc_conv_intrinsic_function): Call the new function if TRANSFER
and non-null se->ss.
(gfc_walk_intrinsic_function): Treat TRANSFER as one of the
special cases by calling gfc_walk_intrinsic_libfunc directly.
2006-03-22 Paul Thomas <pault@gcc.gnu.org>
PR fortran/17298
* gfortran.dg/transfer_array_intrinsic_1.f90: New test.
* gfortran.dg/transfer_array_intrinsic_2.f90: New test.
From-SVN: r112278
Jason Merrill [Wed, 22 Mar 2006 05:08:48 +0000 (00:08 -0500)]
* builtins.c (expand_builtin_fork_or_exec): Fix pasto.
From-SVN: r112275
Jason Merrill [Wed, 22 Mar 2006 04:20:52 +0000 (23:20 -0500)]
re PR middle-end/20297 (#pragma GCC visibility isn't properly handled for builtin functions)
PR middle-end/20297
* expr.c (init_block_move_fn): Force default visibility.
(init_block_clear_fn): Likewise.
* builtins.c (expand_builtin_fork_or_exec): Likewise.
* targhooks.c (default_external_stack_protect_fail): Likewise.
From-SVN: r112270
GCC Administrator [Wed, 22 Mar 2006 00:17:30 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r112268
Janis Johnson [Tue, 21 Mar 2006 23:50:37 +0000 (23:50 +0000)]
gcc-dg.exp (cleanup-modules): New proc.
* lib/gcc-dg.exp (cleanup-modules): New proc.
* gfortran.dg/allocatable_function_1.f90,
gfortran.dg/allocate_char_star_scalar_1.f90,
gfortran.dg/assumed_charlen_function_1.f90,
gfortran.dg/assumed_dummy_1.f90,
gfortran.dg/assumed_shape_ranks_1.f90,
gfortran.dg/assumed_shape_ranks_2.f90,
gfortran.dg/assumed_size_dt_dummy.f90,
gfortran.dg/auto_char_dummy_array_1.f90,
gfortran.dg/auto_char_len_3.f90,
gfortran.dg/automatic_module_variable.f90,
gfortran.dg/bad_automatic_objects_1.f90,
gfortran.dg/char_array_constructor.f90,
gfortran.dg/char_array_structure_constructor.f90,
gfortran.dg/char_result_11.f90, gfortran.dg/char_result_9.f90,
gfortran.dg/contained_1.f90, gfortran.dg/convert_1.f90,
gfortran.dg/cray_pointers_5.f90, gfortran.dg/data_constraints_1.f90,
gfortran.dg/default_initialization.f90, gfortran.dg/der_charlen_1.f90,
gfortran.dg/der_io_2.f90, gfortran.dg/der_io_3.f90,
gfortran.dg/derived_pointer_recursion.f90,
gfortran.dg/derived_recursion.f90, gfortran.dg/der_pointer_1.f90,
gfortran.dg/der_pointer_3.f90, gfortran.dg/der_pointer_4.f90,
gfortran.dg/dummy_functions_1.f90,
gfortran.dg/elemental_initializer_1.f90,
gfortran.dg/elemental_non_intrinsic_dummy_1.f90,
gfortran.dg/elemental_pointer_1.f90,
gfortran.dg/elemental_subroutine_1.f90,
gfortran.dg/elemental_subroutine_2.f90, gfortran.dg/entry_1.f90,
gfortran.dg/entry_3.f90, gfortran.dg/enum_10.f90,
gfortran.dg/equiv_constraint_3.f90, gfortran.dg/func_derived_1.f90,
gfortran.dg/func_derived_2.f90, gfortran.dg/func_derived_3.f90,
gfortran.dg/generic_1.f90, gfortran.dg/generic_2.f90,
gfortran.dg/generic_3.f90, gfortran.dg/generic_4.f90,
gfortran.dg/global_references_1.f90,
gfortran.dg/host_used_types_1.f90, gfortran.dg/implicit_1.f90,
gfortran.dg/implicit_2.f90, gfortran.dg/implicit_actual.f90,
gfortran.dg/initialization_1.f90, gfortran.dg/int_1.f90,
gfortran.dg/intent_used_1.f90, gfortran.dg/interface_1.f90,
gfortran.dg/interface_2.f90, gfortran.dg/internal_references_2.f90,
gfortran.dg/io_constraints_1.f90, gfortran.dg/io_constraints_2.f90,
gfortran.dg/large_integer_kind_1.f90,
gfortran.dg/large_real_kind_1.f90,
gfortran.dg/module_blank_common.f90, gfortran.dg/module_commons_1.f90,
gfortran.dg/module_double_reuse.f90,
gfortran.dg/module_equivalence_1.f90,
gfortran.dg/module_interface_1.f90,
gfortran.dg/module_parameter_array_refs_1.f90,
gfortran.dg/named_interface.f90, gfortran.dg/namelist_14.f90,
gfortran.dg/namelist_15.f90, gfortran.dg/namelist_1.f90,
gfortran.dg/namelist_4.f90, gfortran.dg/namelist_use.f90,
gfortran.dg/namelist_use_only.f90, gfortran.dg/nested_modules_1.f90,
gfortran.dg/nested_modules_2.f90, gfortran.dg/nested_modules_3.f90,
gfortran.dg/nested_modules_4.f90, gfortran.dg/nested_modules_5.f90,
gfortran.dg/parens_5.f90, gfortran.dg/parent_result_ref_4.f90,
gfortran.dg/pr15164.f90, gfortran.dg/pr16861.f90,
gfortran.dg/pr17615.f90, gfortran.dg/pr19926.f90,
gfortran.dg/pr21177.f90, gfortran.dg/pr26246_1.f90,
gfortran.dg/private_type_1.f90, gfortran.dg/private_type_2.f90,
gfortran.dg/private_type_3.f90, gfortran.dg/private_type_4.f90,
gfortran.dg/procedure_lvalue.f90, gfortran.dg/pure_byref_3.f90,
gfortran.dg/same_name_1.f90,
gfortran.dg/sibling_dummy_procedure_1.f90,
gfortran.dg/sibling_dummy_procedure_2.f90,
gfortran.dg/sibling_dummy_procedure_3.f90,
gfortran.dg/substr_1.f90, gfortran.dg/substring_equivalence.f90,
gfortran.dg/use_allocated_1.f90, gfortran.dg/used_dummy_types_1.f90,
gfortran.dg/used_dummy_types_2.f90,
gfortran.dg/used_dummy_types_3.f90,
gfortran.dg/used_dummy_types_4.f90,
gfortran.dg/used_dummy_types_5.f90,
gfortran.dg/used_interface_ref.f90, gfortran.dg/used_types_1.f90,
gfortran.dg/userdef_operator_1.f90: Use it.
From-SVN: r112264
Richard Sandiford [Tue, 21 Mar 2006 21:49:13 +0000 (21:49 +0000)]
predicates.md (const_call_insn_operand): Allow direct calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
* config/mips/predicates.md (const_call_insn_operand): Allow direct
calls to locally-defined functions if TARGET_ABSOLUTE_ABICALLS.
* config/mips/mips.md (jal_macro): Test TARGET_ABSOLUTE_ABICALLS.
Use TARGET_OLDABI instead of !TARGET_NEWABI.
(loadgp): Use mips_current_loadgp_style.
(loadgp_noshared): New pattern.
(sibcall_internal): Use MIPS_CALL.
(sibcall_value_internal): Likewise.
(sibcall_value_multiple_internal): Likewise.
(call_internal): Likewise.
(call_value_internal): Likewise.
(call_value_multiple_internal): Likewise.
(call_split): Use MIPS_CALL and add an 'S' constraint.
(call_value_split): Likewise.
(call_value_multiple_split): Likewise.
* config/mips/mips.opt (-mabicalls): Tweak docstring.
(-mshared): New option.
* config/mips/mips-protos.h (mips_loadgp_style): New enum.
(mips_current_loadgp_style): Declare.
* config/mips/mips.c (mips_classify_symbol): Avoid using
SYMBOL_GOT_LOCAL if TARGET_ABSOLUTE_ABICALLS. Use SYMBOL_GENERAL
rather than SYMBOL_GOT_GLOBAL for locally-binding symbols if
TARGET_ABSOLUTE_ABICALLS.
(override_options): Adjust comments. Improve the warning that is
issued when -mabicalls and -G are used together.
(mips_file_start): Remove comment.
(mips_current_loadgp_style): New function.
(mips_gnu_local_gp): New variable.
(mips_emit_loadgp): Use mips_current_loadgp_style. Handle
LOADGP_ABSOLUTE.
(mips_output_function_prologue): Use mips_current_laodgp_style.
(mips_expand_prologue): Call mips_emit_loadgp before emitting
the cprestore instruction.
(mips_extra_live_on_entry): Fix reversed test. Don't make $25
live for TARGET_ABSOLUTE_ABICALLS.
* config/mips/mips.h (TARGET_ABSOLUTE_ABICALLS): New macro.
(ASM_SPEC): Pass down -mshared and -mno-shared.
(MIPS_CALL): New macro.
* config/mips/netbsd.h (TARGET_OS_CPP_BUILTINS): Remove __ABICALLS__
definition.
* doc/invoke.texi (-mabicalls): Update documentation.
(-mshared): Document.
From-SVN: r112261
Steve Ellcey [Tue, 21 Mar 2006 21:19:10 +0000 (21:19 +0000)]
unwind-hpux.c: New file.
* config/ia64/unwind-hpux.c: New file.
* config/ia64/t-hpux: Add unwind-hpux.c to libgcc.
From-SVN: r112259
Kaveh R. Ghazi [Tue, 21 Mar 2006 21:17:54 +0000 (21:17 +0000)]
advance.f90, [...]: Delete temp file.
* gfortran.dg/advance.f90, gfortran.dg/backspace_2.f,
gfortran.dg/comma.f, gfortran.dg/direct_io_2.f90,
gfortran.dg/tl_editing.f90, gfortran.dg/unf_io_convert_1.f90,
gfortran.dg/write_back.f,
gfortran.fortran-torture/execute/inquire_1.f90,
gfortran.fortran-torture/execute/inquire_3.f90: Delete temp file.
From-SVN: r112258
Steve Ellcey [Tue, 21 Mar 2006 21:12:00 +0000 (21:12 +0000)]
re PR libgomp/26384 (FAIL: libgomp.c/appendix-a/a.18.1.c execution test)
PR libgomp/26384
* config/pa/pa64-hpux.h (LIB_SPEC): Fix for -mt and -pthread options.
From-SVN: r112257
Jeff Law [Tue, 21 Mar 2006 21:01:42 +0000 (14:01 -0700)]
tree-vrp.c (extract_range_from_unary_expr): Derive ranges for type conversions of a VR_VARYING source to a wider type.
* tree-vrp.c (extract_range_from_unary_expr): Derive ranges for
type conversions of a VR_VARYING source to a wider type.
* gcc.dg/tree-ssa/vrp28.c: New test.
From-SVN: r112256
Eric Botcazou [Tue, 21 Mar 2006 20:59:11 +0000 (21:59 +0100)]
config.gcc (i[34567]86-*-solaris2*): Add config/sol2-10.h to tm_file on Solaris 10 and later.
2006-03-21 Eric Botcazou <ebotcazou@libertysurf.fr>
* config.gcc (i[34567]86-*-solaris2*): Add config/sol2-10.h to
tm_file on Solaris 10 and later.
(sparc64-*-solaris2*): Likewise.
(sparc-*-solaris2*): Likewise.
* config/sol26.h: Rename to config/sol2-6.h.
* config/sol2-10.h: New file.
testsuite/
* gcc.dg/builtins-config.h (Solaris case): Define HAVE_C99_RUNTIME
if _STDC_C99 is defined.
* gcc.dg/builtins-18.c: Pass -std=c99 on Solaris.
* gcc.dg/builtins-20.c: Likewise.
* gcc.dg/builtins-53.c: Likewise.
* gcc.dg/single-precision-constant.c: Likewise. Also pass
-mmacosx-version-min=10.3 on PowerPC/Darwin.
From-SVN: r112255
Andrew Pinski [Tue, 21 Mar 2006 18:58:50 +0000 (18:58 +0000)]
re PR tree-optimization/26781 (ICE in tree-ssa-pre.c at create_component_ref_by_piec)
2006-03-21 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/26781
* tree-ssa-pre.c (create_component_ref_by_pieces):
Handle STRING_CST.
2006-03-21 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/26781
* gcc.c-torture/compile/pr26781-1.c: New test.
* gcc.c-torture/compile/pr26781-2.c: New test.
From-SVN: r112254