gcc.git
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

17 years agotmmintrin.h: Remove the duplicated content.
H.J. Lu [Sun, 22 Oct 2006 17:53:02 +0000 (17:53 +0000)]
tmmintrin.h: Remove the duplicated content.

2006-10-22  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/tmmintrin.h: Remove the duplicated content.

From-SVN: r117959

17 years agoconfig.gcc (i[34567]86-*-*): Add tmmintrin.h to extra_headers.
H.J. Lu [Sun, 22 Oct 2006 17:40:21 +0000 (17:40 +0000)]
config.gcc (i[34567]86-*-*): Add tmmintrin.h to extra_headers.

2006-10-22  H.J. Lu  <hongjiu.lu@intel.com>

* config.gcc (i[34567]86-*-*): Add tmmintrin.h to extra_headers.
(x86_64-*-*): Likewise.

* config/i386/i386.c (pta_flags): Add PTA_SSSE3.
(override_options): Check SSSE3.
(ix86_builtins): Add IX86_BUILTIN_PHADDW, IX86_BUILTIN_PHADDD,
IX86_BUILTIN_PHADDSW, IX86_BUILTIN_PHSUBW, IX86_BUILTIN_PHSUBD,
IX86_BUILTIN_PHSUBSW, IX86_BUILTIN_PMADDUBSW,
IX86_BUILTIN_PMULHRSW, IX86_BUILTIN_PSHUFB,
IX86_BUILTIN_PSIGNB, IX86_BUILTIN_PSIGNW, IX86_BUILTIN_PSIGND,
IX86_BUILTIN_PALIGNR, IX86_BUILTIN_PABSB, IX86_BUILTIN_PABSW,
IX86_BUILTIN_PABSD, IX86_BUILTIN_PHADDW128,
IX86_BUILTIN_PHADDD128, IX86_BUILTIN_PHADDSW128,
IX86_BUILTIN_PHSUBW128, IX86_BUILTIN_PHSUBD128,
IX86_BUILTIN_PHSUBSW128, IX86_BUILTIN_PMADDUBSW128,
IX86_BUILTIN_PMULHRSW128, IX86_BUILTIN_PSHUFB128,
IX86_BUILTIN_PSIGNB128, IX86_BUILTIN_PSIGNW128,
IX86_BUILTIN_PSIGND128, IX86_BUILTIN_PALIGNR128,
IX86_BUILTIN_PABSB128, IX86_BUILTIN_PABSW128 and
IX86_BUILTIN_PABSD128.
(bdesc_2arg): Add SSSE3.
(bdesc_1arg): Likewise.
(ix86_init_mmx_sse_builtins): Support SSSE3.
(ix86_expand_builtin): Likewise.
* config/i386/i386.h (TARGET_CPU_CPP_BUILTINS): Likewise.

* config/i386/i386.md (UNSPEC_PSHUFB): New.
(UNSPEC_PSIGN): Likewise.
(UNSPEC_PALIGNR): Likewise.
Include mmx.md before sse.md.

* config/i386/i386.opt: Add -mssse3.

* config/i386/sse.md (ssse3_phaddwv8hi3): New pattern for SSSE3.
(ssse3_phaddwv4hi3): Likewise.
(ssse3_phadddv4si3): Likewise.
(ssse3_phadddv2si3): Likewise.
(ssse3_phaddswv8hi3): Likewise.
(ssse3_phaddswv4hi3): Likewise.
(ssse3_phsubwv8hi3): Likewise.
(ssse3_phsubwv4hi3): Likewise.
(ssse3_phsubdv4si3): Likewise.
(ssse3_phsubdv2si3): Likewise.
(ssse3_phsubswv8hi3): Likewise.
(ssse3_phsubswv4hi3): Likewise.
(ssse3_pmaddubswv8hi3): Likewise.
(ssse3_pmaddubswv4hi3): Likewise.
(ssse3_pmulhrswv8hi3): Likewise.
(ssse3_pmulhrswv4hi3): Likewise.
(ssse3_pshufbv16qi3): Likewise.
(ssse3_pshufbv8qi3): Likewise.
(ssse3_psign<mode>3): Likewise.
(ssse3_psign<mode>3): Likewise.
(ssse3_palignrti): Likewise.
(ssse3_palignrdi): Likewise.
(abs<mode>2): Likewise.
(abs<mode>2): Likewise.

* config/i386/tmmintrin.h: New file.

* doc/extend.texi: Document SSSE3 built-in functions.

* doc/invoke.texi: Document -mssse3/-mno-ssse3 switches.

From-SVN: r117958

17 years agore PR libstdc++/20647 (Wrong typeid for incomplete types)
Nathan Sidwell [Sun, 22 Oct 2006 16:07:41 +0000 (16:07 +0000)]
re PR libstdc++/20647 (Wrong typeid for incomplete types)

