gcc.git
17 years agoi386-protos.h (ix86_expand_trunc): Declare.
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

17 years agoconfig.gcc (i[34567]86-*-linux*): Handle --enable-targets=all.
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

17 years agoi386-protos.h (ix86_expand_round): Declare.
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

17 years agoi386-protos.h (ix86_expand_floorceil): Declare.
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

17 years agobuiltins.c (expand_builtin_mathfn): Expand nearbyint as rint in case -fno-trapping...
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

17 years agogenopinit.c (optabs): Change lfloor_optab and lceil_optab to conversion optabs.
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

17 years agore PR libfortran/24313 (complex sqrt function does not return principal value)
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

17 years agoconfigure: Regenerate.
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

17 years agoconfigure.ac (HAVE_AS_NO_SHARED): New AC_DEFINE.
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

17 years agomips.c (mips_classify_symbol): Test DECL_WEAK as well as TREE_PUBLIC when deciding...
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

17 years agore PR libstdc++/29520 (tr1: discrete_distributions vs large floating point values)
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

17 years agore PR fortran/29629 (ICE on OpenMP-enabled program (gfc_conv_variable, at fortran...
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

17 years agodarwin.c, [...]: Fix comment typos.
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

17 years ago20020118-1.c, [...]: Fix comment typos.
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

17 years ago* intrinsic.texi: Fix a typo.
Kazu Hirata [Sun, 29 Oct 2006 04:41:10 +0000 (04:41 +0000)]
* intrinsic.texi: Fix a typo.

From-SVN: r118131

17 years ago* decl.c: Fix a comment typo.
Kazu Hirata [Sun, 29 Oct 2006 04:38:03 +0000 (04:38 +0000)]
* decl.c: Fix a comment typo.

From-SVN: r118130

17 years agore PR middle-end/29335 (transcendental functions with constant arguments should be...
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

17 years agore PR other/29271 (Incorrect -fdump-rtl-sched documentation)
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

17 years agoDaily bump.
GCC Administrator [Sun, 29 Oct 2006 00:17:41 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r118126

17 years agogfortran.h: Remove GFC_MPFR_TOO_OLD.
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

17 years agore PR c++/29295 (++ operator with bool typedef increments or operator -- with bool...
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

17 years agore PR c++/29033 (%s substituted with "left"/"right" can't be properly translated)
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

17 years agoarray (array<>::_M_at): New.
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

17 years agore PR fortran/28224 (gfortran should support namelist (nml) for internal file units)
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

17 years agore PR fortran/29625 (Octal edit descriptors allow real variables, even with -std...
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

17 years agore PR fortran/29625 (Octal edit descriptors allow real variables, even with -std...
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

17 years agofold-const.c (maybe_canonicalize_comparison): Fix code to match comment.
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

17 years agoi386.h (GENERAL_REGNO_P): Use STACK_POINTER_REGNUM.
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

17 years agoMakefile.am (nat_source_files): Add natBreakpoint.cc.
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

17 years agoexcept.h (output_function_exception_table): Add 'const char*' param.
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

17 years agore PR middle-end/26899 (Fold does not fold (i0 > i1 + 1) || (i1 < i0 - 1))
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

17 years agore PR target/28806 (lround is not expanded inline to SSE conversion sequence)
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

17 years agoFixup whitespacing
Mike Stump [Sat, 28 Oct 2006 10:37:12 +0000 (10:37 +0000)]
Fixup whitespacing

From-SVN: r118104

17 years agore PR target/29377 (Build for h8300-elf crashes on 64bit hosts due to int/HWI mismatch)
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

17 years agoi386.c (output_387_ffreep): Create output from a template string for !HAVE_AS_IX86_FF...
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

17 years agojava-stack.h (ncodeMap): Declare.
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

17 years agodarwin.c: Fix formatting and grammar.
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

17 years agoDaily bump.
GCC Administrator [Sat, 28 Oct 2006 00:17:40 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r118097

17 years agobuiltins.c (fold_builtin): Don't generate NOP_EXPR that is going to be thrown away...
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

17 years ago2006-10-27 Vladimir Makarov <vmakarov@redhat.com>
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

17 years agobuiltins-43.c: Add -fno-finite-math-only.
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

17 years agoPR libgfortran/27954 Fix type in changelog, pr number
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

17 years agore PR fortran/29563 (Internal read loses data.)
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

17 years agore PR fortran/27954 (ICE on garbage in DATA statement)
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

17 years agodarwin-c.c (darwin_cpp_builtins): Move __STATIC__ and __DYNAMIC__ from here back...
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

17 years agoDaily bump.
GCC Administrator [Fri, 27 Oct 2006 00:17:41 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r118077

17 years agoggc-common.c (ggc_min_heapsize_heuristic): Be more conservative when choosing the...
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

17 years agoMAINTAINERS (Write After Approval): Add myself.
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

17 years agounwind-dw2.h: Move cfa-related variables into struct frame_state_reg_info to ensure...
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

17 years agoi386.exp: Use glob, not find to collect tests.
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

17 years agore PR fortran/29563 (Internal read loses data.)
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

17 years agore PR fortran/29563 (Internal read loses data.)
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

17 years agos390.c (s390_init_frame_layout): Check positive frame_size.
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

17 years agore PR fortran/29563 (Internal read loses data.)
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

17 years agore PR fortran/29563 (Internal read loses data.)
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

17 years agopex-win32.c (argv_to_cmdline): Replace xmalloc with XNEWVEC.
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

17 years agogimplify.c (get_name): Remove extraneous break.
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

17 years agoDaily bump.
GCC Administrator [Thu, 26 Oct 2006 00:17:36 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r118054

17 years agostrlen.c: Do not use strcpy.
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

17 years agohpux.h: Define _INCLUDE__STDC_A1_SOURCE in C++.
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

17 years agore PR middle-end/29335 (transcendental functions with constant arguments should be...
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

17 years agonatevents.cc (do_callback_arg_tests): Replace formatting modifiers %p with %#llx...
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

17 years ago* config/xtensa/lib2funcs.S: Use C-style comments.
Bob Wilson [Wed, 25 Oct 2006 17:03:02 +0000 (17:03 +0000)]
* config/xtensa/lib2funcs.S: Use C-style comments.

From-SVN: r118039

17 years ago* gcc.dg/pthread-init-2.c: Define _POSIX_C_SOURCE on ia64 HP-UX.
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

17 years agodwarf2out.c (gen_compile_unit_die): Use IS_ABSOLUTE_PATH.
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

17 years agotree-ssa-structalias.c (intra_create_variable_infos): Don't recreate nonlocal_all...
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

17 years agooptabs.h (enum optab_index): Remove OTI_lrint.
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

17 years agore PR target/28909 (Missed optimization with x86 sync builtins)
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

17 years agoMAINTAINERS: Move myself to Write After Approval section.
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

17 years agooptabs.h (enum optab_index): Rename OTI_drem to OTI_remainder.
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

17 years agore PR middle-end/29519 (Bad code on MIPS with -fnon-call-exceptions)
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

17 years ago* pexecute.txh: Wrap pexecute's "flag" argument with @var {..}.
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

17 years agoDaily bump.
GCC Administrator [Wed, 25 Oct 2006 00:17:43 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r118020

17 years ago* doc/extend.texi (Variable Attributes): Typo fix.
Ben Elliston [Tue, 24 Oct 2006 23:20:33 +0000 (23:20 +0000)]
* doc/extend.texi (Variable Attributes): Typo fix.

From-SVN: r118015

17 years agoi386.h (FIRST_PSEUDO_REGISTER): Define to 54.
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

17 years agobuiltin-math-2.c: Add checks for asin, acos, acosh and atanh.
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

17 years agore PR middle-end/29335 (transcendental functions with constant arguments should be...
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

17 years agore PR fortran/29393 (Vector subscript rejected)
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

17 years agore PR libgomp/29494 (libgomp build fails with missing pthread_mutexattr_settype)
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

17 years agobuiltin-math-2.c: New test.
Kaveh R. Ghazi [Tue, 24 Oct 2006 12:25:06 +0000 (12:25 +0000)]
builtin-math-2.c: New test.

* gcc.dg/torture/builtin-math-2.c: New test.

From-SVN: r118003

17 years agore PR middle-end/28796 (__builtin_nan() and __builtin_unordered() inconsistent)
Richard Guenther [Tue, 24 Oct 2006 09:15:07 +0000 (09:15 +0000)]
re PR middle-end/28796 (__builtin_nan() and __builtin_unordered() inconsistent)

2006-10-24  Richard Guenther  <rguenther@suse.de>

PR middle-end/28796
* builtins.c (fold_builtin_classify): Use HONOR_INFINITIES
and HONOR_NANS instead of MODE_HAS_INFINITIES and MODE_HAS_NANS
for deciding optimizations in consistency with fold-const.c
(fold_builtin_unordered_cmp): Likewise.

        * gcc.dg/pr28796-1.c: New testcase.
        * gcc.dg/pr28796-1.c: Likewise.

From-SVN: r118001

17 years agobuiltins.c (fold_builtin_floor): Fold floor (x) where x is nonnegative to trunc (x).
Richard Guenther [Tue, 24 Oct 2006 08:35:12 +0000 (08:35 +0000)]
builtins.c (fold_builtin_floor): Fold floor (x) where x is nonnegative to trunc (x).

2006-10-24  Richard Guenther  <rguenther@suse.de>

* builtins.c (fold_builtin_floor): Fold floor (x) where
x is nonnegative to trunc (x).
(fold_builtin_int_roundingfn): Fold lfloor (x) where x is
nonnegative to FIX_TRUNC_EXPR.

* gcc.dg/builtins-57.c: New testcase.

From-SVN: r117998

17 years agore PR tree-optimization/29567 (ICE in build2_stat, at tree.c:2963)
Richard Guenther [Tue, 24 Oct 2006 08:12:04 +0000 (08:12 +0000)]
re PR tree-optimization/29567 (ICE in build2_stat, at tree.c:2963)

2006-10-24  Richard Guenther  <rguenther@suse.de>

        PR tree-optimization/29567
* tree-vrp.c (register_edge_assert_for_1): Fix wrong logic
for TRUTH_NOT_EXPR.  Clarify comments.

* gfortran.fortran-torture/compile/vrp_1.f90: New testcase.

From-SVN: r117997

17 years agobuiltins.c (fold_builtin_exponent): Evaluate constant arguments at compile-time using...
Kaveh R. Ghazi [Tue, 24 Oct 2006 04:13:16 +0000 (04:13 +0000)]
builtins.c (fold_builtin_exponent): Evaluate constant arguments at compile-time using MPFR.

* builtins.c (fold_builtin_exponent): Evaluate constant arguments
at compile-time using MPFR.  Change parameter VALUE to FUNC,
update all callers.
(do_mpfr_arg1): Rename `exact' to `inexact'.  Carefully check
for overflow and underflow at all times and avoid folding in
those cases.

From-SVN: r117995

17 years ago* reload1.c: Formatting fixes.
Ben Elliston [Tue, 24 Oct 2006 03:24:58 +0000 (03:24 +0000)]
* reload1.c: Formatting fixes.

From-SVN: r117993

17 years agoDaily bump.
GCC Administrator [Tue, 24 Oct 2006 00:17:35 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r117991

17 years agore PR tree-optimization/14784 ([Tree-ssa] alias analysis deficiency)
Zdenek Dvorak [Tue, 24 Oct 2006 00:12:16 +0000 (02:12 +0200)]
re PR tree-optimization/14784 ([Tree-ssa] alias analysis deficiency)

PR tree-optimization/14784
* tree-flow.h (struct var_ann_d): Add is_heapvar bit.
* tree-ssa-structalias.c (get_constraint_for,
intra_create_variable_infos): Set is_heapvar.
* tree-ssa-operands.c (access_can_touch_variable): Do not handle
non-heapvar pointer variables specially.

* gcc.dg/alias-10.c: New test.

From-SVN: r117986

17 years agobuiltin-sin-mpfr-1.c: New test.
Kaveh R. Ghazi [Mon, 23 Oct 2006 20:31:50 +0000 (20:31 +0000)]
builtin-sin-mpfr-1.c: New test.

* gcc.dg/torture/builtin-sin-mpfr-1.c: New test.

From-SVN: r117985

17 years agore PR middle-end/29335 (transcendental functions with constant arguments should be...
Kaveh R. Ghazi [Mon, 23 Oct 2006 20:24:55 +0000 (20:24 +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_cos,
fold_builtin_tan): Fold all constant arguments.  Take a "type"
argument as necessary.
(do_mpfr_arg1): New.
* real.c, real.h (real_from_mpfr, mpfr_from_real): New.

From-SVN: r117983

17 years ago* config/xtensa/lib1funcs.asm: Use C-style comments.
Bob Wilson [Mon, 23 Oct 2006 20:17:45 +0000 (20:17 +0000)]
* config/xtensa/lib1funcs.asm: Use C-style comments.

From-SVN: r117982

17 years agodecl.c: Include langhooks.h.
Rafael Ávila de Espíndola [Mon, 23 Oct 2006 19:47:58 +0000 (19:47 +0000)]
decl.c: Include langhooks.h.

       * gcc/java/decl.c: Include langhooks.h.
       (builtin_function): Remove.
       (java_init_decl_processing): Replace calls to builtin_function
       with add_builtin_function.

       * gcc/java/Make-lang.in (jc1$(exeext)): Depend on and link with
       attribs.o.
       (java/decl.o): Depend on langhooks.h.

       * gcc/java/java-tree.h (builtin_function): Remove.

       * gcc/tree.c (local_define_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/objc/objc-act.c (synth_module_prologue): Replace calls to
       builtin_function with add_builtin_function.
       (build_next_objc_exception_stuff): Replace calls to
       builtin_function with add_builtin_function.
       (build_objc_exception_stuff): Replace calls to
       builtin_function with add_builtin_function.

       * gcc/objcp/objcp-decl.h (objcp_builtin_function): Remove.

       * gcc/cp/decl.c (builtin_function_1): Move common code to
       add_builtin_function.
       (builtin_function): Rename to cxx_builtin_function.
       Change the signature.

       * gcc/cp/call.c: Include langhooks.h.
       (build_java_interface_fn_ref):  Replace calls to
       builtin_function with add_builtin_function.

       * gcc/cp/Make-lang.in (cp/call.o): Depend on langhooks.h.

       * gcc/cp/cp-objcp-common.h (LANG_HOOKS_BUILTIN_FUNCTION): Define as
       cxx_builtin_function.

       * gcc/cp/cp-tree.h (builtin_function): Rename to cxx_builtin_function.
       Change the signature.

       * gcc/c-objc-common.h (LANG_HOOKS_BUILTIN_FUNCTION): Define as
       c_builtin_function.

       * gcc/c-tree.h (builtin_function): Rename to c_builtin_function. Change
       the signature.

       * gcc/ada/utils.c (builtin_function): Rename to gnat_builtin_function.
       Move common code to add_builtin_function.

       * gcc/ada/misc.c (LANG_HOOKS_BUILTIN_FUNCTION): Define as
       gnat_builtin_function.

       * gcc/ada/gigi.h (builtin_function): Rename to gnat_builtin_function.
       Change the signature.

       * gcc/c-decl.c (builtin_function): Rename to c_builtin_function. Move
       common code to add_builtin_function.

       * gcc/fortran/Make-lang.in (f951$(exeext)): Depend on and link with
       attribs.o.

       * gcc/fortran/trans.h (builtin_function): Rename to
       gfc_builtin_function. Change the signature.

       * gcc/fortran/f95-lang.c (LANG_HOOKS_BUILTIN_FUNCTION): Define as
       gfc_builtin_function.
       (builtin_function): Rename to gfc_builtin_function. Move common
       code to builtin_function.
       (gfc_define_builtin): Replace calls to builtin_function with
       gfc_define_builtin.

       * gcc/langhooks.c (add_builtin_function): New function.
       (lhd_builtin_function): New function.

       * gcc/langhooks.h (struct lang_hooks): Change the signature of
       builtin_function.
       (add_builtin_function): New function.

       * gcc/treelang/treetree.c (builtin_function): Remove.

       * gcc/tree-ssa-loop-prefetch.c (tree_ssa_prefetch_arrays): Replace
       calls to lang_hooks.builtin_function with add_builtin_function.

       * gcc/c-common.c (decl_builtin_1): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/alpha/alpha.c (alpha_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/frv/frv.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/s390/s390.c (s390_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/sparc/sparc.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/i386/i386.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.
       (def_builtin): Replace calls to lang_hooks.builtin_function with
       add_builtin_function.

       * gcc/config/sh/sh.c (sh_media_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/c4x/c4x.c (c4x_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/stormy16/stormy16.c (xstormy16_init_builtins):
       Replace calls to lang_hooks.builtin_function with
       add_builtin_function.

       * gcc/config/iq2000/iq2000.c (def_builtin):
       Replace calls to lang_hooks.builtin_function with
       add_builtin_function.

       * gcc/config/ia64/ia64.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/rs6000/rs6000.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.
       (altivec_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/arm/arm.c (def_mbuiltin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.
       (arm_init_tls_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/mips/mips.c (mips_init_builtins): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/config/bfin/bfin.c (def_builtin): Replace calls to
       lang_hooks.builtin_function with add_builtin_function.

       * gcc/langhooks-def.h (lhd_builtin_function): New function.
       (LANG_HOOKS_BUILTIN_FUNCTION): Define as lhd_builtin_function.

From-SVN: r117981

17 years agobuiltins.c (expand_builtin, [...]): Handle BUILT_IN_STRNCAT_CHK.
Jakub Jelinek [Mon, 23 Oct 2006 19:18:42 +0000 (21:18 +0200)]
builtins.c (expand_builtin, [...]): Handle BUILT_IN_STRNCAT_CHK.

* builtins.c (expand_builtin, maybe_emit_chk_warning): Handle
BUILT_IN_STRNCAT_CHK.

* gcc.dg/builtin-strncat-chk-1.c: New test.

From-SVN: r117980

17 years agobuiltins.c (expand_builtin_memmove): Remove ORIG_EXP argument; don't do conversion...
Jan Hubicka [Mon, 23 Oct 2006 18:50:40 +0000 (20:50 +0200)]
builtins.c (expand_builtin_memmove): Remove ORIG_EXP argument; don't do conversion from memmove to memcpy here.

* builtins.c (expand_builtin_memmove): Remove ORIG_EXP argument;
don't do conversion from memmove to memcpy here.
(expand_builtin_bcopy, expand_builtin): Update call of
expand_builtin_memmove.
(fold_builtin_memory_op): Do folding of memmove to memcpy here.

* gcc.dg/memmove-1.c: New test.

From-SVN: r117979

17 years agostor-layout.c (start_record_layout): maximum_field_alignment overrides STRUCTURE_SIZE...
Paul Brook [Mon, 23 Oct 2006 16:36:51 +0000 (16:36 +0000)]
stor-layout.c (start_record_layout): maximum_field_alignment overrides STRUCTURE_SIZE_BOUNDARY.

2006-10-23  Paul Brook  <paul@codesourcery.com>

gcc/
* stor-layout.c (start_record_layout): maximum_field_alignment
overrides STRUCTURE_SIZE_BOUNDARY.

gcc/testsuite/
* gcc.dg/pragma-pack-5.c: New test.

From-SVN: r117977

17 years agopredicates.md ("bras_sym_operand"): Do not accept nonlocal function symbols if flag_pic.
Ulrich Weigand [Mon, 23 Oct 2006 13:38:50 +0000 (13:38 +0000)]
predicates.md ("bras_sym_operand"): Do not accept nonlocal function symbols if flag_pic.

ChangeLog:

* config/s390/predicates.md ("bras_sym_operand"): Do not accept
nonlocal function symbols if flag_pic.

testsuite/ChangeLog:

* g++.dg/other/s390-1.C: New testcase.

From-SVN: r117973

17 years ago[multiple changes]
Richard Guenther [Mon, 23 Oct 2006 07:19:34 +0000 (07:19 +0000)]
[multiple changes]

2006-10-24  Richard Guenther  <rguenther@suse.de>

PR middle-end/27132
PR middle-end/23295
* builtins.c (fold_binary): Remove checks for flag_wrapv
and flag_trapv where negate_expr_p covers these cases.

* gcc.dg/pr27132.c: New testcase.
* gcc.dg/pr23295.c: Likewise.
* gcc.dg/tree-ssa/pr23294.c: Adjust patterns.
* g++.dg/tree-ssa/pr19807.C: Likewise.

2006-10-23  Richard Guenther  <rguenther@suse.de>

PR middle-end/29548
* fold-const.c (fold_plusminus_mult_expr): Check exact power
of two on the absolute value.
(fold_binary): Fold x * -C to -x * C if x is easily negatable
and negating -C does not overflow.

From-SVN: r117969

17 years agore PR middle-end/21032 (With -frounding-math, incorrectly reorders unary minus)
Richard Guenther [Mon, 23 Oct 2006 07:15:45 +0000 (07:15 +0000)]
re PR middle-end/21032 (With -frounding-math, incorrectly reorders unary minus)

2006-10-23  Richard Guenther  <rguenther@suse.de>

PR middle-end/21032
* convert.c (convert_to_real): Fold (float)-x to -(float)x
only if not flag_rounding_math.

* gcc.dg/pr21032.c: New testcase.

From-SVN: r117968

17 years agoDaily bump.
GCC Administrator [Mon, 23 Oct 2006 00:17:39 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r117966

17 years agore PR target/28232 (Wrong aligned load is generated with -m4a on sh-*)
Richard Sandiford [Mon, 23 Oct 2006 00:14:39 +0000 (00:14 +0000)]
re PR target/28232 (Wrong aligned load is generated with -m4a on sh-*)

PR target/28232
* config/sh/sh.c (expand_block_move): Use a BLKmode rather than
SImode memory reference for the source of a movua.
* config/sh/sh.md (UNSPEC_MOVUA): New macro.
(movua): Use an unspec instead of sign_extract.  Expect the source
to have mode BLKmode.
(extv, insv): Use a BLKmode rather than SImode memory reference
for the source of a movua.

Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>
From-SVN: r117961

17 years agore PR tree-optimization/15911 (VRP/DOM does not like TRUTH_AND_EXPR)
Jeff Law [Sun, 22 Oct 2006 20:11:09 +0000 (14:11 -0600)]
re PR tree-optimization/15911 (VRP/DOM does not like TRUTH_AND_EXPR)

2006-10-22  Jeff Law  <law@redhat.com>
Richard Guenther  <rguenther@suse.de>

PR tree-optimization/15911
* tree-vrp.c (extract_code_and_val_from_cond): New function.
(register_edge_assert_for_1): Likewise.
(register_edge_assert_for): Handle &&/&/||/| in conditionals.
(find_conditional_asserts): Adjust for new function signature.
(find_assert_locations): Likewise.

* gcc.dg/tree-ssa/vrp30.c: New testcase.

Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r117960