platform/upstream/gcc.git
17 years ago[multiple changes]
H.J. Lu [Fri, 1 Dec 2006 14:49:15 +0000 (06:49 -0800)]
[multiple changes]

2006-12-01  Zdenek Dvorak <dvorakz@suse.cz>

PR tree-optimization/29921
* tree-ssa-ccp.c (canonicalize_float_value): New function.
(set_lattice_value): Use canonicalize_float_value.

2006-12-01  H.J. Lu  <hongjiu.lu@intel.com>
    Zdenek Dvorak <dvorakz@suse.cz>

PR tree-optimization/29921
* gcc.dg/pr29921-2.c: New test.

From-SVN: r119401

17 years agospu.c (spu_builtin_range): Move from spu-c.c
Andrew Pinski [Fri, 1 Dec 2006 02:38:47 +0000 (02:38 +0000)]
spu.c (spu_builtin_range): Move from spu-c.c

2006-11-30  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/spu/spu.c (spu_builtin_range): Move from spu-c.c
        (TARGET_RESOLVE_OVERLOADED_BUILTIN): Delete.
        (spu_cpu_cpp_builtins): Remove.
        (spu_override_options): Don't set warn_main.
        (spu_force_reg): Move from spu-c.c.
        (spu_check_builtin_parm): Likewise.
        (expand_builtin_args): Likewise.
        (spu_expand_builtin_1): Likewise.
        (spu_expand_builtin): Likewise.
        * config/spu/spu.h (REGISTER_TARGET_PRAGMAS): Define, set
        warn_main and targetm.resolve_overloaded_builtin.
        * config/spu/spu-c.c (spu_builtin_range): Remove.
        (spu_check_builtin_parm): Remove.
        (expand_builtin_args): Remove.
        (spu_expand_builtin_1): Remove.
        (spu_expand_builtin): Remove.
        (spu_cpu_cpp_builtins): Moved from spu.c
        (spu_force_reg): Remove.

From-SVN: r119397

17 years agore PR target/24036 ([e500] ICE in subreg_offset_representable_p, at rtlanal.c:3143)
Joseph Myers [Fri, 1 Dec 2006 02:25:22 +0000 (02:25 +0000)]
re PR target/24036 ([e500] ICE in subreg_offset_representable_p, at rtlanal.c:3143)

2006-12-01  Joseph Myers  <joseph@codesourcery.com>
            David Edelsohn  <edelsohn@gnu.org>

PR target/24036
* doc/tm.texi (HARD_REGNO_NREGS_HAS_PADDING,
HARD_REGNO_NREGS_WITH_PADDING): Document new target macros.
* defaults.h (HARD_REGNO_NREGS_HAS_PADDING,
HARD_REGNO_NREGS_WITH_PADDING): Define.
* config/i386/i386.h (HARD_REGNO_NREGS_HAS_PADDING,
HARD_REGNO_NREGS_WITH_PADDING): Define.
* rtlanal.c (subreg_regno_offset, subreg_offset_representable_p):
Use new macros to detect modes with holes; do not look at integer
units.
(subreg_offset_representable_p): Check for and disallow cases
where the modes use different numbers of bits from registers.
* config/rs6000/rs6000.c (rs6000_emit_move): Handle TFmode
constant for soft-float.
(rs6000_hard_regno_nregs): Use UNITS_PER_FP_WORD for e500 GPRs
containing doubles.
(rs6000_split_multireg_move): Use DFmode reg_mode for TFmode moves
in E500 double case.
* config/rs6000/rs6000.md (movtf): Allow soft-float.
(movtf_softfloat): New.

Co-Authored-By: David Edelsohn <edelsohn@gnu.org>
From-SVN: r119395

17 years agoi386-cpuid.h (bit_SSE3): New.
H.J. Lu [Fri, 1 Dec 2006 00:29:08 +0000 (00:29 +0000)]
i386-cpuid.h (bit_SSE3): New.

2006-11-30  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.dg/i386-cpuid.h (bit_SSE3): New.
(i386_get_cpuid): New function.
(i386_cpuid_ecx): Likewise.
(i386_cpuid_edx): Likewise.
(i386_cpuid): Updated to call i386_cpuid_edx.

* gcc.target/i386/sse3-addsubpd.c: New file.
* gcc.target/i386/sse3-addsubps.c: Likewise.
* gcc.target/i386/sse3-haddpd.c: Likewise.
* gcc.target/i386/sse3-haddps.c: Likewise.
* gcc.target/i386/sse3-hsubpd.c: Likewise.
* gcc.target/i386/sse3-hsubps.c: Likewise.
* gcc.target/i386/sse3-lddqu.c: Likewise.
* gcc.target/i386/sse3-movddup.c: Likewise.
* gcc.target/i386/sse3-movshdup.c: Likewise.
* gcc.target/i386/sse3-movsldup.c: Likewise.

From-SVN: r119390

