Andrew Pinski [Mon, 30 Oct 2006 16:15:09 +0000 (08:15 -0800)]
re PR fortran/29410 ([4.2 only] bug with TRANSFER() and -O2)
2006-10-30 Andrew Pinski <pinskia@gmail.com>
PR fortran/29410
* trans-intrinsic.c (gfc_conv_intrinsic_array_transfer):
Change over to create VIEW_CONVERT_EXPR instead of using an
ADDR_EXPR, a cast and then an indirect reference
2006-10-30 Andrew Pinski <pinskia@gmail.com>
PR Fortran/29410
* gfortran.fortran-torture/execute/transfer1.f90: New test.
From-SVN: r118186
Dirk Mueller [Mon, 30 Oct 2006 14:44:45 +0000 (14:44 +0000)]
typeck.c (build_unary_op): Fix indenting.
2006-10-30 Dirk Mueller <dmueller@suse.de>
* typeck.c (build_unary_op): Fix indenting. Use G_().
From-SVN: r118185
Joseph Myers [Mon, 30 Oct 2006 14:03:05 +0000 (14:03 +0000)]
default.exp (${tool}_target_compile): Use v3_target_compile.
libstdc++-v3:
* testsuite/config/default.exp (${tool}_target_compile): Use
v3_target_compile.
gcc/testsuite:
* lib/target-supports.exp (check_function_available): Declare
function before calling.
From-SVN: r118182
David Daney [Mon, 30 Oct 2006 08:25:25 +0000 (08:25 +0000)]
* config/mips/linux.h (NO_SHARED_SPECS): Correct syntax error.
From-SVN: r118179
Jakub Jelinek [Mon, 30 Oct 2006 08:01:28 +0000 (09:01 +0100)]
re PR tree-optimization/29637 (Endless recursion in make_vector_type)
PR tree-optimization/29637
* tree.c (make_vector_type): Don't recurse if TYPE_MAIN_VARIANT
of the innertype is the innertype itself.
* gcc.dg/pr29637.c: New test.
From-SVN: r118175
Mike Stump [Mon, 30 Oct 2006 05:56:18 +0000 (05:56 +0000)]
Fix whitespacing.
From-SVN: r118173
Danny Smith [Mon, 30 Oct 2006 03:18:57 +0000 (03:18 +0000)]
dwarf2out.c (file_name_acquire): Correct typo.
* dwarf2out.c (file_name_acquire): Correct typo.
Formatting tweak to earlier ChangeLog entry.
From-SVN: r118171
Roger Sayle [Mon, 30 Oct 2006 02:46:11 +0000 (02:46 +0000)]
fold-compare-1.c: Update to reflect recent changes in tree canonicalization.
* gcc.dg/fold-compare-1.c: Update to reflect recent changes in
tree canonicalization.
From-SVN: r118170
Daniel Berlin [Mon, 30 Oct 2006 01:58:42 +0000 (01:58 +0000)]
tree.h (tree_value_handle): Remove struct value_set declaration.
2006-10-29 Daniel Berlin <dberlin@dberlin.org>
* tree.h (tree_value_handle): Remove struct value_set declaration.
Change value_set to bitmap_set.
* tree-pretty-print.c (dump_generic_node): Use has_stmt_ann.
* tree-vn.c (get_value_handle): Made inline and moved to
tree-flow-inline.h.
* tree-flow-inline.h: (has_stmt_ann): New function.
* tree-ssa-pre.c (expressions): New variable.
(next_expression_id): Ditto.
(alloc_expression_id): New function.
(struct value_set): Remove.
(get_expression_id): New function.
(get_or_alloc_expression_id): Ditto.
(expression_for_id): Ditto.
(clear_expression_ids): Ditto.
(FOR_EACH_EXPR_ID_IN_SET): New macro.
(bb_value_sets): Renamed to bb_bitmap_sets.
All value sets replaced with bitmap_sets.
Add visited member.
(BB_VISITED): New macro.
(postorder): New variable.
(add_to_value): Removed.
(value_exists_in_set_bitmap): Ditto.
(value_insert_into_set_bitmap): Ditto.
(set_new): Ditto.
(set_copy): Ditto.
(set_remove): Ditto.
(set_contains_value): Ditto.
(insert_into_set): Ditto.
(set_equal): Ditto.
(find_leader): Ditto.
(bitmap_set_subtract_from_value_set): Ditto.
(value_insert_into_set): Ditto.
(print_value_set): Ditto.
(debug_value_set): Ditto.
(constant_expr_p): New function.
(bitmap_remove_from_set): Ditto.
(bitmap_insert_into_set): Ditto.
(bitmap_set_free): Ditto.
(vh_compare): Ditto.
(sorted_array_from_bitmap_set): Ditto.
(bitmap_set_subtract): Ditto.
(bitmap_set_equal): Ditto.
(debug_bitmap_set): Ditto.
(find_leader_in_sets): Ditto.
(bitmap_set_replace_value): Modify for bitmapped sets.
(phi_translate): Ditto.
(phi_translate_set): Ditto.
(bitmap_find_leader): Ditto.
(valid_in_sets): Ditto.
(union_contains_value): Ditto.
(clean): Ditto.
(compute_antic_aux): Ditto. Mark changed blocks.
(compute_antic): Ditto. Iterate in postorder and only over
changing blocks.
(compute_rvuse_and_antic_safe): Reuse postorder.
(create_component_ref_by_pieces): Modify for bitmapped sets.
(find_or_generate_expression): Ditto.
(create_expression_by_pieces): Ditto.
(insert_into_preds_of_block): Ditto.
(changed_blocks): New variable.
(do_regular_insertion): Broken out from insert_aux.
(insert_aux): Modified for bitmapped sets.
(find_existing_value_expr): New function.
(create_value_expr_from): Use it.
(insert_extra_phis): Removed.
(print_bitmap_set): Renamed from bitmap_print_value_set.
(compute_avail): Handle RETURN_EXPR.
(init_pre): Modify for bitmapped sets.
* tree-flow.h (has_stmt_ann): New function.
From-SVN: r118169
Roger Sayle [Mon, 30 Oct 2006 01:14:37 +0000 (01:14 +0000)]
builtins.c (fold_builtin_floor): Check for the availability of the C99 trunc function before transforming floor...
* builtins.c (fold_builtin_floor): Check for the availability of
the C99 trunc function before transforming floor into trunc.
From-SVN: r118168
GCC Administrator [Mon, 30 Oct 2006 00:17:44 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118165
Kaveh R. Ghazi [Sun, 29 Oct 2006 23:08:23 +0000 (23:08 +0000)]
builtins.c (fold_builtin_hypot): Rearrange recursive transformation before others, and also do ABS_EXPR.
* builtins.c (fold_builtin_hypot): Rearrange recursive
transformation before others, and also do ABS_EXPR. When
necessary, check flag_unsafe_math_optimizations. When necessary,
add fabs.
testsuite:
* gcc.dg/builtins-20.c: Add more hypot tests.
From-SVN: r118160
Paolo Carlini [Sun, 29 Oct 2006 21:50:23 +0000 (21:50 +0000)]
debug.cc (_Safe_sequence_base::_M_revalidate_singular): Fix pasto, advance __iter only once per iteration.
2006-10-29 Paolo Carlini <pcarlini@suse.de>
* src/debug.cc (_Safe_sequence_base::_M_revalidate_singular): Fix
pasto, advance __iter only once per iteration.
From-SVN: r118159
Roger Sayle [Sun, 29 Oct 2006 21:41:48 +0000 (21:41 +0000)]
fold-const.c (fold_comparison): Fold ~X op ~Y as Y op X.
* fold-const.c (fold_comparison): Fold ~X op ~Y as Y op X.
Fold ~X op C as X op' ~C, where op' is the swapped comparison.
(fold_binary): ~X eq/ne C is now handled in fold_comparison.
Fold -X eq/ne -Y as X eq/ne Y.
* gcc.dg/fold-compare-1.c: New test case.
From-SVN: r118158
Dirk Mueller [Sun, 29 Oct 2006 19:52:52 +0000 (19:52 +0000)]
re PR c++/29089 (Words substituted for %s in a sentence can not be translated)
PR c++/29089
* typeck.c (build_unary_op): Duplicate warning message
for easier translation.
From-SVN: r118156
Dirk Mueller [Sun, 29 Oct 2006 18:46:49 +0000 (18:46 +0000)]
fix testcase
From-SVN: r118155
Dirk Mueller [Sun, 29 Oct 2006 18:38:26 +0000 (18:38 +0000)]
re PR c++/16307 (-Wchar-subscripts does not warn on pointers)
2006-10-29 Dirk Mueller <dmueller@suse.de>
PR c++/16307
* typeck.c (build_array_ref): Warn for char subscriptions
on pointers.
* g++.dg/warn/Wchar-subscripts-2.C: New testcase.
From-SVN: r118154
Richard Sandiford [Sun, 29 Oct 2006 18:20:45 +0000 (18:20 +0000)]
mips.md (mul<mode>3): Check ISA_HAS_MUL3 rather than GENERATE_MULT3_<MODE>.
gcc/
* config/mips/mips.md (mul<mode>3): Check ISA_HAS_MUL3 rather than
GENERATE_MULT3_<MODE>. Restrict the test to SImode. Use ISA_HAS_MUL3
rather than GENERATE_MULT3_SI in the various define_peephole2s.
(mulsi3_mult3): Depend on ISA_HAS_MUL3 rather than GENERATE_MULT3_SI.
Use an inclusive test for "mult" rather than "mul".
(rotr<mode>3): Depend on ISA_HAS_ROR.
* config/mips/mips.h (GENERATE_MULT3_SI): Delete in favor of
ISA_HAS_MUL3.
(GENERATE_MULT3_DI): Delete.
(ISA_HAS_64BIT_REGS): Use consistent formatting.
(ISA_HAS_MUL3): New macro.
(ISA_HAS_CONDMOVE, ISA_HAS_8CC): Use consistent formatting.
(ISA_HAS_FP4, ISA_HAS_MADD_MSUB, ISA_HAS_NMADD_NMSUB): Likewise.
(ISA_HAS_CLZ_CLO): Likewise.
(ISA_HAS_DCLZ_DCLO): Delete.
(ISA_HAS_MULHI, ISA_HAS_MULS, ISA_HAS_MSAC): Require !TARGET_MIPS16.
(ISA_HAS_MACC): Require !TARGET_MIPS16 for all ISAs, not just
the VR4120 and VR4130.
(ISA_HAS_MACCHI): Use consistent formatting.
(ISA_HAS_ROTR_SI, ISA_HAS_ROTR_DI): Delete in favor of...
(ISA_HAS_ROR): ...this new macro.
(ISA_HAS_PREFETCH, ISA_HAS_PREFETCHX): Use consistent formatting.
(ISA_HAS_SEB_SEH, ISA_HAS_EXT_INS): Likewise.
(ISA_HAS_LOAD_DELAY): Use ISA_MIPS1.
From-SVN: r118153
Roger Sayle [Sun, 29 Oct 2006 17:51:07 +0000 (17:51 +0000)]
re PR tree-optimization/15458 (Combine ~ and ^.)
PR tree-optimization/15458
* fold-const.c (fold_binary): Optimize ~X ^ C as X ^ ~C, where C
is a constant.
* gcc.dg/fold-xornot-1.c: New test case.
From-SVN: r118152
Francois-Xavier Coudert [Sun, 29 Oct 2006 17:05:37 +0000 (18:05 +0100)]
trans-intrinsic.c (gfc_conv_intrinsic_loc): Make LOC return a signed integer node.
* trans-intrinsic.c (gfc_conv_intrinsic_loc): Make LOC return a
signed integer node.
From-SVN: r118151
Jerry DeLisle [Sun, 29 Oct 2006 16:43:48 +0000 (16:43 +0000)]
re PR fortran/17741 (ICE in gfc_free_namespace, at fortran/symbol.c:2208)
2006-10-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/17741
* decl.c (get_proc_name): Bump current namespace refs count.
From-SVN: r118149
Richard Guenther [Sun, 29 Oct 2006 16:43:21 +0000 (16:43 +0000)]
i386-protos.h (ix86_expand_trunc): Declare.
2006-10-29 Richard Guenther <rguenther@suse.de>
* config/i386/i386-protos.h (ix86_expand_trunc): Declare.
(ix86_expand_truncdf_32): Likewise.
* config/i386/i386.c (ix86_expand_trunc): New function expanding
trunc inline for SSE math and -fno-trapping-math and if not
optimizing for size.
(ix86_expand_truncdf_32): Same for DFmode on 32bit archs.
* config/i386/i386.md (btruncsf2, btruncdf2): Adjust expanders
for expanding btrunc inline for SSE math.
* gcc.target/i386/math-torture/trunc.c: New testcase.
From-SVN: r118148
Joseph Myers [Sun, 29 Oct 2006 16:35:50 +0000 (16:35 +0000)]
config.gcc (i[34567]86-*-linux*): Handle --enable-targets=all.
gcc:
* config.gcc (i[34567]86-*-linux*): Handle --enable-targets=all.
Handle tuning for bi-arch i[34567]86-*-linux* like that for
i[34567]86-*-solaris2.1[0-9]*.
* config/i386/linux64.h (TARGET_VERSION, MULTILIB_DEFAULTS):
Define conditionally depending on TARGET_64BIT_DEFAULT.
(SPEC_32, SPEC_64): Define.
(LINK_SPEC): Use them.
* doc/install.texi (--enable-targets=all): Document for x86-linux.
libcpp:
* configure.ac (need_64bit_hwint): Set for i[34567]86-*-linux*
depending on --enable-targets=all.
* configure: Regenerate.
fixincludes:
* inclhack.def (AAB_fd_zero_asm_posix_types_h): Bypass on x86_64.
* fixincl.x: Regenerate.
From-SVN: r118147
Richard Guenther [Sun, 29 Oct 2006 16:33:36 +0000 (16:33 +0000)]
i386-protos.h (ix86_expand_round): Declare.
2006-10-29 Richard Guenther <rguenther@suse.de>
* config/i386/i386-protos.h (ix86_expand_round): Declare.
(ix86_expand_rounddf_32): Likewise.
* config/i386/i386.c (ix86_expand_round): New function expanding
round inline for SSE math and -fno-trapping-math and if not
optimizing for size.
(ix86_expand_rounddf_32): Same for DFmode on 32bit archs.
* config/i386/i386.md (rounddf2, roundsf2): New pattern expanding
round via ix86_expand_round.
* gcc.target/i386/math-torture/round.c: New testcase.
From-SVN: r118146
Richard Guenther [Sun, 29 Oct 2006 16:28:40 +0000 (16:28 +0000)]
i386-protos.h (ix86_expand_floorceil): Declare.
2006-10-29 Richard Guenther <rguenther@suse.de>
* config/i386/i386-protos.h (ix86_expand_floorceil): Declare.
(ix86_expand_floorceildf_32): Likewise.
* config/i386/i386.c (ix86_expand_sse_compare_mask): New
static helper function.
(ix86_expand_floorceil): Expander for floor and ceil to SSE
math.
(ix86_expand_floorceildf_32): Same for DFmode on 32bit archs.
* config/i386/i386.md (floordf2): Adjust to enable floor
expansion via ix86_expand_floorceil if TARGET_SSE_MATH and
-fno-trapping-math is enabled and if not optimizing for size.
(floorsf2, ceildf2, ceilsf2): Likewise.
* config/i386/sse.md (sse_maskcmpsf3): New insn.
(sse2_maskcmpdf3): Likewise.
* gcc.target/i386/math-torture/ceil.c: New testcase.
* gcc.target/i386/math-torture/floor.c: Likewise.
From-SVN: r118145
Richard Guenther [Sun, 29 Oct 2006 15:25:52 +0000 (15:25 +0000)]
builtins.c (expand_builtin_mathfn): Expand nearbyint as rint in case -fno-trapping-math is enabled.
2006-10-29 Richard Guenther <rguenther@suse.de>
* builtins.c (expand_builtin_mathfn): Expand nearbyint as
rint in case -fno-trapping-math is enabled.
* config/i386/i386-protos.h (ix86_expand_rint): Declare.
* config/i386/i386.c (ix86_gen_TWO52): New static helper function.
(ix86_expand_sse_fabs): Likewise.
(ix86_expand_rint): New function expanding rint to x87 or SSE math.
* config/i386/i386.md (rintdf2): Enable for SSE math if
-fno-trapping-math is enabled, use ix86_expand_rint for expansion.
(rintsf2): Likewise.
* gcc.target/i386/math-torture/rint.c: New testcase.
* gcc.target/i386/math-torture/nearbyint.c: Likewise.
From-SVN: r118144
Richard Guenther [Sun, 29 Oct 2006 15:18:24 +0000 (15:18 +0000)]
genopinit.c (optabs): Change lfloor_optab and lceil_optab to conversion optabs.
2006-10-29 Richard Guenther <rguenther@suse.de>
* genopinit.c (optabs): Change lfloor_optab and lceil_optab
to conversion optabs.
* optabs.c (init_optabs): Initialize lfloor_optab and lceil_optab
as conversion optab.
* optabs.h (enum optab_index): Remove OTI_lfloor and OTI_lceil.
(enum convert_optab_index): Add COI_lfloor and COI_lceil.
(lfloor_optab, lceil_optab): Adjust defines.
* builtins.c (expand_builtin_int_roundingfn): Adjust for
lfloor and lceil optabs now being conversion optabs.
* config/i386/i386-protos.h (ix86_expand_lfloorceil): Declare.
* config/i386/i386.c (ix86_expand_sse_compare_and_jump):
New static helper function.
(ix86_expand_lfloorceil): New function to expand lfloor and
lceil inline.
* config/i386/i386.md (lfloor<mode>2): Split into ...
(lfloorxf<mode>2): ... x87 variant
(lfloor<mode>di2, lfloor<mode>si2): ... and SSE variants
using ix86_expand_lfloorceil.
(lceil<mode>2, lceilxf<mode>2, lceil<mode>di2, lceil<mode>si2):
Likewise.
* doc/md.texi (lfloorMN, lceilMN): Document.
* gcc.target/i386/math-torture/lfloor.c: New testcase.
* gcc.target/i386/math-torture/lceil.c: Likewise.
From-SVN: r118143
Tobias Burnus [Sun, 29 Oct 2006 11:56:56 +0000 (12:56 +0100)]
re PR libfortran/24313 (complex sqrt function does not return principal value)
2006-10-28 Tobias Burnus <burnus@net-b.de>
PR libgfortran/24313
* gfortran.dg/csqrt_2.f: Remove xfail *-*-linux-gnu.
From-SVN: r118142
Francois-Xavier Coudert [Sun, 29 Oct 2006 11:34:53 +0000 (12:34 +0100)]
configure: Regenerate.
* configure: Regenerate.
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
From-SVN: r118140
Richard Sandiford [Sun, 29 Oct 2006 11:13:14 +0000 (11:13 +0000)]
configure.ac (HAVE_AS_NO_SHARED): New AC_DEFINE.
gcc/
* configure.ac (HAVE_AS_NO_SHARED): New AC_DEFINE. Test for the
-mno-shared assembler option on mips targets.
* configure, config.in: Regenerate.
* config/mips/linux.h (NO_SHARED_SPECS): New macro.
(DRIVER_SELF_SPECS): Define to NO_SHARED_SPECS if non-empty.
* config/mips/linux64.h (DRIVER_SELF_SPECS): Include NO_SHARED_SPECS.
From-SVN: r118138
Richard Sandiford [Sun, 29 Oct 2006 11:00:08 +0000 (11:00 +0000)]
mips.c (mips_classify_symbol): Test DECL_WEAK as well as TREE_PUBLIC when deciding whether to return...
gcc/
* config/mips/mips.c (mips_classify_symbol): Test DECL_WEAK as well
as TREE_PUBLIC when deciding whether to return SYMBOL_GOT_GLOBAL.
From-SVN: r118137
Paolo Carlini [Sun, 29 Oct 2006 10:49:07 +0000 (10:49 +0000)]
re PR libstdc++/29520 (tr1: discrete_distributions vs large floating point values)
2006-10-29 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29520
* include/tr1/random (geometric_distribution<>::
operator()(_UniformRandomNumberGenerator&)): Only declare.
* include/tr1/random.tcc (geometric_distribution<>::
operator()(_UniformRandomNumberGenerator&),
poisson_distribution<>::operator()(_UniformRandomNumberGenerator&),
binomial_distribution<>::operator()(_UniformRandomNumberGenerator&)):
Reject candidate floating point values not convertible to the
result_type.
From-SVN: r118135
Jakub Jelinek [Sun, 29 Oct 2006 10:27:39 +0000 (11:27 +0100)]
re PR fortran/29629 (ICE on OpenMP-enabled program (gfc_conv_variable, at fortran/trans-expr.c:404))
PR fortran/29629
* trans-openmp.c (gfc_trans_omp_array_reduction): Set attr.flavor
of init_val_sym and outer_sym to FL_VARIABLE.
* testsuite/libgomp.fortran/pr29629.f90: New test.
From-SVN: r118134
Kazu Hirata [Sun, 29 Oct 2006 04:46:24 +0000 (04:46 +0000)]
darwin.c, [...]: Fix comment typos.
* config/darwin.c, config/darwin.opt, config/ia64/itanium1.md,
config/ia64/itanium2.md, real.c, tree-ssa-structalias.c: Fix
comment typos.
From-SVN: r118133
Kazu Hirata [Sun, 29 Oct 2006 04:43:45 +0000 (04:43 +0000)]
20020118-1.c, [...]: Fix comment typos.
* gcc.c-torture/execute/
20020118-1.c,
gcc.c-torture/execute/builtins/strlen.c,
gcc.c-torture/execute/pr23135.c, lib/fortran-torture.exp: Fix
comment typos.
From-SVN: r118132
Kazu Hirata [Sun, 29 Oct 2006 04:41:10 +0000 (04:41 +0000)]
* intrinsic.texi: Fix a typo.
From-SVN: r118131
Kazu Hirata [Sun, 29 Oct 2006 04:38:03 +0000 (04:38 +0000)]
* decl.c: Fix a comment typo.
From-SVN: r118130
Kaveh R. Ghazi [Sun, 29 Oct 2006 02:02:10 +0000 (02:02 +0000)]
re PR middle-end/29335 (transcendental functions with constant arguments should be resolved at compile-time)
PR middle-end/29335
* builtins.c (do_mpfr_arg2, fold_builtin_hypot): New.
(fold_builtin_pow): Evaluate constant arguments at compile-time
using MPFR.
(fold_builtin_1): Handle BUILT_IN_ATAN2 and BUILT_IN_HYPOT.
(do_mpfr_ckconv): New helper function.
(do_mpfr_arg1): Use do_mpfr_ckconv.
(do_mpfr_arg2): New.
testsuite:
* gcc.dg/builtins-20.c: Add tests for hypot.
* gcc.dg/torture/builtin-math-2.c (TESTIT2): New. Add tests for
two-argument builtins.
* gcc.dg/torture/builtin-math-3.c (TESTIT_R): Renamed from
TESTIT2. Update all callers.
(TESTIT2, TESTIT2_R): New helper macros.
Add testcases for pow, hypot and atan2.
From-SVN: r118129
Andrew Pinski [Sun, 29 Oct 2006 00:27:49 +0000 (00:27 +0000)]
re PR other/29271 (Incorrect -fdump-rtl-sched documentation)
2006-10-28 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR tree-opt/29271
* doc/invoke.texi (-fdump-rtl-sched2) Fix file extension number.
(-fdump-rtl-sched): Rename to ..
(-fdump-rtl-sched1): here. Also fix file extension number.
From-SVN: r118128
GCC Administrator [Sun, 29 Oct 2006 00:17:41 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118126
Steven G. Kargl [Sat, 28 Oct 2006 23:31:22 +0000 (23:31 +0000)]
gfortran.h: Remove GFC_MPFR_TOO_OLD.
2006-10-27 Steven G. Kargl <kargl@gcc.gnu.org>
* gfortran.h: Remove GFC_MPFR_TOO_OLD.
* arith.c (arctangent2): Remove function
(gfc_check_real_range): Remove subnormal kludge.
* arith.h: Remove arctangent2 prototype.
* simplify.c: (gfc_simplify_atan2): Remove use of arctangent2.
(gfc_simplify_exponent, gfc_simplify_log, gfc_simplify_nearest,
gfc_simplify_rrspacing, gfc_simplify_spacing): Remove mpfr kludges.
From-SVN: r118120
Andrew Pinski [Sat, 28 Oct 2006 23:01:59 +0000 (23:01 +0000)]
re PR c++/29295 (++ operator with bool typedef increments or operator -- with bool typedef)
2006-10-28 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR C++/29295
* typeck.c (build_unary_op): Use same_type_p when comparing to
boolean type.
2006-10-28 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR C++/29295
* g++.dg/expr/bool1.C: New test.
* g++.dg/expr/bool2.C: New test.
From-SVN: r118118
Dirk Mueller [Sat, 28 Oct 2006 22:34:06 +0000 (22:34 +0000)]
re PR c++/29033 (%s substituted with "left"/"right" can't be properly translated)
2006-10-29 Dirk Mueller <dmueller@suse.de>
PR c++/29033
* typeck.c (build_binary_op): Duplicate warning message
for better translation.
From-SVN: r118117
Paolo Carlini [Sat, 28 Oct 2006 22:02:44 +0000 (22:02 +0000)]
array (array<>::_M_at): New.
2006-10-28 Paolo Carlini <pcarlini@suse.de>
* include/tr1/array (array<>::_M_at): New.
(array<>::at): Fix off-by-one bug, use the above.
* testsuite/tr1/6_containers/array/element_access/
at_out_of_range.cc: Adjust.
* include/tr1/array (class array<>): Remove non-conforming default
for the second parameter.
* include/ext/array_allocator.h: Adjust.
* include/tr1/array (array<>::front, array<>::back): Do not return
a reference to memory not belonging to the array when _Nm == 0.
From-SVN: r118114
Tobias Burnus [Sat, 28 Oct 2006 21:59:20 +0000 (23:59 +0200)]
re PR fortran/28224 (gfortran should support namelist (nml) for internal file units)
fortran/
2006-10-28 Tobias Burnus <burnus@net-b.de>
PR fortran/28224
* io.c (check_io_constraints): Allow namelists
for internal files for Fortran 2003.
testsuite/
2006-10-28 Tobias Burnus <burnus@net-b.de>
PR fortran/28224
* gfortran.dg/io_constraints_2.f90: Use -std=f95.
* gfortran.dg/namelist_internal.f90: New test.
From-SVN: r118113
Tobias Burnus [Sat, 28 Oct 2006 21:07:19 +0000 (23:07 +0200)]
re PR fortran/29625 (Octal edit descriptors allow real variables, even with -std=f95)
2006-10-28 Tobias Burnus <burnus@net-b.de>
PR fortran/29625
* gfortran.dg/io_real_boz.f90: Add.
* gfortran.dg/io_real_boz2.f90: Add.
From-SVN: r118112
Tobias Burnus [Sat, 28 Oct 2006 21:05:42 +0000 (23:05 +0200)]
re PR fortran/29625 (Octal edit descriptors allow real variables, even with -std=f95)
2006-10-28 Tobias Burnus <burnus@net-b.de>
PR fortran/29625
* io/transfer.c (formatted_transfer_scalar): Allow binary edit
descriptors for real variables; give error for BOZ edit
descriptor for non-integers when using -std=f*.
From-SVN: r118111
Richard Guenther [Sat, 28 Oct 2006 20:36:54 +0000 (20:36 +0000)]
fold-const.c (maybe_canonicalize_comparison): Fix code to match comment.
2006-10-28 Richard Guenther <rguenther@suse.de>
* fold-const.c (maybe_canonicalize_comparison): Fix code
to match comment.
From-SVN: r118110
Uros Bizjak [Sat, 28 Oct 2006 20:25:27 +0000 (22:25 +0200)]
i386.h (GENERAL_REGNO_P): Use STACK_POINTER_REGNUM.
* config/i386/i386.h (GENERAL_REGNO_P): Use STACK_POINTER_REGNUM.
(NON_QI_REG_P): Use IN_RANGE.
(REX_INT_REGNO_P): Use IN_RANGE.
(FP_REGNO_P): Use IN_RANGE.
(SSE_REGNO_P): Use IN_RANGE.
(REX_SSE_REGNO_P): Use IN_RANGE.
(MMX_REGNO_P): Use IN_RANGE.
(STACK_REGNO_P): New macro.
(STACK_REG_P): Use STACK_REGNO_P.
(NON_STACK_REG_P): Use STACK_REGNO_P.
(REGNO_OK_FOR_INDEX_P): Use REX_INT_REGNO_P.
(REGNO_OK_FOR_BASE_P): Use GENERAL_REGNO_P.
(REG_OK_FOR_INDEX_NONSTRICT_P): Use REX_INT_REGNO_P.
(REG_OK_FOR_BASE_NONSTRICT_P): Use GENERAL_REGNO_P.
(HARD_REGNO_RENAME_OK): Use !IN_RANGE.
From-SVN: r118109
Keith Seitz [Sat, 28 Oct 2006 18:36:16 +0000 (18:36 +0000)]
Makefile.am (nat_source_files): Add natBreakpoint.cc.
* Makefile.am (nat_source_files): Add natBreakpoint.cc.
* sources.am: Regenerated.
* Makefile.in: Regenerated.
* gnu/gcj/jvmti/Breakpoint.java: New file.
* gnu/gcj/jvmti/natBreakpoint.java: New file.
From-SVN: r118108
Eric Botcazou [Sat, 28 Oct 2006 18:11:28 +0000 (18:11 +0000)]
except.h (output_function_exception_table): Add 'const char*' param.
* except.h (output_function_exception_table): Add 'const char*' param.
* except.c (switch_to_exception_section): Add 'const char*' param.
If named sections are supported and HAVE_LD_EH_GC_SECTIONS is defined
and flag_function_sections is set, use a function-specific section.
(output_function_exception_table): Add 'const char*' param.
Adjust call to switch_to_exception_section.
* final.c (rest_of_handle_final): Adjust calls to
output_function_exception_table.
* configure.ac (HAVE_LD_EH_GC_SECTIONS): New check.
* config.in: Regenerate.
* configure: Likewise.
From-SVN: r118107
Richard Guenther [Sat, 28 Oct 2006 18:03:21 +0000 (18:03 +0000)]
re PR middle-end/26899 (Fold does not fold (i0 > i1 + 1) || (i1 < i0 - 1))
2006-10-28 Richard Guenther <rguenther@suse.de>
PR middle-end/26899
* fold-const.c (maybe_canonicalize_comparison_1): Helper
for maybe_canonicalize_comparison.
(maybe_canonicalize_comparison): New function for canonicalizing
comparison trees.
(fold_comparison): Call it to canonicalize comparisons with
constants involved.
* gcc.dg/tree-ssa/pr26899.c: New testcase.
From-SVN: r118106
Richard Guenther [Sat, 28 Oct 2006 11:30:41 +0000 (11:30 +0000)]
re PR target/28806 (lround is not expanded inline to SSE conversion sequence)
2006-10-28 Richard Guenther <rguenther@suse.de>
PR target/28806
* builtins.c (expand_builtin_int_roundingfn_2): Expand
BUILT_IN_LROUND and BUILT_IN_LLROUND from here.
(expand_builtin): Adjust likewise.
* genopinit.c (optabs[]): Add lround optab.
* optabs.c (init_optabs): Initialize lround_optab.
* optabs.h (enum convert_optab_index): Add COI_lround.
(lround_optab): Define.
* config/i386/i386-protos.h (ix86_expand_lround): Declare.
* config/i386/i386.c (ix86_sse_copysign_to_positive): New
static function.
(ix86_expand_lround): New function.
* config/i386/i386.md (lround<mode>di2, lround<mode>si2):
New expanders.
* doc/md.texi (lroundMN2): Document.
* gcc.target/i386/math-torture/lround.c: New testcase.
From-SVN: r118105
Mike Stump [Sat, 28 Oct 2006 10:37:12 +0000 (10:37 +0000)]
Fixup whitespacing
From-SVN: r118104
Uros Bizjak [Sat, 28 Oct 2006 09:41:41 +0000 (11:41 +0200)]
re PR target/29377 (Build for h8300-elf crashes on 64bit hosts due to int/HWI mismatch)
PR target/29377
* config/h8300/h8300.c (h8300_emit_stack_adjustment): Change "size"
argument to HOST_WIDE_INT. Update function prototype.
(round_frame_size): Change return type to HOST_WIDE_INT. Change
"size" argument to HOST_WIDE_INT. Update function prototype.
From-SVN: r118102
Uros Bizjak [Sat, 28 Oct 2006 09:20:23 +0000 (11:20 +0200)]
i386.c (output_387_ffreep): Create output from a template string for !HAVE_AS_IX86_FFREEP.
* config/i386/i386.c (output_387_ffreep): Create output from a
template string for !HAVE_AS_IX86_FFREEP.
From-SVN: r118101
Keith Seitz [Sat, 28 Oct 2006 02:15:12 +0000 (02:15 +0000)]
java-stack.h (ncodeMap): Declare.
* include/java-stack.h (ncodeMap): Declare.
(_Jv_StackTrace): Make _Jv_GetMethodDeclaringClass friend.
* java/lang/Class.h (_Jv_GetMethodDeclaringClass): Declare.
* java/lang/natClass.cc (_Jv_GetMethodDeclaringClass): New
function.
* stacktrace.cc (ncodeMap): Redefine from file global to global
for class _Jv_StackTrace.
(_Jv_StackTrace::UpdateNCodeMap): Add interpreted classes, too,
so that _Jv_GetMethodDeclaringClass can find them all.
(_Jv_StackTrace::ClassForFrame): Exclude interpreted classes.
* jvmti.cc (_Jv_JVMTI_GetMethodDeclaringClass): New function.
(_Jv_JVMTI_Interface): Define GetMethodDeclaringClass function.
From-SVN: r118100
Eric Christopher [Sat, 28 Oct 2006 01:00:21 +0000 (01:00 +0000)]
darwin.c: Fix formatting and grammar.
2006-10-27 Eric Christopher <echristo@apple.com>
* config/darwin.c: Fix formatting and grammar.
From-SVN: r118099
GCC Administrator [Sat, 28 Oct 2006 00:17:40 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118097
Jan Hubicka [Fri, 27 Oct 2006 22:47:47 +0000 (00:47 +0200)]
builtins.c (fold_builtin): Don't generate NOP_EXPR that is going to be thrown away soon when IGNORE is set.
* builtins.c (fold_builtin): Don't generate NOP_EXPR that is going
to be thrown away soon when IGNORE is set.
* tree-ssa-ccp.c (convert_to_gimple_builtin): Add IGNORE argument
indicating when return value shall not be computed.
* gimplify.c (internal_get_tmp_var): Avoid random tree sharing.
From-SVN: r118091
Vladimir Makarov [Fri, 27 Oct 2006 22:43:00 +0000 (22:43 +0000)]
2006-10-27 Vladimir Makarov <vmakarov@redhat.com>
* config/i386/i386.h (TARGET_GEODE):
(TARGET_CPU_CPP_BUILTINS): Add code for geode.
(TARGET_CPU_DEFAULT_geode): New macro.
(TARGET_CPU_DEFAULT_k6, TARGET_CPU_DEFAULT_k6_2,
TARGET_CPU_DEFAULT_k6_3, TARGET_CPU_DEFAULT_athlon,
TARGET_CPU_DEFAULT_athlon_sse, TARGET_CPU_DEFAULT_k8,
TARGET_CPU_DEFAULT_pentium_m, TARGET_CPU_DEFAULT_prescott,
TARGET_CPU_DEFAULT_nocona, TARGET_CPU_DEFAULT_generic): Increase
the macro values.
(TARGET_CPU_DEFAULT_NAMES): Add geode.
(processor_type): Add PROCESSOR_GEODE.
* config/i386/i386.md: Include geode.md.
(cpu): Add geode.
* config/i386/i386.c (geode_cost): New initialized global
variable.
(m_GEODE, m_K6_GEODE): New macros.
(x86_use_leave, x86_push_memory, x86_deep_branch, x86_use_sahf,
x86_use_himode_fiop, x86_promote_QImode, x86_add_esp_4,
x86_add_esp_8, x86_rep_movl_optimal, x86_ext_80387_constants,
x86_schedule): Use m_K6_GEODE instead of m_K6.
(x86_movx, x86_cmove): Set up m_GEODE.
(x86_integer_DFmode_moves): Clear m_GEODE.
(processor_target_table): Add entry for geode.
(processor_alias_table): Ditto.
* config/i386/geode.md: New file.
* doc/invoke.texi: Add entry about geode processor.
From-SVN: r118090
Kaz Kojima [Fri, 27 Oct 2006 22:04:35 +0000 (22:04 +0000)]
builtins-43.c: Add -fno-finite-math-only.
* gcc.dg/builtins-43.c: Add -fno-finite-math-only.
* gcc.dg/builtins-44.c: Likewise.
* gcc.dg/builtins-45.c: Likewise.
* gcc.dg/pr28796-2.c: Likewise.
* gcc.dg/unordered-3.c: Likewise.
From-SVN: r118089
Jerry DeLisle [Fri, 27 Oct 2006 20:54:54 +0000 (20:54 +0000)]
PR libgfortran/27954 Fix type in changelog, pr number
2006-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/27954 Fix type in changelog, pr number
* gfortran.dg/error_recovery_2.f90: New test.
From-SVN: r118086
Jerry DeLisle [Fri, 27 Oct 2006 20:50:15 +0000 (20:50 +0000)]
re PR fortran/29563 (Internal read loses data.)
2006-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29563
* gfortran.dg/error_recovery_2.f90: New test.
From-SVN: r118085
Jerry DeLisle [Fri, 27 Oct 2006 20:47:28 +0000 (20:47 +0000)]
re PR fortran/27954 (ICE on garbage in DATA statement)
2006-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/27954
* decl.c (gfc_free_data_all): New function to free all data structures
after errors in DATA statements and declarations.
(top_var_list): Use new function.(top_val_list): Use new function.
(gfc_match_data_decl): Use new function.
* misc.c (gfc_typename): Fixed incorrect function name in error text.
From-SVN: r118084
Mike Stump [Fri, 27 Oct 2006 17:47:38 +0000 (17:47 +0000)]
darwin-c.c (darwin_cpp_builtins): Move __STATIC__ and __DYNAMIC__ from here back to ...
* config/darwin-c.c (darwin_cpp_builtins): Move __STATIC__ and
__DYNAMIC__ from here back to ...
* config/darwin.h (CPP_SPEC): ... here.
Radar
4804385
From-SVN: r118082
GCC Administrator [Fri, 27 Oct 2006 00:17:41 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118077
Nathan Froyd [Thu, 26 Oct 2006 20:39:10 +0000 (20:39 +0000)]
ggc-common.c (ggc_min_heapsize_heuristic): Be more conservative when choosing the minimum heapsize.
* ggc-common.c (ggc_min_heapsize_heuristic): Be more conservative
when choosing the minimum heapsize.
Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com>
From-SVN: r118070
Peter Bergner [Thu, 26 Oct 2006 20:32:28 +0000 (15:32 -0500)]
MAINTAINERS (Write After Approval): Add myself.
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r118069
Nathan Froyd [Thu, 26 Oct 2006 19:31:09 +0000 (19:31 +0000)]
unwind-dw2.h: Move cfa-related variables into struct frame_state_reg_info to ensure that the...
* gcc/unwind-dw2.h: Move cfa-related variables into
struct frame_state_reg_info to ensure that the CFA is properly
handled when executing DW_CFA_{remember,restore}_state.
* gcc/unwind-dw2.c, gcc/config/alpha/linux-unwind.h,
gcc/config/alpha/vms-unwind.h, gcc/config/s390/tpf-unwind.h
gcc/config/s390/linux-unwind.h, gcc/config/sparc/linux-unwind.h
gcc/config/i386/linux-unwind.h, gcc/config/sh/linux-unwind.h
gcc/config/rs6000/linux-unwind.h,
gcc/config/rs6000/darwin-fallback.c, gcc/config/pa/linux-unwind.h,
gcc/config/pa/hpux-unwind.h, gcc/config/mips/linux-unwind.h:
Modify to use new cfa_* fields.
From-SVN: r118068
Richard Guenther [Thu, 26 Oct 2006 08:23:19 +0000 (08:23 +0000)]
i386.exp: Use glob, not find to collect tests.
2006-10-26 Richard Guenther <rguenther@suse.de>
* gcc.target/i386/i386.exp: Use glob, not find to collect
tests. Avoids recursing into subdirectories.
* gcc.target/i386/math-torture/math-torture.exp: Torture
for interesting ia32 math options.
* gcc.target.i386/math-torture/lrint.c: New testcase.
From-SVN: r118065
Jerry DeLisle [Thu, 26 Oct 2006 07:19:49 +0000 (07:19 +0000)]
re PR fortran/29563 (Internal read loses data.)
2006-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29563
* gfortran.dg/arrayio_9.f90: Update test.
* gfortran.dg/arrayio_19.f90: New test.
From-SVN: r118064
Jerry DeLisle [Thu, 26 Oct 2006 07:17:21 +0000 (07:17 +0000)]
re PR fortran/29563 (Internal read loses data.)
2006-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29563
* io/list_read.c (next_char): Fix an error in previous commit.
From-SVN: r118063
Andreas Krebbel [Thu, 26 Oct 2006 06:58:29 +0000 (06:58 +0000)]
s390.c (s390_init_frame_layout): Check positive frame_size.
2006-10-26 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (s390_init_frame_layout): Check positive
frame_size.
2006-10-26 Andreas Krebbel <krebbel1@de.ibm.com>
* gcc.dg/
20061026.c: New testcase.
From-SVN: r118062
Jerry DeLisle [Thu, 26 Oct 2006 04:41:55 +0000 (04:41 +0000)]
re PR fortran/29563 (Internal read loses data.)
2006-10-26 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29563
* gfortran.dg/arrayio_9.f90: New test.
From-SVN: r118060
Jerry DeLisle [Thu, 26 Oct 2006 04:35:45 +0000 (04:35 +0000)]
re PR fortran/29563 (Internal read loses data.)
2006-10-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/29563
* io/io.h (st_parameter_dt): Add new flag at_eof.
* io/list_read.c (next_char): Set flag when EOF and return '\n' to
signal EOR. Check flag on next call and jump out.
* io/unit.c (get_internal_unit): Initialize new flag.
From-SVN: r118059
Danny Smith [Thu, 26 Oct 2006 03:16:11 +0000 (03:16 +0000)]
pex-win32.c (argv_to_cmdline): Replace xmalloc with XNEWVEC.
(find_executable): Likewise.
(win32_spawn): Cast alloca return to (char**).
Replace malloc with XNEWVEC.
bcopy.c (bcopy): Add explict casts in assignments.
From-SVN: r118058
Ben Elliston [Thu, 26 Oct 2006 01:56:19 +0000 (01:56 +0000)]
gimplify.c (get_name): Remove extraneous break.
* gimplify.c (get_name): Remove extraneous break.
(gimplify_omp_for): Initialise ret with GS_OK.
From-SVN: r118057
GCC Administrator [Thu, 26 Oct 2006 00:17:36 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118054
Ben Elliston [Wed, 25 Oct 2006 22:58:27 +0000 (22:58 +0000)]
strlen.c: Do not use strcpy.
* gcc.c-torture/execute/builtins/strlen.c: Do not use strcpy.
Copy the strings manually, as strcpy may call strlen.
From-SVN: r118045
Steve Ellcey [Wed, 25 Oct 2006 21:35:25 +0000 (21:35 +0000)]
hpux.h: Define _INCLUDE__STDC_A1_SOURCE in C++.
* config/ia64/hpux.h: Define _INCLUDE__STDC_A1_SOURCE in C++.
Add unix98.o to link line.
From-SVN: r118043
Kaveh R. Ghazi [Wed, 25 Oct 2006 20:44:09 +0000 (20:44 +0000)]
re PR middle-end/29335 (transcendental functions with constant arguments should be resolved at compile-time)
PR middle-end/29335
* builtins.c (fold_builtin_cbrt, fold_builtin_logarithm):
Calculate compile-time constants using MPFR.
(fold_builtin_1): Likewise handle BUILT_IN_ERF, BUILT_IN_ERFC,
BUILT_IN_EXPM1 and BUILT_IN_LOG1P.
testsuite:
* gcc.dg/torture/builtin-math-2.c (TESTIT): Use new helper macro.
Add checks for log, log2, log10 and log1p.
* gcc.dg/torture/builtin-math-3.c: Add checks for -0.0 everywhere
we already test 0.0. Add checks for expm1, log, log2, log10,
log1p, cbrt, erf and erfc.
From-SVN: r118042
Andreas Tobler [Wed, 25 Oct 2006 20:18:39 +0000 (20:18 +0000)]
natevents.cc (do_callback_arg_tests): Replace formatting modifiers %p with %#llx and cast the arguments.
2006-10-25 Andreas Tobler <a.tobler@schweiz.org>
* testsuite/libjava.jvmti/natevents.cc (do_callback_arg_tests): Replace
formatting modifiers %p with %#llx and cast the arguments.
From-SVN: r118040
Bob Wilson [Wed, 25 Oct 2006 17:03:02 +0000 (17:03 +0000)]
* config/xtensa/lib2funcs.S: Use C-style comments.
From-SVN: r118039
Steve Ellcey [Wed, 25 Oct 2006 16:32:30 +0000 (16:32 +0000)]
* gcc.dg/pthread-init-2.c: Define _POSIX_C_SOURCE on ia64 HP-UX.
From-SVN: r118035
Nathan Froyd [Wed, 25 Oct 2006 13:31:21 +0000 (13:31 +0000)]
dwarf2out.c (gen_compile_unit_die): Use IS_ABSOLUTE_PATH.
* dwarf2out.c (gen_compile_unit_die): Use IS_ABSOLUTE_PATH.
(file_table_relative_p): Likewise.
(dwarf2out_finish): Likewise.
(file_name_acquire): Use DIR_SEPARATOR and DIR_SEPARATOR_2.
From-SVN: r118033
Daniel Berlin [Wed, 25 Oct 2006 13:26:55 +0000 (13:26 +0000)]
tree-ssa-structalias.c (intra_create_variable_infos): Don't recreate nonlocal_all if it already exists.
2006-10-25 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-structalias.c (intra_create_variable_infos):
Don't recreate nonlocal_all if it already exists.
From-SVN: r118031
Richard Guenther [Wed, 25 Oct 2006 13:01:14 +0000 (13:01 +0000)]
optabs.h (enum optab_index): Remove OTI_lrint.
2006-10-25 Richard Guenther <rguenther@suse.de>
* optabs.h (enum optab_index): Remove OTI_lrint.
(enum convert_optab_index): Add COI_lrint.
(lrint_optab): Adjust.
(expand_sfix_optab): Declare.
* optabs.c (expand_sfix_optab): New function.
(init_optabs): Init lrint_optab as conversion optab.
* genopinit.c (lrint_optab): Change to a conversion optab.
* builtins.c (expand_builtin_int_roundingfn_2): Adjust to
expansion via conversion optab.
* config/i386/i386.md (*fistdi2_1): Remove
flag_unsafe_math_optimizations guard.
(fistdi2, fistdi2_with_temp, *fist<mode>2_1, fist<mode>2,
fist<mode>2_with_temp): Likewise.
(lrint<mode>2): Split into...
(lrintxf<mode>2): ... x87 part
(lrint<mode>di2, lrint<mode>si2): ... and SSE parts.
* config/i386/sse.md (sse_cvtss2si_2, sse_cvtss2_siq_2,
sse2_cvtsd2si_2, sse2_cvtsd2siq_2): New insns for
UNSPEC_FIX_NOTRUNC matching non-vector float modes.
* doc/md.texi (lrintMN2): Document.
From-SVN: r118029
Uros Bizjak [Wed, 25 Oct 2006 10:14:41 +0000 (12:14 +0200)]
re PR target/28909 (Missed optimization with x86 sync builtins)
PR target/28909
* config/i386/sync.md ("sync_add<mode>", "sync_sub<mode>"):
Use inc and dec instructions for TARGET_USE_INCDEC.
("*sync_compare_and_swap<mode>"): Fix -masm=intel template.
("sync_double_compare_and_swap<mode>"): Likewise.
("*sync_double_compare_and_swapdi_pic"): Likewise.
("*sync_compare_and_swap_cc<mode>"): Likewise.
("sync_double_compare_and_swap_cc<mode>"): Likewise.
("*sync_double_compare_and_swap_ccdi_pic"): Likewise.
("sync_old_add<mode>"): Likewise.
("sync_lock_test_and_set<mode>"): Likewise.
("sync_lock_test_and_set<mode>"): Likewise.
("sync_add<mode>"): Likewise.
("sync_sub<mode>"): Likewise.
("sync_ior<mode>"): Likewise.
("sync_and<mode>"): Likewise.
("sync_xor<mode>"): Likewise.
From-SVN: r118028
Chen Liqin [Wed, 25 Oct 2006 08:53:49 +0000 (08:53 +0000)]
MAINTAINERS: Move myself to Write After Approval section.
* MAINTAINERS: Move myself to Write After Approval section.
From-SVN: r118027
Uros Bizjak [Wed, 25 Oct 2006 06:36:49 +0000 (08:36 +0200)]
optabs.h (enum optab_index): Rename OTI_drem to OTI_remainder.
* optabs.h (enum optab_index): Rename OTI_drem to OTI_remainder.
(remainder_optab): Define corresponding macro.
(drem_optab): Remove.
* optabs.c (init_optabs): Initialize remainder_optab. Remove
drem_optab initialization.
* genopinit.c (optabs): Implement remainder_optab using
remainder?f3 patterns. Remove drem_optab.
* builtins.c (expand_builtin_mathfn_2): Handle
BUILT_IN_REMAINDER{,F,L} using remainder_optab.
(expand_builtin): Expand BUILT_IN_REMAINDER{,F,L} using
expand_builtin_mathfn_2.
(expand_builtin) [BUILT_IN_FMOD, BUILT_IN_DREM]: Do not
depend on flag_unsafe_math_optimizations.
* config/i386/i386.md ("remaindersf3", "remainderdf3")
("remainderxf3"): Renamed from "drem{s,d,x}f3" expanders.
Do not depend on flag_unsafe_math_optimizations. Use
truncxf?f expander instead of truncxf?f_i387_noop.
("fpremxf4", "fprem1xf4"): Do not depend on
flag_unsafe_math_optimizations.
("fmodsf3", "fmoddf3", "fmodxf3"): Do not depend on
flag_unsafe_math_optimizations. Use truncxf?f expander
instead of truncxf?f_i387_noop.
* doc/md.texi (fmod, remainder): Document standard named pattern.
testsuite/ChangeLog:
* gcc.dg/builtins-40.c: Also check remainder(), remainderf()
and remainderl() built-in functions. Remove -ffast-math from
dg-options.
From-SVN: r118024
Richard Sandiford [Wed, 25 Oct 2006 05:49:43 +0000 (05:49 +0000)]
re PR middle-end/29519 (Bad code on MIPS with -fnon-call-exceptions)
PR middle-end/29519
* rtlanal.c (nonzero_address_p): Remove check for values wrapping.
Co-Authored-By: David Daney <ddaney@avtrex.com>
From-SVN: r118023
Ben Elliston [Wed, 25 Oct 2006 00:40:15 +0000 (00:40 +0000)]
* pexecute.txh: Wrap pexecute's "flag" argument with @var {..}.
From-SVN: r118022
GCC Administrator [Wed, 25 Oct 2006 00:17:43 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r118020
Ben Elliston [Tue, 24 Oct 2006 23:20:33 +0000 (23:20 +0000)]
* doc/extend.texi (Variable Attributes): Typo fix.
From-SVN: r118015
Uros Bizjak [Tue, 24 Oct 2006 22:55:36 +0000 (00:55 +0200)]
i386.h (FIRST_PSEUDO_REGISTER): Define to 54.
* config/i386/i386.h (FIRST_PSEUDO_REGISTER): Define to 54.
(FIXED_REGISTERS, CALL_USED_REGISTERS): Add fpcr register.
(REG_ALLOC_ORDER): Add one element to allocate fpcr register.
(FRAME_POINTER_REGNUM): Update register number to 21.
(REG_CLASS_CONTENTS): Update contents for added fpcr register.
(HI_REGISTER_NAMES): Add "fpcr" for fpcr register.
* config/i386/i386.c (regclass_map): Add fpcr entry.
(dbx_register_map, dbx64_register_map, svr4_dbx_register_map):
Add fpcr entry.
(print_reg): Assert REGNO (x) != FPCR_REG.
* config/i386/i386.md (FPCR_REG, R11_REG): New constants.
(DIRFLAG_REG): Renumber.
(x86_fnstcw_1, x86_fldcw_1): Use FPCR_REG instead of FPSR_REG.
(*sibcall_1_rex64_v, *sibcall_value_1_rex64_v): Use R11_REG.
(sse_prologue_save, *sse_prologue_save_insn): Renumber
hardcoded SSE register numbers.
* config/i386/mmx.md (mmx_emms, mmx_femms): Renumber
hardcoded MMX register numbers.
From-SVN: r118014
Kaveh R. Ghazi [Tue, 24 Oct 2006 21:52:51 +0000 (21:52 +0000)]
builtin-math-2.c: Add checks for asin, acos, acosh and atanh.
* gcc.dg/torture/builtin-math-2.c: Add checks for asin, acos,
acosh and atanh.
* gcc.dg/torture/builtin-math-3.c (TESTIT): Append 'F' and 'L'
floating point modifiers to arguments passed to float and long
double functions respectively. Update all callers to use floating
point numbers, not integers. Add tests for exp, exp2 and
exp10/pow10.
From-SVN: r118012
Kaveh R. Ghazi [Tue, 24 Oct 2006 17:44:36 +0000 (17:44 +0000)]
re PR middle-end/29335 (transcendental functions with constant arguments should be resolved at compile-time)
PR middle-end/29335
* builtins.c (fold_builtin_sin, fold_builtin_atan): Remove.
(do_mpfr_arg1): Add `min', `max' and `inclusive' arguments.
Update all callers.
(BUILT_IN_SIN, BUILT_IN_ATAN): Handle in main switch.
(BUILT_IN_ASIN, BUILT_IN_ACOS, BUILT_IN_ATAN, BUILT_IN_ASINH,
BUILT_IN_ACOSH, BUILT_IN_ATANH, BUILT_IN_SINH, BUILT_IN_COSH,
BUILT_IN_TANH): Calculate compile-time arguments using MPFR.
testsuite:
* gcc.dg/torture/builtin-math-3.c: New test.
From-SVN: r118009
Erik Edelmann [Tue, 24 Oct 2006 17:01:30 +0000 (17:01 +0000)]
re PR fortran/29393 (Vector subscript rejected)
fortran/
2006-10-24 Erik Edelmann <eedelman@gcc.gnu.org>
PR fortran/29393
* expr.c (simplify_parameter_variable): Keep rank of original
expression.
Testsuite/
2006-10-24 Erik Edelmann <eedelman@gcc.gnu.org>
PR fortran/29393
* gfortran.dg/initialize_2.f90: New.
From-SVN: r118008
Eric Botcazou [Tue, 24 Oct 2006 13:59:06 +0000 (15:59 +0200)]
re PR libgomp/29494 (libgomp build fails with missing pthread_mutexattr_settype)
PR libgomp/29494
* configure.tgt: Use posix95 configuration for Solaris 2.5.1 and 2.6.
* config/posix95: New directory.
* config/posix95/omp-lock.h: New file.
* config/posix95/lock.c: Likewise.
From-SVN: r118004