cp/
PR c++/20647
* rtti.c (tinfo_base_init): The type info string is always global.
testsuite/
PR c++/20647
* g++.dg/abi/rtti3.C: New.

From-SVN: r117957

17 years ago* cpplib.pot: Regenerate.
Joseph Myers [Sun, 22 Oct 2006 12:40:31 +0000 (13:40 +0100)]
* cpplib.pot: Regenerate.

From-SVN: r117954

17 years ago* gcc.pot: Regenerate.
Joseph Myers [Sun, 22 Oct 2006 12:39:40 +0000 (13:39 +0100)]
* gcc.pot: Regenerate.

From-SVN: r117953

17 years agotree-vect-transform.c (vectorizable_load): Use the type of the return value of the...
Ira Rosen [Sun, 22 Oct 2006 10:45:36 +0000 (10:45 +0000)]
tree-vect-transform.c (vectorizable_load): Use the type of the return value of the mask_for_load builtin to create...

        * tree-vect-transform.c (vectorizable_load): Use the type of the
        return value of the mask_for_load builtin to create realign_load
        stmt.

From-SVN: r117952

17 years agomips.c (mips_split_const): Don't accept bare PLUS expressions.
Richard Sandiford [Sun, 22 Oct 2006 09:28:01 +0000 (09:28 +0000)]
mips.c (mips_split_const): Don't accept bare PLUS expressions.

gcc/
* config/mips/mips.c (mips_split_const): Don't accept bare PLUS
expressions.

From-SVN: r117950

17 years agore PR fortran/26025 (Optionally use BLAS for matmul)
Francois-Xavier Coudert [Sun, 22 Oct 2006 07:41:48 +0000 (09:41 +0200)]
re PR fortran/26025 (Optionally use BLAS for matmul)

PR fortran/26025

* lang.opt: Add -fexternal-blas and -fblas-matmul-limit options.
* options.c (gfc_init_options): Initialize new flags.
(gfc_handle_option): Handle new flags.
* gfortran.h (gfc_option): Add flag_external_blas and
blas_matmul_limit flags.
* trans-expr.c (gfc_conv_function_call): Use new argument
append_args, appending it at the end of the argument list
built for a function call.
* trans-stmt.c (gfc_trans_call): Use NULL_TREE for the new
append_args argument to gfc_trans_call.
* trans.h (gfc_conv_function_call): Update prototype.
* trans-decl.c (gfc_build_intrinsic_function_decls): Add
prototypes for BLAS ?gemm routines.
* trans-intrinsic.c (gfc_conv_intrinsic_funcall): Generate the
extra arguments given to the library matmul function, and give
them to gfc_conv_function_call.
* invoke.texi: Add documentation for -fexternal-blas and
-fblas-matmul-limit.

* m4/matmul.m4: Add possible call to gemm routine.
* generated/matmul_r8.c: Regenerate.
* generated/matmul_r16.c: Regenerate.
* generated/matmul_c8.c: Regenerate.
* generated/matmul_i8.c: Regenerate.
* generated/matmul_c16.c: Regenerate.
* generated/matmul_r10.c: Regenerate.
* generated/matmul_r4.c: Regenerate.
* generated/matmul_c10.c: Regenerate.
* generated/matmul_c4.c: Regenerate.
* generated/matmul_i4.c: Regenerate.
* generated/matmul_i16.c: Regenerate.

From-SVN: r117948

17 years agoCommit forgotten file
Daniel Berlin [Sun, 22 Oct 2006 01:25:17 +0000 (01:25 +0000)]
Commit forgotten file

From-SVN: r117947

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

From-SVN: r117945

17 years agoerror.c: Add errno.h
Steven G. Kargl [Sat, 21 Oct 2006 22:38:56 +0000 (22:38 +0000)]
error.c: Add errno.h

2006-10-21  Steven G. Kargl  <kargl@gcc.gnu.org>

        * runtime/error.c: Add errno.h
        (generate_error): Set iostat to errno on OS error.
        * libgfortran.h: Set ERROR_OS to 5000

From-SVN: r117939

17 years agoi386.md (UNSPEC_LDQQU): Renamed to ...
H.J. Lu [Sat, 21 Oct 2006 20:43:32 +0000 (20:43 +0000)]
i386.md (UNSPEC_LDQQU): Renamed to ...

2006-10-21  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/i386.md (UNSPEC_LDQQU): Renamed to ...
(UNSPEC_LDDQU): This.
* config/i386/sse.md (sse3_lddqu): Updated.

From-SVN: r117938

17 years agore PR middle-end/28252 (pow(x,1/3.0) should be converted to cbrt(x))
Uros Bizjak [Sat, 21 Oct 2006 20:05:35 +0000 (22:05 +0200)]
re PR middle-end/28252 (pow(x,1/3.0) should be converted to cbrt(x))