17 years agoDaily bump.
GCC Administrator [Fri, 1 Dec 2006 00:17:52 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r119388

17 years agore PR c++/18313 (Missing warning for superfluous const's in return types)
Dirk Mueller [Thu, 30 Nov 2006 23:08:27 +0000 (23:08 +0000)]
re PR c++/18313 (Missing warning for superfluous const's in return types)

2006-12-01  Dirk Mueller  <dmueller@suse.de>

        PR c++/18313
        * decl.c (grokdeclarator): Warn for type qualifiers on return
        type for non-dependent types.
        * pt.c (tsubst_function_type): Warn for type qualifiers on
        return type for dependent types.

        * g++.dg/warn/Wreturn-type-4.C: New testcase.

From-SVN: r119382

17 years agosimplify-rtx.c (simplify_rtx): Use simplify_subreg rather than simplify_gen_subreg.
Richard Sandiford [Thu, 30 Nov 2006 21:54:20 +0000 (21:54 +0000)]
simplify-rtx.c (simplify_rtx): Use simplify_subreg rather than simplify_gen_subreg.

gcc/
* simplify-rtx.c (simplify_rtx): Use simplify_subreg rather than
simplify_gen_subreg.

From-SVN: r119380

17 years agortti.c (get_tinfo_decl): Handle return value from pushdecl_top_level_and_finish.
Geoffrey Keating [Thu, 30 Nov 2006 21:53:57 +0000 (21:53 +0000)]
rtti.c (get_tinfo_decl): Handle return value from pushdecl_top_level_and_finish.

* rtti.c (get_tinfo_decl): Handle return value from
pushdecl_top_level_and_finish.

From-SVN: r119379

17 years agoImplement coalesce list with hash table instead of linked list.
Andrew MacLeod [Thu, 30 Nov 2006 21:36:32 +0000 (21:36 +0000)]
Implement coalesce list with hash table instead of linked list.

* tree-ssa-live.c (create_coalesce_list): Create a hash table.
(COALESCE_HASH_FN): New.  Define hash function.
(partition_pair_map_hash): New.  Hash value for a partition pair.
(partition_pair_map_eq): New.  Equality for hash pairs.
(create_coalesce_list): Create hash table.
(delete_coalesce_list): Free hash table.
(find_partition_pair): Find/create pairs in hash table.
(compare_pairs):  Sort pairs in ascending order now.
(num_coalesce_pairs): New.  Number of pairs in hash table.
(struct partition_pair_iterator): Iterator struct for pair table.
(first_partition_pair): Iterator function for first pair.
(end_partition_pair_p): Iterator function for end of iteration.
(next_partition_pair): Iterator function for next pair.
(FOR_EACH_PARTITION_PAIR): Macro for iterating over pairs.
(sort_coalesce_list): Sort pairs from hash table into an array.
(pop_best_coalesce): Take pairs from the array.
(dump_coalesce_list): Update to use hash table or sorted array.
* tree-ssa-live.h (struct partition_pair_d): Remove next field.
(struct coalesce_list_d): Add hash table related fields.

From-SVN: r119378

17 years agore PR middle-end/30028 (bcopy is wrongly converted to memcpy)
Jan Hubicka [Thu, 30 Nov 2006 19:36:02 +0000 (20:36 +0100)]
re PR middle-end/30028 (bcopy is wrongly converted to memcpy)

PR middle-end/30028
* builtins.c (fold_builtin_memory_op): Fix typo in the check for
memmove/bcopy->memcpy conversion.

From-SVN: r119375

17 years agotm.texi (MAX_OFILE_ALIGNMENT): Document default.
Carlos O'Donell [Thu, 30 Nov 2006 19:25:08 +0000 (19:25 +0000)]
tm.texi (MAX_OFILE_ALIGNMENT): Document default.

gcc/

2006-11-30  Carlos O'Donell  <carlos@codesourcery.com>

* doc/tm.texi (MAX_OFILE_ALIGNMENT): Document default.
* config/elfos.h [!MAX_OFILE_ALIGNMENT] (MAX_OFILE_ALIGNMENT):
Default is the largest alignment supported for 32-bit ELF and
representable on a 32-bit host.

From-SVN: r119374

17 years agodfp-bit.c (DFP_TO_INT): Use wider precision.
Janis Johnson [Thu, 30 Nov 2006 17:58:03 +0000 (17:58 +0000)]
dfp-bit.c (DFP_TO_INT): Use wider precision.

gcc/
* config/dfp-bit.c (DFP_TO_INT): Use wider precision.
testsuite/
* gcc.dg/dfp/convert-int-max.c: New test.
* gcc.dg/dfp/convert-int-max-fold.c: New test.

From-SVN: r119368

17 years agore PR driver/29931 (following argv[0] symlink in process_command breaks symlinked...
Andrew Stubbs [Thu, 30 Nov 2006 17:05:45 +0000 (17:05 +0000)]
re PR driver/29931 (following argv[0] symlink in process_command breaks symlinked-together toolchain)

include:
2006-05-03  Andrew Stubbs  <andrew.stubbs@st.com>
            J"orn Rennecke <joern.rennecke@st.com>

PR driver/29931
* libiberty.h (make_relative_prefix_ignore_links): Declare.

libiberty:
2006-05-03  Andrew Stubbs  <andrew.stubbs@st.com>
            J"orn Rennecke <joern.rennecke@st.com>

PR driver/29931
* make-relative-prefix.c (make_relative_prefix_1): New function,
broken out of make_relative_prefix.  Make link resolution dependent
on new parameter.
(make_relative_prefix): Use make_relative_prefix_1.
(make_relative_prefix_ignore_links): New function.

Co-Authored-By: J"orn Rennecke <joern.rennecke@st.com>
From-SVN: r119366

17 years agotree-ssa-operands.h (struct ssa_operands): New.
Jan Hubicka [Thu, 30 Nov 2006 15:30:01 +0000 (16:30 +0100)]
tree-ssa-operands.h (struct ssa_operands): New.

* tree-ssa-operands.h (struct ssa_operands): New.
* tree-flow-inline.h (gimple_ssa_operands): New function.
* tree-flow.h: (struct gimple_df): Add ssa_operands.
* Makefile.in: Remove gt-tree-ssa-operands.h
* tree-ssa-operands.c: Do not include gt-tree-ssa-operands.h
(free_defs, free_uses, free_vuses, free_maydefs, free_mustdefs,
operand_memory, operand_memory_index, ops_active): Remove statics.
(ALLOC_OPTYPE): Update.
(operand_build_sort_virtual): Update.
(ssa_operands_active): Update.
(init_ssa_operands): Update.
(fini_ssa_operands): Update.
(ssa_operand_alloc): Update.
(INITIALIZE_USE): Update.
(finalize_ssa_use_ops): Update.
(finalize_ssa_v_may_def_ops): Update.
(finalize_ssa_vuse_ops): Update.
(finalize_ssa_v_must_def_ops): Update.

From-SVN: r119363

17 years agotree-vectorizer.h (vectorizable_function): Export.
Richard Guenther [Thu, 30 Nov 2006 14:30:00 +0000 (14:30 +0000)]
tree-vectorizer.h (vectorizable_function): Export.

2006-11-30  Richard Guenther  <rguenther@suse.de>

* tree-vectorizer.h (vectorizable_function): Export.
* tree-vect-transform.c (vectorizable_function): Likewise.
        * tree-vect-patterns.c (vect_recog_pow_pattern): Set
        type_in to scalar type in recognition of squaring.
Make sure the target can vectorize sqrt in recognition
of sqrt, set type_in to vector type in this case.

* gcc.dg/vect/vect-pow-1.c: Rename ...
* gcc.dg/vect/fast-math-vect-pow-1.c: ... to this.  Use
floats instead of doubles, check successful vectorization.

From-SVN: r119362

17 years agoi386.md (R10_REG): New constant.
Uros Bizjak [Thu, 30 Nov 2006 10:57:34 +0000 (11:57 +0100)]
i386.md (R10_REG): New constant.

* config/i386/i386.md (R10_REG): New constant.
* config/i386/i386.c (pro_epilogue_adjust_stack): Use R11_REG.
(ix86_emit_restore_regs_using_mov): Ditto.
(ix86_expand_call): Ditto.
(x86_output_mi_thunk): Ditto. Also use R10_REG.

From-SVN: r119360

17 years agocselib.c (cselib_init): Use special MEM rtx form for callmem.
Steven Bosscher [Thu, 30 Nov 2006 07:24:03 +0000 (07:24 +0000)]
cselib.c (cselib_init): Use special MEM rtx form for callmem.

* cselib.c (cselib_init): Use special MEM rtx form for callmem.
* alias.c (canon_true_dependence): Update comment.

From-SVN: r119358

17 years agocgraphunit.c (cgraph_finalize_compilation_unit): Add a newline at the end of a diagno...
Steven Bosscher [Thu, 30 Nov 2006 07:22:04 +0000 (07:22 +0000)]
cgraphunit.c (cgraph_finalize_compilation_unit): Add a newline at the end of a diagnostics message.

* cgraphunit.c (cgraph_finalize_compilation_unit): Add a newline
at the end of a diagnostics message.

* alloc-pool.c (pool_free): Postpone clearing the pool entry
until after asserting that it was allocated in the right pool.

* cfgrtl.c (print_rtl_with_bb): Print predecessor and
successor edge information as well.  Make output of live regs
on exit consistent with live regs on entry.

From-SVN: r119357

17 years agore PR target/29852 (x86_64: SSE version missing for fmod{d,s,x}f3)
Uros Bizjak [Thu, 30 Nov 2006 06:54:47 +0000 (07:54 +0100)]
re PR target/29852 (x86_64: SSE version missing for fmod{d,s,x}f3)

PR target/29852
* config/i386/i386.md (*truncxfsf2_mixed, *truncxfdf2_mixed): Enable
insn patterns for TARGET_80387.
(*truncxfsf2_i387, *truncxfdf2_i387): Remove.
(*truncxfsf2_i387_1): Rename to *truncxfsf2_i387.
(*truncxfdf2_i387_1): Rename to *truncxfdf2_i387.
(fmod<mode>3, remainder<mode>3): Enable expaders for SSE math.
Generate truncxf<mode>2 insn patterns for strict SSE math.

From-SVN: r119356

17 years agoi386.md (movsf_1): Enable pattern for standard 80387 constants before reload when...
Uros Bizjak [Thu, 30 Nov 2006 06:47:24 +0000 (07:47 +0100)]
i386.md (movsf_1): Enable pattern for standard 80387 constants before reload when optimizing for size.

* config/i386/i386.md (movsf_1): Enable pattern for standard
80387 constants before reload when optimizing for size.
(*movdf_nointeger, *movdf_integer): Ditto.
(*movxf_nointeger, *movxf_integer): Disable patterns for standard
80387 constants before reload when not optimizing for size.

(*fop_xf_4_i387, *fop_xf_5_i387, *fop_xf_6_i387): Avoid float
extension of XFmode input operands.

From-SVN: r119355

17 years agocrt0.c (__dso_handle): Define.
Andrew Pinski [Thu, 30 Nov 2006 03:37:34 +0000 (03:37 +0000)]
crt0.c (__dso_handle): Define.

2006-11-29  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/spu/crt0.c (__dso_handle): Define.

From-SVN: r119354

17 years agoemit-rtl.c (verify_rtl_sharing): Handle SEQUENCE specially when clearing the used...
Kaz Kojima [Thu, 30 Nov 2006 03:13:29 +0000 (03:13 +0000)]
emit-rtl.c (verify_rtl_sharing): Handle SEQUENCE specially when clearing the used flags.

* emit-rtl.c (verify_rtl_sharing): Handle SEQUENCE specially
when clearing the used flags.

From-SVN: r119353

17 years agospu.md (extend_compare): Fix whitespace formatting.
Andrew Pinski [Thu, 30 Nov 2006 01:19:00 +0000 (01:19 +0000)]
spu.md (extend_compare): Fix whitespace formatting.

2006-11-29  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/spu/spu.md (extend_compare): Fix whitespace formatting.

From-SVN: r119350

17 years agore PR target/29945 (ICE in simplify_subreg with simple code in libgfortran)
Andrew Pinski [Thu, 30 Nov 2006 01:05:58 +0000 (01:05 +0000)]
re PR target/29945 (ICE in simplify_subreg with simple code in libgfortran)

2006-11-29  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/29945
        * config/spu/spu.md  (extend_compare<mode>): New pattern.
        (extend_compare): Change to expand and use the above pattern.

2006-11-29  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR target/29945
        * gcc.c-torture/compile/pr29945.c: New testcase.

From-SVN: r119348

17 years agoDaily bump.
GCC Administrator [Thu, 30 Nov 2006 00:17:59 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r119345

17 years agovect.exp: Skip PowerPC targets not supporting -maltivec.
Joseph Myers [Thu, 30 Nov 2006 00:12:49 +0000 (00:12 +0000)]
vect.exp: Skip PowerPC targets not supporting -maltivec.

* gcc.dg/vect/vect.exp: Skip PowerPC targets not supporting
-maltivec.

From-SVN: r119338

17 years ago* dfp-bit.c (DFP_TO_INT): Fix rounding mode.
Janis Johnson [Wed, 29 Nov 2006 23:11:01 +0000 (23:11 +0000)]
* dfp-bit.c (DFP_TO_INT): Fix rounding mode.

From-SVN: r119335

17 years agothrow_allocator.h: Consistent @file markup.
Benjamin Kosnik [Wed, 29 Nov 2006 20:59:22 +0000 (20:59 +0000)]
throw_allocator.h: Consistent @file markup.

2006-11-29  Benjamin Kosnik  <bkoz@redhat.com>

* include/ext/throw_allocator.h: Consistent @file markup.
* include/ext/type_traits.h: Same.
* include/debug/hash_map: Same.
* include/debug/hash_multimap.h: Same.
* include/debug/set.h: Same.
* include/debug/hash_set.h: Same.
* include/debug/formatter.h: Same.
* include/debug/bitset: Same.
* include/debug/set: Same.
* include/debug/multiset.h: Same.
* include/debug/safe_sequence.h: Same.
* include/debug/hash_set: Same.
* include/debug/functions.h: Same.
* include/debug/safe_base.h: Same.
* include/debug/hash_multiset.h: Same.
* include/debug/safe_iterator.tcc: Same.
* include/debug/vector: Same.
* include/debug/map.h: Same.
* include/debug/deque: Same.
* include/debug/hash_map.h: Same.
* include/debug/string: Same.
* include/debug/macros.h: Same.
* include/debug/list: Same.
* include/debug/debug.h: Same.
* include/debug/map: Same.
* include/debug/safe_iterator.h: Same.
* include/debug/multimap.h: Same.
* config/cpu/generic/atomicity_mutex/atomicity.h: Same.
* config/cpu/generic/atomicity_builtins/atomicity.h: Same.
* config/cpu/generic/atomic_word.h: Same.
* include/tr1/memory: Same.
* include/tr1/random: Same.
* include/std/std_queue.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_bitset.h: Same.
* include/std/std_set.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_deque.h: Same.
* include/std/std_utility.h: Same.
* include/std/std_stack.h: Same.
* include/std/std_string.h: Same.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* libsupc++/typeinfo: Same.
* libsupc++/exception: Same.
* libsupc++/exception_defines.h: Same.
* libsupc++/new: Same.

* include/ext/bitmap_allocator.h: Change namespace __balloc to
__detail.
* src/bitmap_allocator.cc: Same.

* include/bits/cpp_type_traits.h: Change __true_type and
__false_type from global to namespace std scope.
* include/ext/slist: Same.
* include/ext/vstring.h: Same.
* include/ext/vstring.tcc: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/sso_string_base.h: Same.

* include/bits/codecvt.h: Adjust markup so that correct namespace
scope information is in all files.
* include/bits/locale_facets.h: Same. Include ctype_base directly.
* config/os/windiss/ctype_base.h: Add in namespace markup.
* config/os/newlib/ctype_base.h: Same.
* config/os/aix/ctype_base.h: Same.
* config/os/vxworks/ctype_base.h: Same.
* config/os/hpux/ctype_base.h: Same.
* config/os/mingw32/ctype_base.h: Same.
* config/os/gnu-linux/ctype_base.h: Same.
* config/os/tpf/ctype_base.h: Same.
* config/os/uclibc/ctype_base.h: Same.
* config/os/djgpp/ctype_base.h: Same.
* config/os/qnx/qnx6.1/ctype_base.h: Same.
* config/os/bsd/netbsd/ctype_base.h: Same.
* config/os/bsd/darwin/ctype_base.h: Same.
* config/os/bsd/freebsd/ctype_base.h: Same.
* config/os/irix/irix5.2/ctype_base.h: Same.
* config/os/irix/irix6.5/ctype_base.h: Same.
* config/os/solaris/solaris2.5/ctype_base.h: Same.
* config/os/solaris/solaris2.6/ctype_base.h: Same.
* config/os/solaris/solaris2.7/ctype_base.h: Same.
* config/os/generic/ctype_base.h: Same.
* include/tr1/mu_iterate.h: Same.
* include/tr1/tuple: Same.
* include/tr1/tuple_iterate.h: Same.
* include/tr1/tuple_defs.h: Same.
* include/tr1/random.tcc: Same.
* include/tr1/functional: Same.
* include/tr1/functional_iterate.h: Same.

* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Line
number changes.
* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.

* docs/doxygen/user.cfg.in: Update to doxygen 1.5.1.
* docs/html/17_intro/license.html: Updated info for generated docs.
* docs/doxygen/guide.html: Adjust.
* docs/doxygen/run_doxygen: Adjust.
* docs/doxygen/mainpage.html: Same.
* docs/doxygen/doxygroups.cc: Same.
* docs/doxygen/Intro.3: Same.
* docs/doxygen/tables.html: Same.

From-SVN: r119334

17 years agoprefetch-3.c: Allow x86_64, but require ilp32.
Eric Christopher [Wed, 29 Nov 2006 19:31:24 +0000 (19:31 +0000)]
prefetch-3.c: Allow x86_64, but require ilp32.

2006-11-29  Eric Christopher  <echristo@apple.com>

        * gcc.dg/tree-ssa/prefetch-3.c: Allow x86_64, but require ilp32.

From-SVN: r119333

17 years ago* gcc.dg/dfp/convert-int.c: Remove dg-do compile, fix comment.
Janis Johnson [Wed, 29 Nov 2006 18:37:48 +0000 (18:37 +0000)]
* gcc.dg/dfp/convert-int.c: Remove dg-do compile, fix comment.

From-SVN: r119331

17 years ago* gcc.dg/dfp/convert-bfp.c: Skip long double conversions.
Janis Johnson [Wed, 29 Nov 2006 18:36:55 +0000 (18:36 +0000)]
* gcc.dg/dfp/convert-bfp.c: Skip long double conversions.

From-SVN: r119330

17 years agodecRound.c: Move declarations to new file, update comments.
Janis Johnson [Wed, 29 Nov 2006 18:34:56 +0000 (18:34 +0000)]
decRound.c: Move declarations to new file, update comments.

libdecnumber/
* decRound.c: Move declarations to new file, update comments.
* decRound.h: New file.
gcc/
* mklibgcc.in: Fix dependencies for dfp-bit.c.
* config/dfp-bit.h (CONTEXT_ROUND): Delete.
(DFP_INIT_ROUNDMODE): Define.
* config/dfp-bit.c: Replace CONTEXT_ROUND with DFP_INIT_ROUNDMODE.

From-SVN: r119329

17 years agohaifa-sched.c: Remove define LINE_NOTE(INSN).
Tehila Meyzels [Wed, 29 Nov 2006 18:24:14 +0000 (18:24 +0000)]
haifa-sched.c: Remove define LINE_NOTE(INSN).

2006-11-29  Tehila Meyzels  <tehila@il.ibm.com>

      * haifa-sched.c: Remove define LINE_NOTE(INSN).
      Remove line_note_head.
      Update documentation.
      (associate_line_notes_with_blocks): Kill.
      (extend_bb): Remove basic block argument, put void instead.
      Remove line number handling for each bb.
      (save_line_notes): Kill.
      (restore_line_notes): Kill.
      (sched_init): Remove line_note_head initialization.
      Change extend_bb call.
      (sched_finish): Remove free of line_note_head.
      (add_block): Change extend_bb call.
      * sched-ebb.c (schedule_ebb): Remove save_line_notes,
      rm_line_notes and restore_line_notes calls.
      (schedule_ebbs): Remove rm_redundant_line_notes.
      * sched-int.h (struct haifa_insn_data): Remove line_note.
      (save_line_notes): Remove declaration.
      (restore_line_notes): Remove declaration.
      * modulo-sched.c (loop_canon_p): Update debug info printing
      by using insn locators instead of line note.
      (sms_schedule): Update debug info printing, by using insn
      locators instead of line note.
      * sched-rgn.c (debug_dependencies): Remove handling of case
      n>0 (line number), since it's a dead code.
      (schedule_region): Remove save_line_notes and
      restore_line_notes calls.

From-SVN: r119328

17 years agopredicates.md (gpc_reg_operand): Check invalid_e500_subreg.
Joseph Myers [Wed, 29 Nov 2006 17:33:59 +0000 (17:33 +0000)]
predicates.md (gpc_reg_operand): Check invalid_e500_subreg.

* config/rs6000/predicates.md (gpc_reg_operand): Check
invalid_e500_subreg.
* config/rs6000/rs6000.c (invalid_e500_subreg): Don't allow any
SImode subregs of SPE vectors.
* config/rs6000/rs6000.md (insv): Fail for invalid E500 subregs.
* jump.c (true_regnum): Require subregs to satisfy
subreg_offset_representable_p.

From-SVN: r119324

17 years agoMakefile.in (tree-ssanames.o): Remove gt-tree-ssanames.h, since it no longer exists.
Daniel Berlin [Wed, 29 Nov 2006 17:17:56 +0000 (17:17 +0000)]
Makefile.in (tree-ssanames.o): Remove gt-tree-ssanames.h, since it no longer exists.

2006-11-29  Daniel Berlin  <dberlin@dberlin.org>
    Steven Bosscher <stevenb.gcc@gmail.com>

* Makefile.in (tree-ssanames.o): Remove gt-tree-ssanames.h,
since it no longer exists.

Co-Authored-By: Steven Bosscher <stevenb.gcc@gmail.com>
From-SVN: r119323

17 years agore PR tree-optimization/23744 (VRP does not merge discontinuous ranges of PHIs)
Duncan Sands [Wed, 29 Nov 2006 16:00:07 +0000 (17:00 +0100)]
re PR tree-optimization/23744 (VRP does not merge discontinuous ranges of PHIs)

PR tree-optimization/23744
* tree-vrp.c (vrp_meet): do not require ranges to intersect.
* testsuite/gcc.dg/tree-ssa/pr23744.c: new test.
* testsuite/gcc.dg/tree-ssa/update-threading.c: xfail.

From-SVN: r119320

17 years agore PR c++/29022 (ICE using operator int in invalid class hierarchy)
Lee Millward [Wed, 29 Nov 2006 15:19:39 +0000 (15:19 +0000)]
re PR c++/29022 (ICE using operator int in invalid class hierarchy)

PR c++/29022
* parser.c (cp_parser_class_head): Move processing
of any base classes to...
(cp_parser_class_specifier) ...here. Take an extra
tree* parameter for any base classes. Only process
them if the opening brace was found.

* g++.dg/inherit/virtual2.C: New test.
* g++.dg/inherit/virtual3.C: Likewise.
* g++.old-deja/g++.bugs/900121_05.C: Adjust error markers.
* g++.dg/inherit/error2.C: Likewise.
* g++.dg/template/instantiate1.C: Likewise.

From-SVN: r119318

17 years ago* doc/tm.texi (NO_PROFILE_COUNTERS): Document more accurately.
Jie Zhang [Wed, 29 Nov 2006 14:52:31 +0000 (14:52 +0000)]
* doc/tm.texi (NO_PROFILE_COUNTERS): Document more accurately.

From-SVN: r119315

17 years agosh.opt (minline-ic_invalidate): New option.
J"orn Rennecke [Wed, 29 Nov 2006 14:35:38 +0000 (14:35 +0000)]
sh.opt (minline-ic_invalidate): New option.

* sh.opt (minline-ic_invalidate): New option.
(musermode): Adjust comment.
* sh.c (sh_initialize_trampoline): Emit library call unless
is set; if it is set, don't emit library call if we can use icbi
instead.
* sh.md (ic_invalidate_line, ic_invalidate_line_sh4a): Also use
icbi for TARGET_SH4_300.
* t-sh (LIB1ASMFUNCS_CACHE): Set.
* doc/invoke.texi: Document -minline-ic_invalidate; Update
-musermode documentation.

From-SVN: r119314

17 years agogthr-tpf.h (__GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION, [...]): Define.
Jim Tison [Wed, 29 Nov 2006 13:00:12 +0000 (13:00 +0000)]
gthr-tpf.h (__GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION, [...]): Define.

2006-11-29  Jim Tison  <jtison@us.ibm.com>

* gthr-tpf.h (__GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION,
__gthread_recursive_mutex_init): Define.

From-SVN: r119311

17 years agors6000.c (rs6000_gimplify_va_arg): If STRICT_ALIGNMENT and the type is more aligned...
Joseph Myers [Wed, 29 Nov 2006 12:49:06 +0000 (12:49 +0000)]
rs6000.c (rs6000_gimplify_va_arg): If STRICT_ALIGNMENT and the type is more aligned than the saved registers...

* config/rs6000/rs6000.c (rs6000_gimplify_va_arg): If
STRICT_ALIGNMENT and the type is more aligned than the saved
registers, copy via a temporary.

From-SVN: r119307

17 years agore PR tree-optimization/29984 (SPE GCC segfaults with MAX_EXPR <a, a>)
Andrew Pinski [Wed, 29 Nov 2006 07:23:11 +0000 (23:23 -0800)]
re PR tree-optimization/29984 (SPE GCC segfaults with MAX_EXPR <a, a>)

2006-11-28  Andrew Pinski  <pinskia@gmail.com>

        PR tree-opt/29984
        * gcc.dg/tree-ssa/reassoc-12.c: New test.

2006-11-28  Andrew Pinski  <pinskia@gmail.com>

        PR tree-opt/29984
        * tree-ssa-reassoc.c (eliminate_duplicate_pair): Handle MAX_EXPR
        and MIN_EXRP.

From-SVN: r119303

17 years agoDaily bump.
GCC Administrator [Wed, 29 Nov 2006 00:17:52 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r119301

17 years ago* config/xtensa/lib1funcs.asm (__umulsidi3): Restore a12-a15 on exit.
Bob Wilson [Tue, 28 Nov 2006 21:22:14 +0000 (21:22 +0000)]
* config/xtensa/lib1funcs.asm (__umulsidi3): Restore a12-a15 on exit.

From-SVN: r119296

17 years agoPrivatize SSA variables into gimple_df.
Jan Hubicka [Tue, 28 Nov 2006 14:42:37 +0000 (15:42 +0100)]
Privatize SSA variables into gimple_df.

* tree-flow-inline.h
(gimple_in_ssa_p, gimple_aliases_computed_p, gimple_addressable_vars,
gimple_call_clobbered_vars, gimple_referenced_vars, gimple_global_var,
gimple_nonlocal_all): New accessors.
(first_referenced_var): Update.
(mark_stmt_modified): Update.
(is_call_clobbered): Update.
(mark_call_clobbered): Update.
(clear_call_clobbered): Update.
(mark_non_addressable): Update.
* tree-vrp.c (get_value_range): Update.
* tree-into-ssa.c (in_ssa_p): Kill.
(get_default_def_for): Update.
(rewrite_into_ssa): Update.
* tree-complex.c (init_parameter_lattice_values): Update.
(update_complex_assignment): Update.
(update_parameter_components): Update.
(expand_complex_libcall): Update.
(expand_complex_operations_1): Update.
* tree-tailcall.c (arg_needs_copy_p): Update.
(add_virtual_phis): Update.
(tree_optimize_tail_calls_1): Update.
* tree-ssa-dse.c (memory_ssa_name_same): Update.
* tree-ssa-copyrename.c
(copy_rename_partition_coalesce): Update.
* tree-ssa-math-opts.c (execute_cse_reciprocals): Update.
* tree-ssa-propagate.c (set_rhs): Update.
* tree-ssa-alias.c (aliases_computed_p, call_clobbered_vars,
addressable_vars, global_var):Kill.
(set_initial_properties): Update.
(init_alias_info): Update.
(finalize_ref_all_pointers): Update.
(setup_pointers_and_addressables): Update.
(maybe_create_global_var): Update.
(create_global_var): Update.
(dump_points_to_info): Update.
* function.h (struct gimple_df): Forward declare.
(struct function): Add GIMPLE_DF field.
* gimplify.c (force_gimple_operand): Update.
* tree-dfa.c (referenced_vars, default_defs): KIll.
(make_rename_temp): Update.
(dump_variable): Update.
(referenced_var_lookup): Update.
(referenced_var_check_and_insert): Update.
(default_def): Rename to ...
(gimple_default_def): ... this one; accept cfun argument.
(set_default_def): Update.
* tree-cfgcleanup.c (modified_noreturn_calls): Kill.
(cleanup_control_flow): Update.
* tree-ssa-pre.c (compute_avail): Update
* tree-ssa-live.c (calculate_live_on_entry): Update.
* tree-ssa.c (verify_use): Update.
(verify_call_clobbering): Update.
(verify_call_clobbering): Update.
(init_tree_ssa): Update.
(delete_tree_ssa): Update.
* tree-outof-ssa.c (coalesce_ssa_name): Update.
(rewrite_out_of_ssa): Update.
* tree-flow.h (gimple_df): New structure collecting dataflow variables.
(FREE_SSANAMES, SSANAMES, MODIFIED_NORETURN_CALLS, DEFAULT_DEFS): New
private accessors.
(in_ssa_p, modified_noreturn_calls, referenced_vars, default_defs,
ssa_names, global_var, nonlocal_all, call_clobbered_vars,
addressable_vars, aliases_computed_p): Kill.
(default_def): Rename to...
(gimple_default_def): ... this one.
(defaule_def_fn): Kill.
(num_referenced_vars, ssa_names, num_ssa_names): Update.
* tree-ssa-structalias.c (nonlocal_all): Kill.
(get_constraint_exp_from_ssa_var): Update.
(create_nonlocal_var): Update.
(get_constraint_for): Update.
(update_alias_info): Update.
(find_global_initializers): Update.
(intra_create_variable_infos): Update.
(intra_create_variable_infos):
(find_what_p_points_to): Update.
(init_alias_heapvars): Update.
* tree-cfg.c (remove_bb): Update.
(gimplify_val): Update.
* tree-ssa-reassoc.c (get_rank): Update.
(init_reassoc): Update.
* tree-ssanames.c: Do not include gt-tree-ssanames.h
(ssa_names, free_ssanames): Kill.
(init_ssanames): Update.
(make_ssa_name): Update.
(release_ssa_name): Update.
(release_defs): Update.
(replace_ssa_name_symbol): Update.
* tree-ssa-operands.c (access_can_touch_variable): Update.
(add_virtual_operand): Update.
(add_call_clobber_ops): Update.
(add_call_read_ops): Update.
(get_call_expr_operands): Update.
(get_asm_expr_operands): Update.

From-SVN: r119294

17 years agoOops, wrong file committed.
Jan Hubicka [Tue, 28 Nov 2006 14:30:49 +0000 (14:30 +0000)]
Oops, wrong file committed.

From-SVN: r119293

17 years agobuiltins.c: Include tree-flow.h.
Jan Hubicka [Tue, 28 Nov 2006 14:20:04 +0000 (15:20 +0100)]
builtins.c: Include tree-flow.h.

* builtins.c: Include tree-flow.h.
(fold_builtin_memory_op): Be more aggressive on converting memcpy to
assignment; convert memmove to memcpy for sizes greater than 1 where
alignment of operands prohibit the partial overlap.

From-SVN: r119292

17 years agore PR c++/29735 (ICE on "main" returning vector)
Jakub Jelinek [Tue, 28 Nov 2006 12:56:53 +0000 (13:56 +0100)]
re PR c++/29735 (ICE on "main" returning vector)

PR c++/29735
* decl.c (grokfndecl): Check main's type after applying
attributes, not before.

* g++.dg/warn/main-3.C: New test.

From-SVN: r119287

17 years ago* sv.po, tr.po: Update.
Joseph Myers [Tue, 28 Nov 2006 12:04:32 +0000 (12:04 +0000)]
* sv.po, tr.po: Update.

From-SVN: r119284

17 years agoinvoke.texi (large-stack-frame, [...]): New params.
Jan Hubicka [Tue, 28 Nov 2006 10:53:16 +0000 (11:53 +0100)]
invoke.texi (large-stack-frame, [...]): New params.

* invoke.texi (large-stack-frame, large-stack-frame-growth): New params.
* cgraph.c (dump_cgraph_node): Dump stack usage.
* cgraph.h (cgraph_local_info): Add estimated_self_stack_size.
(cgraph_global_info): Add estimated_stack_size and stack_frame_offset.
* cgraphunit.c (cgraph_analyze_function): Analyze stack sizes.
* ipa-inline.c (cgraph_clone_inlined_nodes): Propagate stack usage.
(cgraph_check_inline_limits): Limit stack growth.
* cfgexpand.c: Include tree-inline.h.
(account_stack_vars): New function.
(expand_one_var): New param to just account the stack; return estimated
size.
(expand_used_vars_for_block): Update call of expand_one_var.
(account_used_vars_for_block): New function.
(estimated_stack_frame_size): Likewise.
(init_vars_expansion, fini_vars_expansion): Break out from..
(expand_used_vars): ... here.
* tree-inline.h (estimated_stack_frame_size): Declare.
* params.def (PARAM_LARGE_STACK_FRAME, PARAM_STACK_FRAME_GROWTH): New.

From-SVN: r119281

17 years agoggc-page.c (ggc_print_statistics): Use %ul and a cast to unsigned long for printing...
Richard Guenther [Tue, 28 Nov 2006 10:03:49 +0000 (10:03 +0000)]
ggc-page.c (ggc_print_statistics): Use %ul and a cast to unsigned long for printing OBJECT_SIZE.

2006-11-28  Richard Guenther  <rguenther@suse.de>

* ggc-page.c (ggc_print_statistics): Use %ul and a cast to
unsigned long for printing OBJECT_SIZE.

From-SVN: r119280

17 years agopack-test-1.c: Use __alignof__ to determine natural alignments.
Nathan Sidwell [Tue, 28 Nov 2006 07:44:11 +0000 (07:44 +0000)]
pack-test-1.c: Use __alignof__ to determine natural alignments.

* gcc.dg/pack-test-1.c: Use __alignof__ to determine natural
alignments.

From-SVN: r119277

17 years agolocks.h: Enable use of either file on either target to support multilibs from one...
Mike Stump [Tue, 28 Nov 2006 06:05:25 +0000 (06:05 +0000)]
locks.h: Enable use of either file on either target to support multilibs from one to the...

* sysdep/x86-64/locks.h: Enable use of either file on either
target to support multilibs from one to the other.
* sysdep/i386/locks.h: Likewise.

From-SVN: r119276

17 years agore PR fortran/29976 (ICE on optional arg)
Paul Thomas [Tue, 28 Nov 2006 05:39:42 +0000 (05:39 +0000)]
re PR fortran/29976 (ICE on optional arg)

2006-11-28  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/29976
* trans-expr.c (gfc_conv_missing_dummy): Remove build_int_const
and replace with cast to type of se->expr of integer_zero_node.

2006-11-28  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/29976
* gfortran.dg/missing_optional_dummy_3.f90

From-SVN: r119273

17 years agore PR fortran/20880 (USE association of procedure's own interface)
Paul Thomas [Tue, 28 Nov 2006 05:36:07 +0000 (05:36 +0000)]
re PR fortran/20880 (USE association of procedure's own interface)

2006-11-28  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/20880
* resolve.c (resolve_fl_procedure): Error if procedure is
ambiguous modified to require attr.referenced.

2006-11-28  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/20880
* gfortran.dg/interface_3.f90: Modify errors.

From-SVN: r119272

17 years agoclass.c (build_vcall_offset_vtbl_entries): Do not add vcall entries for a primary...
Mark Mitchell [Tue, 28 Nov 2006 02:19:02 +0000 (02:19 +0000)]
class.c (build_vcall_offset_vtbl_entries): Do not add vcall entries for a primary construction virtual table.

* class.c (build_vcall_offset_vtbl_entries): Do not add vcall
entries for a primary construction virtual table.

From-SVN: r119271

17 years agogcc-defs.exp (${tool}_check_compile): xfail test cases that fail to link due to reloc...
Ben Elliston [Tue, 28 Nov 2006 02:14:26 +0000 (02:14 +0000)]
gcc-defs.exp (${tool}_check_compile): xfail test cases that fail to link due to relocation overflows on spu-*-*.

* lib/gcc-defs.exp (${tool}_check_compile): xfail test cases that
fail to link due to relocation overflows on spu-*-*.

From-SVN: r119270

17 years agoDaily bump.
GCC Administrator [Tue, 28 Nov 2006 00:18:00 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r119267

17 years agoalias.c (init_alias_analysis): Remove simplification loop after propagating pointers.
Steven Bosscher [Mon, 27 Nov 2006 23:15:38 +0000 (23:15 +0000)]
alias.c (init_alias_analysis): Remove simplification loop after propagating pointers.

        * alias.c (init_alias_analysis): Remove simplification loop
        after propagating pointers.

From-SVN: r119262

17 years agoxtensa-config.h (XSHAL_ABI): New.
Bob Wilson [Mon, 27 Nov 2006 20:15:58 +0000 (20:15 +0000)]
xtensa-config.h (XSHAL_ABI): New.

* xtensa-config.h (XSHAL_ABI): New.
(XTHAL_ABI_WINDOWED, XTHAL_ABI_CALL0): New.

From-SVN: r119261

17 years agoi386.c (x86_ext_80387_constants): Add m_K8, m_CORE2 and m_GENERIC64.
Uros Bizjak [Mon, 27 Nov 2006 19:50:40 +0000 (20:50 +0100)]
i386.c (x86_ext_80387_constants): Add m_K8, m_CORE2 and m_GENERIC64.

        * config/i386/i386.c (x86_ext_80387_constants): Add m_K8, m_CORE2
        and m_GENERIC64.

From-SVN: r119260

17 years ago* config/xtensa/xtensa.h (XCHAL_HAVE_MUL32_HIGH): Provide default.
Bob Wilson [Mon, 27 Nov 2006 18:48:57 +0000 (18:48 +0000)]
* config/xtensa/xtensa.h (XCHAL_HAVE_MUL32_HIGH): Provide default.

From-SVN: r119259

17 years agoc-common.c (constant_fits_type_p): Delete.
Roger Sayle [Mon, 27 Nov 2006 18:47:41 +0000 (18:47 +0000)]
c-common.c (constant_fits_type_p): Delete.

2006-11-27  Roger Sayle  <roger@eyesopen.com>
    Manuel Lopez-Ibanez <manu@gcc.gnu.org>

* c-common.c (constant_fits_type_p): Delete.
(unsigned_conversion_warning): Delete.
(conversion_warning): Integrate Wconversion warning from
unsigned_conversion_warning.
(convert_and_check): Integrate Woverflow warning from
unsigned_conversion_warning.  Reorganize and simplify to avoid
dependence upon the middle-end setting TREE_OVERFLOW on integral
conversions, by using int_fits_type_p directly.

Co-Authored-By: Manuel López-Ibáñez <manu@gcc.gnu.org>
From-SVN: r119258

17 years agoinvoke.texi: Fixed typo.
Tobias Burnus [Mon, 27 Nov 2006 16:43:12 +0000 (17:43 +0100)]
invoke.texi: Fixed typo.

2006-11-27  Tobias Burnus  <burnus@net-b.de>

       * doc/invoke.texi: Fixed typo.

From-SVN: r119257

17 years agore PR target/29319 (ICE unrecognizable insn: offset too large for larl (breaks glibc))
Michael Matz [Mon, 27 Nov 2006 16:34:19 +0000 (16:34 +0000)]
re PR target/29319 (ICE unrecognizable insn: offset too large for larl (breaks glibc))

2006-11-27  Michael Matz  <matz@suse.de>
            Andreas Krebbel  <krebbel1@de.ibm.com>

PR target/29319
* config/s390/predicates.md (larl_operand): Check addend of larl
operand to be in range of -/+2GB.
* config/s390/s390.c (legitimize_pic_address): Likewise.
Changed type of variable even to HOST_WIDE_INT.

2006-11-27  Michael Matz  <matz@suse.de>
            Andreas Krebbel  <krebbel1@de.ibm.com>

PR target/29319
* gcc.dg/20061127-1.c: New testcase.

Co-Authored-By: Andreas Krebbel <krebbel1@de.ibm.com>
From-SVN: r119256

17 years ago20061124-1.c: Add exit() function prototype.
Uros Bizjak [Mon, 27 Nov 2006 16:10:36 +0000 (17:10 +0100)]
20061124-1.c: Add exit() function prototype.

* gcc.dg/20061124-1.c: Add exit() function prototype.

From-SVN: r119253

17 years agoexpr.c (emit_block_move_via_libcall): Export.
Jan Hubicka [Mon, 27 Nov 2006 16:00:26 +0000 (17:00 +0100)]
expr.c (emit_block_move_via_libcall): Export.

* expr.c (emit_block_move_via_libcall): Export.
(clear_storage_via_libcall): Rename to ...
(set_storage_via_libcall): ... this one; handle arbitrary value to set.
(clear_storage): Update to set_storage_via_libcall.
* expr.h (emit_block_move_via_libcall): Declare
* config/i386/i386.h (stringop_alg): New enum.
(MAX_STRINGOP_ALGS): New constant.
(stringop_algs): New struct.
(processor_costs): Add memcpy/memset descriptors.
(TARGET_REP_MOVEL_OPTIMAL): Remove.
* config/i386/i386.md (movsi_insv_1_rex64): New pattern.
(strmovsi, strmovdi, strsetsi, strsetdi): Update; accept all operands
for memset.
* config/i386/i386.opt (minline-stringops-dynamically,
mstringop-strategy): New
parameters.
* config/i386/i386-prostos.h (ix86_expand_movmem): Update prototype.
(ix86_expand-clrmem): Rename to ...
(ix86_expand_setmem): ... this one; update prototype.
* config/i386/i386.c (DUMMY_STRINGOP_ALGS): New constant.
(size_cost, i386_cost, i486_cost, pentium_cost, pentiumpro_cost,
geode_cost, k6_cost, athlon_cost, k8_cost, pentium4_cost,
nocona_cost, core2_cost, generic_cost, generic64_cost,
generic32_cost): Add memcpy/memset descriptors.
(x86_rep_movl_optimal): Remove.
(stringop_alg): New static variable.
(ix86_expand_aligntest): Handle predictions.
(override_options): Add strgop_alg handling.
(predict_jump): New function.
(scale_counter): New function.
(expand_set_or_movmem_via_loop): New function.
(expand_movmem_via_rep_mov): New function.
(expand_setmem_via_rep_stots): New function.
(emit_strmov): New function.
(expand_movmem_epilogue): New function.
(expand_setmem_epilogue_via_loop): New function.
(expand_setmem_epilogue): New function.
(expand_movmem_prologue): New function.
(expand_setmem_prologue): New function.
(decide_alg): New function.
(decide_alignment): New function.
(ix86_exand_movmem): Rewrite.
(promote_duplicated_reg): New function.
(ix86_expand_clrmem): Rename to ...
(ix86_expand_setmem): ... this one. Rewrite.

* invoke.texi (minline-stringops-dynamically): New command line option.
(mstringop-strategy): Likewise.

From-SVN: r119252

17 years agocfgexpand.c (construct_exit_block): Don't disturb end of last BB.
Jan Hubicka [Mon, 27 Nov 2006 15:21:36 +0000 (15:21 +0000)]
cfgexpand.c (construct_exit_block): Don't disturb end of last BB.

* cfgexpand.c (construct_exit_block): Don't disturb end of last BB.
* rtl.texi (NOTE_INSN_FUNCTION_END): Remove.
* final.c (final_scan_insn): Don't scan NOTE_INSN_FUNCTION_END.
* insn-notes.def (FUNCTION_END): Remove.
* jump.c (delete_related_insns): Don't worry about FUNCTION_END.
(redicect_jump_2): Don't accept -1 parameter to remove FUNCTION_END
note.
* ifcvt.c (dead_or_predictable): Update call of redirect_jump_2.
* function.c (expand_function_end): Don't emit NOTE_INSN_FUNCTION_END
* cfglayout.c (duplicate_insn_chain): Don't worry about
NOTE_FUNCTION_END.

From-SVN: r119251

17 years agocfgexpand.c (construct_exit_block): Don't disturb end of last BB.
Jan Hubicka [Mon, 27 Nov 2006 15:07:10 +0000 (16:07 +0100)]
cfgexpand.c (construct_exit_block): Don't disturb end of last BB.

* cfgexpand.c (construct_exit_block): Don't disturb end of last BB.
* rtl.texi (NOTE_INSN_FUNCTION_END): Remove.
* final.c (final_scan_insn): Don't scan NOTE_INSN_FUNCTION_END.
* insn-notes.def (FUNCTION_END): Remove.
* jump.c (delete_related_insns): Don't worry about FUNCTION_END.
(redicect_jump_2): Don't accept -1 parameter to remove FUNCTION_END
note.
* ifcvt.c (dead_or_predictable): Update call of redirect_jump_2.
* function.c (expand_function_end): Don't emit NOTE_INSN_FUNCTION_END
* cfglayout.c (duplicate_insn_chain): Don't worry about
NOTE_FUNCTION_END.

From-SVN: r119250

17 years agotarget.h (struct gcc_target): Add builtin_vectorized_function target hook.
Richard Guenther [Mon, 27 Nov 2006 12:41:51 +0000 (12:41 +0000)]
target.h (struct gcc_target): Add builtin_vectorized_function target hook.

2006-11-27  Richard Guenther  <rguenther@suse.de>
Zdenek Dvorak <dvorakz@suse.cz>

* target.h (struct gcc_target): Add builtin_vectorized_function
target hook.
* target-def.h (TARGET_VECTORIZE): Likewise.
* doc/tm.texi (TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION):
Document new target hook.
* targhooks.h (default_builtin_vectorized_function): Declare.
* targhooks.c (default_builtin_vectorized_function): Define.
* tree-vectorizer.h (stmt_vec_info_type): Add call_vec_info_type.
(vectorizable_call): Declare.
* tree-vect-analyze.c (vect_analyze_operations): Call
vectorizable_call.
* tree-vect-transform.c (vectorizable_function): New static function.
(build_vectorized_function_call): Likewise.
(vectorizable_call): New function.
(vect_transform_stmt): Handle vectorizable calls.

Co-Authored-By: Zdenek Dvorak <dvorakz@suse.cz>
From-SVN: r119249

17 years agore PR fortran/25620 (Missed optimization with power)
Richard Guenther [Mon, 27 Nov 2006 11:38:42 +0000 (11:38 +0000)]
re PR fortran/25620 (Missed optimization with power)

2006-11-27  Richard Guenther  <rguenther@suse.de>

PR middle-end/25620
* builtins.c (expand_builtin_pow): Optimize non integer valued
constant exponents using sqrt or cbrt if possible.  Always fall back
to expanding via optabs.

* gcc.target/i386/pow-1.c: New testcase.
* gcc.dg/builtins-58.c: Likewise.

From-SVN: r119248

17 years agore PR tree-optimization/22372 (Vectorizer produces mis-match types)
Ira Rosen [Mon, 27 Nov 2006 08:10:23 +0000 (08:10 +0000)]
re PR tree-optimization/22372 (Vectorizer produces mis-match types)

PR tree-optimization/22372
* tree-vect-transform.c (vect_create_addr_base_for_vector_ref): Convert
the type of the base address.
(vect_create_data_ref_ptr): Add an argument, type of the data-ref. Use
it in the data-ref pointer creation.
(vect_init_vector): Add an argument, type of the init vector. Use it in
the stmt creation.
(vect_get_vec_def_for_operand): Fix calls to vect_init_vector.
(get_initial_def_for_reduction): Likewise.
(vect_create_epilog_for_reduction): Change type of MODIFY_EXPR to
void_type_node.
(vectorizable_assignment, vect_permute_store_chain): Likewise.
(vectorizable_store): Fix call to vect_create_data_ref_ptr. Use the
correct type in stmt creation.
(vect_setup_realignment): Use the correct type in stmt creation.
(vect_permute_load_chain): Change type of MODIFY_EXPR to
void_type_node.
(vectorizable_load): Fix calls to vect_create_data_ref_ptr. Change type
of MODIFY_EXPR to void_type_node.
(vectorizable_condition): Change type of MODIFY_EXPR to
void_type_node.
(vect_update_ivs_after_vectorizer): Use the correct type in stmt
creation.

From-SVN: r119247

17 years agorevert: i386.c (ix86_rtx_costs): For standard 80387 constants...
Uros Bizjak [Mon, 27 Nov 2006 08:03:45 +0000 (09:03 +0100)]
revert: i386.c (ix86_rtx_costs): For standard 80387 constants...

        Revert:
        2006-05-08  Uros Bizjak  <uros@kss-loka.si>
        * config/i386/i386.c (ix86_rtx_costs) [FLOAT_EXTEND]: For
        standard 80387 constants, raise the cost to prevent
        compress_float_constant() to generate load from memory.

        * config/i386/i386.md: Add new splitter pattern to split
        float_extended load of constant from constant pool into
        pure constant load.

From-SVN: r119246

17 years agore PR c++/29886 (Cast misinterpreted as variable declaration)
Mark Mitchell [Mon, 27 Nov 2006 03:38:57 +0000 (03:38 +0000)]
re PR c++/29886 (Cast misinterpreted as variable declaration)

PR c++/29886
* parser.c (cp_parser): Add in_function_body.
(cp_parser_new): Initialize it.
(cp_parser_primary_expression): Use parser->in_function_body
instead of at_function_scope_p.
(cp_parser_asm_definition): Likewise.
(cp_parser_direct_declarator): Likewise.
(cp_parser_class_specifier): Clear parser->in_function_body.
(cp_parser_constructor_declarator_p): Use parser->in_function_body
instead of at_function_scope_p.
(cp_parser_function_body_after_declarator): Set
parser->in_function_body.
PR c++/29886
* g++.dg/expr/cast8.C: New test.

From-SVN: r119242

17 years agoCheckin ChangeLogs from previous checkin.
Kaveh Ghazi [Mon, 27 Nov 2006 00:23:24 +0000 (00:23 +0000)]
Checkin ChangeLogs from previous checkin.

        * configure.in (--with-mpfr-dir, --with-gmp-dir): Remove flags.
        (--with-mpfr-include, --with-mpfr-lib, --with-gmp-include,
        --with-gmp-lib): New flags.

        * configure: Regenerate.

gcc:
        * doc/install.texi: Move GMP/MPFR configure options from Fortran
        section to general section.  Remove documentation for
        --with-mpfr-dir and --with-gmp-dir, add documentation for
        --with-mpfr-include, --with-mpfr-lib, --with-gmp-include and
        --with-gmp-lib.

From-SVN: r119240

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

From-SVN: r119238

17 years agoconfigure.in (--with-mpfr-dir, [...]): Remove flags.
Kaveh Ghazi [Sun, 26 Nov 2006 22:37:33 +0000 (22:37 +0000)]
configure.in (--with-mpfr-dir, [...]): Remove flags.

* configure.in (--with-mpfr-dir, --with-gmp-dir): Remove flags.
(--with-mpfr-include, --with-mpfr-lib, --with-gmp-include,
--with-gmp-lib): New flags.

* configure: Regenerate.

gcc:
* doc/install.texi: Move GMP/MPFR configure options from Fortran
section to general section.  Remove documentation for
--with-mpfr-dir and --with-gmp-dir, add documentation for
--with-mpfr-include, --with-mpfr-lib, --with-gmp-include and
--with-gmp-lib.

From-SVN: r119232

17 years agoFix oversight.
Eric Botcazou [Sun, 26 Nov 2006 18:27:19 +0000 (18:27 +0000)]
Fix oversight.

From-SVN: r119228

17 years agobuiltins.c (fold_builtin_fmin_fmax): Handle NaN arguments.
Kaveh R. Ghazi [Sun, 26 Nov 2006 14:35:54 +0000 (14:35 +0000)]
builtins.c (fold_builtin_fmin_fmax): Handle NaN arguments.

* builtins.c (fold_builtin_fmin_fmax): Handle NaN arguments.

testsuite:
* gcc.dg/torture/builtin-minmax-1.c: Test NaN in fmin/fmax.
Don't ever inline the testcase.

From-SVN: r119224

17 years agore PR fortran/29892 (substring out of bounds: Missing variable name for variables...
Francois-Xavier Coudert [Sun, 26 Nov 2006 12:25:50 +0000 (13:25 +0100)]
re PR fortran/29892 (substring out of bounds: Missing variable name for variables with parameter attribute)

PR fortran/29892
* trans-intrinsic.c (gfc_conv_intrinsic_bound): Use a locus in
the call to gfc_trans_runtime_check.
* trans-array.c (gfc_trans_array_bound_check): Try harder to find
the variable or function name for the runtime error message.
(gfc_trans_dummy_array_bias): Use a locus in the call to
gfc_trans_runtime_check

From-SVN: r119223

17 years agoipa-6.c: New.
Razya Ladelsky [Sun, 26 Nov 2006 10:29:28 +0000 (10:29 +0000)]
ipa-6.c: New.

2006-11-26  Razya Ladklesky  <razya@il.ibm.com>

        * testsuite/gcc.dg/ipa/ipa-6.c: New.

From-SVN: r119222

17 years agoPR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga)
Paolo Carlini [Sun, 26 Nov 2006 10:04:25 +0000 (10:04 +0000)]
PR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga)

2006-11-26  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/29385 (2nd part, based on an idea by Ion Gaztanaga)
* include/bits/stl_tree.h (_Rb_tree<>::_M_equal_range): Add.
(equal_range(const key_type&)): Use it.

2006-11-26  Paolo Carlini  <pcarlini@suse.de>

* testsuite/23_containers/multiset/operations/1.cc: New.
* testsuite/23_containers/set/operations/1.cc: Likewise.
* testsuite/23_containers/multimap/operations/1.cc: Likewise.
* testsuite/23_containers/map/operations/1.cc: Likewise.

From-SVN: r119221

17 years agore PR tree-optimization/29122 (ICE with -ipa-cp and -m64 (tail calls))
Razya Ladelsky [Sun, 26 Nov 2006 10:00:18 +0000 (10:00 +0000)]
re PR tree-optimization/29122 (ICE with -ipa-cp and -m64 (tail calls))

2006-11-26  Razya Ladklesky  <razya@il.ibm.com>

        PR tree-optimization/29122
        * tree-inline.c (tree_function_versioning): Update DECL_ASSEMBLER_NAME
        for the new version.  Assign NULL to DECL_RTL of the new version.

From-SVN: r119220

17 years agotrans-decl.c (gfc_build_intrinsic_function_decls): Mark the pow functions as constant...
Andrew Pinski [Sun, 26 Nov 2006 08:09:05 +0000 (00:09 -0800)]
trans-decl.c (gfc_build_intrinsic_function_decls): Mark the pow functions as constant functions.

2006-11-26  Andrew Pinski  <pinskia@gmail.com>

        * trans-decl.c (gfc_build_intrinsic_function_decls): Mark the
        pow functions as constant functions.

From-SVN: r119219

17 years agore PR fortran/29982 ([4.1 only] ICE in write() with gfortran 4.1.2 (and 4.2 and 4...
Andrew Pinski [Sun, 26 Nov 2006 04:42:00 +0000 (20:42 -0800)]
re PR fortran/29982 ([4.1 only] ICE in write() with gfortran 4.1.2 (and 4.2 and 4.3...))

2006-11-25  Andrew Pinski  <pinskia@gmail.com>

        PR fortran/29982
        * trans-expr.c (gfc_conv_expr_reference): Strip off NOP_EXPRs.

2006-11-25  Andrew Pinski  <pinskia@gmail.com>

        PR fortran/29982
        * gfortran.fortran-torture/compile/parameter_3.f90: New
        testcase.

From-SVN: r119218

17 years agoDaily bump.
GCC Administrator [Sun, 26 Nov 2006 00:17:37 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r119216

17 years agore PR fortran/29951 (incorrect conversion from string to integer by TRANSFER())
Andrew Pinski [Sat, 25 Nov 2006 21:43:48 +0000 (13:43 -0800)]
re PR fortran/29951 (incorrect conversion from string to integer by TRANSFER())

2006-11-25  Andrew Pinski  <pinskia@gmail.com>

        PR fortran/29951
        * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Change to
        call memcpy instead of creating a VIEW_CONVERT_EXRP.

2006-11-25  Andrew Pinski  <pinskia@gmail.com>

        PR fortran/29951
        * gfortran.fortran-torture/execute/transfer2.f90: New test

From-SVN: r119211

17 years agoreg-stack.c (get_true_reg): Fix UNSPEC_TRUNC_NOOP handling.
Uros Bizjak [Sat, 25 Nov 2006 21:40:53 +0000 (22:40 +0100)]
reg-stack.c (get_true_reg): Fix UNSPEC_TRUNC_NOOP handling.

        * reg-stack.c (get_true_reg): Fix UNSPEC_TRUNC_NOOP handling.

From-SVN: r119210

17 years agocse.c (cse_altered): Remove.
Steven Bosscher [Sat, 25 Nov 2006 21:23:27 +0000 (21:23 +0000)]
cse.c (cse_altered): Remove.

* cse.c (cse_altered): Remove.
(record_jump_equiv): Make true/false argument a bool instead
of an int.
(cse_insn): Don't set cse_altered.  Use delete_insn_and_edges
where appropriate.  Emit a new jump before the existing one
instead of after so that delete_insn_and_edges removes the
dead edges properly.  Check any_condjump_p before calling
record_jump_equiv.
(cse_basic_block): Check any_condjump_p before calling
record_jump_equiv.
(cse_main): Don't set/check cse_altered.  Remove USE_C_ALLOCA.

From-SVN: r119209

17 years agoc.opt: Remove -ffixed-form, -ffixed-line-length-none, and -ffixed-line-length-* options.
Brooks Moses [Sat, 25 Nov 2006 19:15:29 +0000 (19:15 +0000)]
c.opt: Remove -ffixed-form, -ffixed-line-length-none, and -ffixed-line-length-* options.

* c.opt: Remove -ffixed-form, -ffixed-line-length-none, and
-ffixed-line-length-* options.

From-SVN: r119206

17 years agoMAINTAINERS (Write After Approval): Change my email address.
Brooks Moses [Sat, 25 Nov 2006 19:08:22 +0000 (19:08 +0000)]
MAINTAINERS (Write After Approval): Change my email address.

* MAINTAINERS (Write After Approval): Change my email address.

From-SVN: r119205

17 years agoMakefile.am: Remove intrinsics/erf.c and intrinsics/bessel.c.
Francois-Xavier Coudert [Sat, 25 Nov 2006 17:22:53 +0000 (18:22 +0100)]
Makefile.am: Remove intrinsics/erf.c and intrinsics/bessel.c.

* Makefile.am: Remove intrinsics/erf.c and intrinsics/bessel.c.
* Makefile.in: Regenerate.
* intrinsics/erf.c: Remove.
* intrinsics/bessel.c: Remove.
* c99_protos.h: Add prototypes for bessel and error functions.
* intrinsics/c99_functions.c: Move content for intrinsics/erf.c
and intrinsics/bessel.c here.

From-SVN: r119204

17 years agore PR fortran/29711 ([4.2 only] error_print does not support %N$X)
Francois-Xavier Coudert [Sat, 25 Nov 2006 16:57:25 +0000 (17:57 +0100)]
re PR fortran/29711 ([4.2 only] error_print does not support %N$X)

PR fortran/29711
* error.c (error_print): Handle printf-style position specifiers,
of the form "%3$d".

From-SVN: r119203

17 years agoconfig/i386/i386.md (fpremxf4): Rename to fpremxf4_i387.
Uros Bizjak [Sat, 25 Nov 2006 15:05:53 +0000 (16:05 +0100)]
config/i386/i386.md (fpremxf4): Rename to fpremxf4_i387.

        (fprem1xf4): Rename to fprem1xf4_i387.

        (fmodsf3, fmoddf3): Macroize patterns using X87MODEF12 mode macro.
        Rename patterns to fmod<mode>3.  Use general_operand operand
        constraint for operands 1 and 2.  Use SSE_FLOAT_MODE_P to disable
        patterns for SSE math.
        (remaindersf3, remainderdf3): Ditto.

From-SVN: r119199

17 years agore PR fortran/29973 ([4.2 only] CHAR not allowed as actual argument, even in F2003)
Francois-Xavier Coudert [Sat, 25 Nov 2006 14:28:56 +0000 (15:28 +0100)]
re PR fortran/29973 ([4.2 only] CHAR not allowed as actual argument, even in F2003)

PR fortran/29973
* gfortran.fortran-torture/execute/specifics.f90: Remove test
for CHAR.

From-SVN: r119197

17 years agoAdd some missing >s.
Jakub Jelinek [Sat, 25 Nov 2006 14:12:23 +0000 (15:12 +0100)]
Add some missing >s.

From-SVN: r119196

17 years agofunction.c (instantiate_virtual_regs_in_insn): Call force_reg inside start_sequence...
Joseph Myers [Sat, 25 Nov 2006 13:21:43 +0000 (13:21 +0000)]
function.c (instantiate_virtual_regs_in_insn): Call force_reg inside start_sequence / end_sequence pair.

* function.c (instantiate_virtual_regs_in_insn): Call force_reg
inside start_sequence / end_sequence pair.

From-SVN: r119192

17 years agojump.c (mark_all_labels): Work in cfglayout mode.
Steven Bosscher [Sat, 25 Nov 2006 10:53:06 +0000 (10:53 +0000)]
jump.c (mark_all_labels): Work in cfglayout mode.

* jump.c (mark_all_labels): Work in cfglayout mode.
* cfgcleanup.c (cleanup_cfg): Do not call delete_dead_jumptables
when in cfglayout mode, because there are no dead jumptables
visible.
* cfgrtl.c (commit_one_edge_insertion): Don't set bb->aux when
in cfglayout mode.
(commit_edge_insertions): Do not allow insertion of instructions
with control flow insns when in cfglayout mode.

From-SVN: r119191

17 years ago[multiple changes]
Paolo Carlini [Sat, 25 Nov 2006 10:35:52 +0000 (10:35 +0000)]
[multiple changes]

2006-11-25  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/29385 (partial)
* include/bits/stl_tree.h (_Rb_tree<>::destroy_node): Uglify.
(_M_erase, erase(iterator), erase(const_iterator)): Adjust

2006-11-25  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/29385 (partial)
* include/bits/stl_tree.h (_Rb_tree<>::_M_lower_bound(_Const_Link_type,
_Const_Link_type, const _Key&), _M_upper_bound(_Const_Link_type,
_Const_Link_type, const _Key&)): Add.
(lower_bound(const key_type&), upper_bound(const key_type&),
find(const key_type&)): Call the latter.

2006-11-25  Gawain Bolton  <gp.bolton@computer.org>

PR libstdc++/29385 (partial)
* include/bits/stl_tree.h (_Rb_tree_rotate_left,
_Rb_tree_rotate_right): Do not declare.
(_Rb_tree<>::_M_insert(_Base_ptr, _Base_ptr, const value_type&),
_M_insert(_Const_Base_ptr, _Const_Base_ptr, const value_type&),
_M_insert_unique(iterator, const value_type&),
_M_insert_unique(const_iterator, const value_type&),
_M_insert_equal(iterator, const value_type&),
_M_insert_equal(const_iterator, const value_type&)):
Remove.
(_Rb_tree<>::_M_insert_(_Const_Base_ptr, _Const_Base_ptr,
const value_type&), _M_insert_unique_(const_iterator,
const value_type&), _M_insert_equal_(const_iterator,
const value_type&)): Add, adjust all callers.
* include/bits/stl_map.h (map<>::insert(iterator, const value_type&)):
Adjust.
* include/bits/stl_set.h (set<>::insert(iterator, const value_type&)):
Likewise.
* include/bits/stl_multimap.h (multimap<>::insert(iterator,
const value_type&)): Likewise.
* include/bits/stl_multiset.h (multiset<>::insert(iterator,
const value_type&)): Likewise.

From-SVN: r119190

17 years agotree-vrp.c (execute_vrp): Do not pass loops structure through arguments.
Zdenek Dvorak [Sat, 25 Nov 2006 10:34:13 +0000 (10:34 +0000)]
tree-vrp.c (execute_vrp): Do not pass loops structure through arguments.

* tree-vrp.c (execute_vrp): Do not pass loops structure through
arguments.
* loop-unswitch.c (unswitch_loops, unswitch_single_loop,
unswitch_loop): Ditto.
* tree-loop-linear.c (linear_transform_loops): Ditto.
* tree-ssa-loop-im.c (determine_lsm, tree_ssa_lim_initialize,
tree_ssa_lim): Ditto.
* tree-ssa-loop-niter.c (estimate_numbers_of_iterations,
free_numbers_of_iterations_estimates): Ditto.
* tree-ssa-loop-unswitch.c (tree_ssa_unswitch_loops,
tree_unswitch_single_loop, tree_unswitch_loop): Ditto.
* cfgloopmanip.c (fix_bb_placement, fix_bb_placements,
remove_path, add_loop, loopify, unloop, fix_loop_placements,
place_new_loop, duplicate_loop, duplicate_subloops,
update_single_exit_for_duplicated_loops, copy_loops_to,
duplicate_loop_to_header_edge, create_preheaders,
force_single_succ_latches, loop_version, fix_loop_structure):
Ditto.
* tree-ssa-loop-manip.c (tree_duplicate_loop_to_header_edge,
tree_unroll_loop): Ditto.
* tree-ssa-loop-ch.c (copy_loop_headers): Ditto.
* tree-scalar-evolution.c (select_loops_exit_conditions,
scev_initialize, scev_analysis): Ditto.
* tree-scalar-evolution.h (scev_initialize): Ditto.
* cfghooks.c (cfg_hook_duplicate_loop_to_header_edge): Ditto.
* cfgloopanal.c (mark_irreducible_loops, mark_loop_exit_edges): Ditto.
* tree-ssa-loop-ivopts.c (tree_ssa_iv_optimize): Ditto.
* modulo-sched.c (sms_schedule): Ditto.
* tree-ssa-dom.c (tree_ssa_dominator_optimize): Ditto.
* loop-init.c (loop_optimizer_init, rtl_move_loop_invariants,
rtl_unswitch, rtl_unroll_and_peel_loops, rtl_doloop): Ditto.
* ifcvt.c (if_convert): Ditto.
* tree-ssa-loop-ivcanon.c (try_unroll_loop_completely,
canonicalize_loop_induction_variables,
canonicalize_induction_variables,
tree_unroll_loops_completely, remove_empty_loops): Ditto.
* tree-ssa-loop.c (tree_ssa_loop_init, tree_ssa_loop_im,
tree_ssa_loop_unswitch, tree_vectorize, tree_linear_transform,
tree_ssa_loop_ivcanon, tree_ssa_empty_loop, tree_ssa_loop_bounds,
tree_complete_unroll, tree_ssa_loop_prefetch, tree_ssa_loop_ivopts,
tree_ssa_loop_done): Ditto.
* predict.c (predict_loops, tree_estimate_probability, estimate_loops,
estimate_bb_frequencies): Ditto.
* tree-vectorizer.c (slpeel_tree_duplicate_loop_to_edge_cfg,
slpeel_tree_peel_loop_to_edge, vectorize_loops): Ditto.
* loop-unroll.c (unroll_and_peel_loops, peel_loops_completely,
decide_unrolling_and_peeling, peel_loop_completely,
unroll_loop_constant_iterations, unroll_loop_runtime_iterations,
peel_loop_simple, unroll_loop_stupid): Ditto.
* loop-doloop.c (doloop_optimize_loops): Ditto.
* tree-cfgcleanup.c (cleanup_tree_cfg_loop): Ditto.
* loop-invariant.c (move_loop_invariants): Ditto.
* tree-ssa-dce.c (tree_ssa_dce_loop): Ditto.
* tree-ssa-loop-prefetch.c (loop_prefetch_arrays,
tree_ssa_prefetch_arrays): Ditto.
* lambda-code.c (gcc_loopnest_to_lambda_loopnest, perfect_nestify):
Ditto.
* tree-vect-transform.c (vect_do_peeling_for_loop_bound,
vect_do_peeling_for_alignment, vect_transform_loop): Ditto.
* cfgloop.c (flow_loops_cfg_dump, flow_loops_dump,
mark_single_exit_loops, cancel_loop, cancel_loop_tree,
verify_loop_structure): Ditto.
* tree-flow.h (vectorize_loops, tree_ssa_lim, tree_ssa_unswitch_loops,
canonicalize_induction_variables, tree_unroll_loops_completely,
tree_ssa_prefetch_arrays, remove_empty_loops, tree_ssa_iv_optimize,
estimate_numbers_of_iterations, free_numbers_of_iterations_estimates,
tree_duplicate_loop_to_header_edge, tree_ssa_loop_version,
tree_unroll_loop, linear_transform_loops): Declaration changed.
* basic-block.h: Remove declaration of struct loops.
* cfghooks.h (struct cfg_hooks): Change type of
cfg_hook_duplicate_loop_to_header_edge.
(cfg_hook_duplicate_loop_to_header_edge): Declaration changed.
* tree-vectorizer.h (slpeel_tree_peel_loop_to_edge,
vect_transform_loop): Declaration changed.
* lambda.h (gcc_loopnest_to_lambda_loopnest): Declaration changed.
* cfgloop.h (flow_loops_dump, fix_loop_structure,
mark_irreducible_loops, mark_single_exit_loops, mark_loop_exit_edges,
cancel_loop_tree, create_preheaders, force_single_succ_latches,
verify_loop_structure, duplicate_loop, duplicate_loop_to_header_edge,
loopify, loop_version, remove_path, unswitch_loops,
unroll_and_peel_loops, doloop_optimize_loops, move_loop_invariants):
Declaration changed.

From-SVN: r119189