2006-10-21  Uros Bizjak  <uros@kss-loka.si>

        PR middle-end/28252
        * builtins.c (fold_builtin): Fold pow(x,1.0/3.0) as cbrt(x) if
        flag_unsafe_math_optimizations is set.

testsuite/ChangeLog:

        PR middle-end/28252
        * gcc.dg/builtins-8.c: Also check pow(x,1.0/3.0) to cbrt(x)
        transformation.

From-SVN: r117937

17 years agobuiltins.c (expand_builtin_int_roundingfn_2): New function.
Richard Guenther [Sat, 21 Oct 2006 19:55:07 +0000 (19:55 +0000)]
builtins.c (expand_builtin_int_roundingfn_2): New function.

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

* builtins.c (expand_builtin_int_roundingfn_2): New function.
(expand_builtin): Use it to expand lrint instead of
expand_builtin_mathfn.

From-SVN: r117936

17 years agore PR rtl-optimization/19398 (secondary reloads don't consider "m" alternatives)
Uros Bizjak [Sat, 21 Oct 2006 19:27:02 +0000 (21:27 +0200)]
re PR rtl-optimization/19398 (secondary reloads don't consider "m" alternatives)

        PR target/19398
        * config/i386/i386.md (fix_trunc?f?i_sse): Add peephole2
        patterns to use memory input operand in x87->mem->XMM
        reload sequences.  Skip transformation for TARGET_K8.

From-SVN: r117935

17 years agoi386.md (extendsfdf2, [...]): Do not force operand1 to register if both operands...
Uros Bizjak [Sat, 21 Oct 2006 15:49:41 +0000 (17:49 +0200)]
i386.md (extendsfdf2, [...]): Do not force operand1 to register if both operands are memory operands.

        * config/i386/i386.md (extendsfdf2, extendsfxf2, extenddfxf2): Do not
        force operand1 to register if both operands are memory operands.
        (*extendsfdf2_mixed, *extendsfdf2_sse, *extendsfdf2_i387)
        (*extendsfxf2_i387, *extenddfxf2_i387): Do not disable pattern
        if both operands are memory operands.
        (truncdfsf2): Do not force operand1 to register if both operands
        are memory operands.

From-SVN: r117934

17 years agoconfigure.in: Require GMP-4.1+ and MPFR-2.2+.
Kaveh R. Ghazi [Sat, 21 Oct 2006 13:58:13 +0000 (13:58 +0000)]
configure.in: Require GMP-4.1+ and MPFR-2.2+.

* configure.in: Require GMP-4.1+ and MPFR-2.2+.  Don't check
need_gmp anymore.
* configure: Regenerate.

gcc:
* Makefile.in (LIBS): Add $(GMPLIBS).
* doc/install.texi: Update GMP and MPFR requirements.
* doc/sourcebuild.texi (need_gmp): Delete.

gcc/fortran:
* Make-lang.in (F95_LIBS): Delete.
* f951$(exeext): Use $(LIBS) instead of $(F95_LIBS).
* config-lang.in (need_gmp): Delete.

From-SVN: r117933

17 years agore PR tree-optimization/3511 (Inlined strlen() could be smarter)
Richard Guenther [Sat, 21 Oct 2006 13:23:41 +0000 (13:23 +0000)]
re PR tree-optimization/3511 (Inlined strlen() could be smarter)

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

PR tree-optimization/3511
* tree-ssa-pre.c (phi_translate): Fold CALL_EXPRs that
got new invariant arguments during PHI translation.

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

From-SVN: r117932

17 years agore PR middle-end/26898 (Fold does not fold signed + CST1 CMP signed + CST2)
Richard Guenther [Sat, 21 Oct 2006 13:21:06 +0000 (13:21 +0000)]
re PR middle-end/26898 (Fold does not fold signed + CST1 CMP signed + CST2)

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

PR middle-end/26898
* fold-const.c (fold_comparison): Fold signed comparisons
of the form X +- C1 CMP Y +- C2.

* gcc.dg/torture/pr26898-1.c: New testcase.
* gcc.dg/torture/pr26898-2.c: Likewise.

From-SVN: r117931

17 years agore PR target/19116 (-funsafe-math-optimizations make nan compares equal to one anothe...
Richard Guenther [Sat, 21 Oct 2006 10:40:57 +0000 (10:40 +0000)]
re PR target/19116 (-funsafe-math-optimizations make nan compares equal to one another (-finite-math-only should be doing that))

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

PR target/19116
* config/i386/i386.c (override_options): Do not set MASK_IEEE_FP
if flag_unsafe_math_optimizations is specified.  We have
flag_finite_math_only for that.
* config/i386/i386.md (sqrtxf2): Do not require TARGET_IEEE_FP
or flag_unsafe_math_optimizations.

From-SVN: r117930