platform/upstream/gcc.git
15 years agore PR fortran/39996 (Double typing of function results not detected)
Janus Weil [Thu, 14 May 2009 09:41:41 +0000 (11:41 +0200)]
re PR fortran/39996 (Double typing of function results not detected)

2009-05-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39996
* decl.c (gfc_match_function_decl): Use gfc_add_type.
* symbol.c (gfc_add_type): Better checking for duplicate types in
function declarations. And: Always give an error for duplicte types,
not just a warning with -std=gnu.

2009-05-14  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39996
* gfortran.dg/func_decl_2.f90: Modified (replacing warnings by errors).
* gfortran.dg/duplicate_type_2.f90: Ditto.
* gfortran.dg/duplicate_type_3.f90: New.

From-SVN: r147528

15 years agorandom.tcc (cauchy_distribution<>:: operator()(_UniformRandomNumberGenerator&, const...
Paolo Carlini [Thu, 14 May 2009 08:14:54 +0000 (08:14 +0000)]
random.tcc (cauchy_distribution<>:: operator()(_UniformRandomNumberGenerator&, const param_type&)): Avoid M_PI, a glibc extension.

2009-05-14  Paolo Carlini  <paolo.carlini@oracle.com>

* include/bits/random.tcc (cauchy_distribution<>::
operator()(_UniformRandomNumberGenerator&, const param_type&)):
Avoid M_PI, a glibc extension.

From-SVN: r147521

15 years agoc38202a.ada: Use Impdef.
Laurent Guerby [Thu, 14 May 2009 06:44:20 +0000 (06:44 +0000)]
c38202a.ada: Use Impdef.

2009-05-14  Laurent GUERBY  <laurent@guerby.net>

        * ada/acats/tests/c3/c38202a.ada: Use Impdef.
        * ada/acats/tests/c5/c59002c.ada: Likewise.

(and fix ChangeLog formating of previous entry)

From-SVN: r147519

15 years agoFix formatting
Eric Botcazou [Thu, 14 May 2009 05:16:30 +0000 (05:16 +0000)]
Fix formatting

From-SVN: r147518

15 years agomips.c (mips_print_operand): Check for invalid values of LETTER.
Adam Nemet [Thu, 14 May 2009 02:07:00 +0000 (02:07 +0000)]
mips.c (mips_print_operand): Check for invalid values of LETTER.

* config/mips/mips.c (mips_print_operand) <REG, MEM, default>:
Check for invalid values of LETTER.

From-SVN: r147517

15 years ago2009-05-13 Taras Glek <tglek@mozilla.com>
Taras Glek [Thu, 14 May 2009 01:38:33 +0000 (01:38 +0000)]
2009-05-13  Taras Glek  <tglek@mozilla.com>
gcc/
       * attribs.c moved out attribute registration into register_attribute
       * doc/plugins.texi Documented register_attribute and PLUGIN_ATTRIBUTES
       * gcc-plugin.h Added forward decl for register_attribute
       * plugin.c Added PLUGIN_ATTRIBUTES boilerplate
       * plugin.h Added PLUGIN_ATTRIBUTES

gcc/testsuite/
       * g++.dg/plugin/attribute_plugin-test-1.C Testcase input for custom attributes and decl smashing
       * g++.dg/plugin/attribute_plugin.c Testcase plugin to test user attributes
       * g++.dg/plugin/dumb_plugin.c Fixed typo
       * g++.dg/plugin/plugin.exp Added attribute_plugin test

From-SVN: r147516

15 years agoUpdated the wrong changelog
Taras Glek [Thu, 14 May 2009 01:28:36 +0000 (01:28 +0000)]
Updated the wrong changelog

From-SVN: r147515

15 years agodecl.c (duplicate_decls): Preserve parameter attributes.
David Mandelin [Thu, 14 May 2009 01:27:15 +0000 (01:27 +0000)]
decl.c (duplicate_decls): Preserve parameter attributes.

2009-05-13  David Mandelin <dmandelin@mozilla.com>:
gcc/
      * decl.c (duplicate_decls): Preserve parameter attributes.

From-SVN: r147514

15 years agomsformat-c.c (ms_printf_length_specs): Use enumeration values even in sentinel and...
Dave Korn [Thu, 14 May 2009 00:59:33 +0000 (00:59 +0000)]
msformat-c.c (ms_printf_length_specs): Use enumeration values even in sentinel and empty entries.

* config/i386/msformat-c.c (ms_printf_length_specs):  Use enumeration
values even in sentinel and empty entries.
(ms_printf_flag_specs):  Likewise.
(ms_scanf_flag_specs):  Likewise.
(ms_strftime_flag_specs):  Likewise.
(ms_print_char_table):  Likewise.
(ms_scan_char_table):  Likewise.
(ms_time_char_table):  Likewise.

From-SVN: r147513

15 years agoDaily bump.
GCC Administrator [Thu, 14 May 2009 00:16:59 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r147512

15 years agotree-ssa-sccvn.c (compare_ops): Stabilize qsort.
Doug Kwan [Thu, 14 May 2009 00:02:55 +0000 (00:02 +0000)]
tree-ssa-sccvn.c (compare_ops): Stabilize qsort.

2009-05-13  Doug Kwan  <dougkwan@google.com>

* tree-ssa-sccvn.c (compare_ops): Stabilize qsort.

From-SVN: r147508

15 years agore PR fortran/39865 (ICE in gfc_conv_scalarized_array_ref)
Jakub Jelinek [Thu, 14 May 2009 00:00:27 +0000 (02:00 +0200)]
re PR fortran/39865 (ICE in gfc_conv_scalarized_array_ref)

PR fortran/39865
* io.c (resolve_tag_format): CHARACTER array in FMT= argument
isn't an extension.  Reject non-CHARACTER array element of
assumed shape or pointer or assumed size array.
* trans-array.c (array_parameter_size): New function.
(gfc_conv_array_parameter): Add size argument.  Call
array_parameter_size if it is non-NULL.
* trans-array.h (gfc_conv_array_parameter): Adjust prototype.
* trans-expr.c (gfc_conv_function_call, gfc_trans_arrayfunc_assign):
Adjust callers.
* trans-intrinsic.c (gfc_conv_intrinsic_loc): Likewise.
* trans-io.c (gfc_convert_array_to_string): Rewritten.

* gfortran.dg/pr39865.f90: New test.
* gfortran.dg/hollerith.f90: Don't expect errors for CHARACTER
arrays in FMT=.
* gfortran.dg/hollerith_f95.f90: Likewise.
* gfortran.dg/hollerith6.f90: New test.
* gfortran.dg/hollerith7.f90: New test.

From-SVN: r147507

15 years agore PR preprocessor/36674 (#include location is offset by one row in errors from prepr...
Manuel López-Ibáñez [Wed, 13 May 2009 23:17:55 +0000 (23:17 +0000)]
re PR preprocessor/36674 (#include location is offset by one row in errors from preprocessed files)

2009-05-14  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR cpp/36674
libcpp/
* directives (do_linemarker): Compensate for the increment in
location that occurs when we reach the end of line.
* files (_cpp_stack_include): Mention _cpp_find_file in the
comment.
testsuite/
* gcc.dg/cpp/pr36674.i: New.

From-SVN: r147504

15 years agomips.md (store): Add attributes for QI and HI.
Adam Nemet [Wed, 13 May 2009 21:52:56 +0000 (21:52 +0000)]
mips.md (store): Add attributes for QI and HI.

* config/mips/mips.md (store): Add attributes for QI and HI.
Update comment.
(truncdisi2, truncdihi2, truncdiqi2): Merge these into ...
(truncdi<mode>2): ... this new pattern.

From-SVN: r147503

15 years agoCorrect datestamp of my most recent entry.
Ben Elliston [Wed, 13 May 2009 21:46:37 +0000 (07:46 +1000)]
Correct datestamp of my most recent entry.

From-SVN: r147502

15 years agoMakefile.in (TEXI_GCCINT_FILES): Add plugins.texi.
Brad Hards [Wed, 13 May 2009 21:14:49 +0000 (21:14 +0000)]
Makefile.in (TEXI_GCCINT_FILES): Add plugins.texi.

2009-05-13  Brad Hards  <bradh@kde.org>

* Makefile.in (TEXI_GCCINT_FILES): Add plugins.texi.

From-SVN: r147499

15 years agore PR middle-end/40035 (ICE when cross-compiling with -Os)
Ben Elliston [Wed, 13 May 2009 20:52:00 +0000 (06:52 +1000)]
re PR middle-end/40035 (ICE when cross-compiling with -Os)

PR middle-end/40035
* dse.c (check_mem_read_rtx): Guard against width == -1.
testsuite/
* gcc.c-torture/compile/pr40035.c: New test.

From-SVN: r147498

15 years agogfortran.h (gfc_code): Rename struct member expr to expr1.
Steven G. Kargl [Wed, 13 May 2009 20:49:13 +0000 (20:49 +0000)]
gfortran.h (gfc_code): Rename struct member expr to expr1.

2009-05-13  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.h (gfc_code): Rename struct member expr to expr1.
* openmp.c (resolve_omp_atomic): Update expr to expr1.
* interface.c (gfc_extend_assign): Ditto.
* trans-expr.c (gfc_conv_expr_reference, gfc_trans_assignment,
gfc_trans_init_assign): Ditto.
* dump-parse-tree.c (show_code_node): Ditto.
* trans-openmp.c (gfc_trans_omp_atomic): Ditto.
* trans-stmt.c ( gfc_trans_label_assign, gfc_trans_goto, gfc_trans_call,
gfc_trans_return, gfc_trans_pause, gfc_trans_stop, gfc_trans_if_1,
gfc_trans_arithmetic_if, gfc_trans_do_while, gfc_trans_integer_select,
gfc_trans_logical_select, gfc_trans_character_select
forall_make_variable_temp, check_forall_dependencies
gfc_trans_forall_1, gfc_trans_where_2, gfc_trans_where_3
gfc_trans_where, gfc_trans_allocate, gfc_trans_deallocate): Ditto.
* io.c (match_io_element, gfc_match_inquire): Ditto.
* resolve.c (resolve_typebound_call, resolve_ppc_call,
resolve_allocate_expr, resolve_allocate_deallocate, resolve_select,
resolve_transfer, resolve_where, gfc_resolve_assign_in_forall,
gfc_resolve_blocks, resolve_code, build_init_assign): Ditto.
* st.c (gfc_free_statement): Ditto.
* match.c (gfc_match_assignment, gfc_match_pointer_assignment,
match_arithmetic_if, gfc_match_if, gfc_match_elseif
gfc_match_stopcode, gfc_match_assign, gfc_match_goto,
gfc_match_nullify, match_typebound_call, gfc_match_call
gfc_match_select, match_simple_where, gfc_match_where
gfc_match_elsewhere, match_simple_forall, gfc_match_forall): Ditto.
* trans-io.c (gfc_trans_transfer): Ditto.
* parse.c (parse_where_block, parse_if_block): Ditto.

From-SVN: r147497

15 years agopr39543-2.c: Skip if ilp32 && pic.
Kaveh R. Ghazi [Wed, 13 May 2009 20:14:54 +0000 (20:14 +0000)]
pr39543-2.c: Skip if ilp32 && pic.

* gcc.target/i386/pr39543-2.c: Skip if ilp32 && pic.

From-SVN: r147495

15 years agore PR middle-end/39976 (Big sixtrack degradation on powerpc 32/64 after revision...
Michael Matz [Wed, 13 May 2009 20:14:44 +0000 (20:14 +0000)]
re PR middle-end/39976 (Big sixtrack degradation on powerpc 32/64 after revision r146817)

        PR middle-end/39976
        * tree-outof-ssa.c (maybe_renumber_stmts_bb): New function.
        (trivially_conflicts_p): New function.
        (insert_backedge_copies): Use it.

From-SVN: r147494

15 years agoc-pragma.c (enum pragma_switch_t): Prefix constants with PRAGMA_.
Janis Johnson [Wed, 13 May 2009 18:26:14 +0000 (18:26 +0000)]
c-pragma.c (enum pragma_switch_t): Prefix constants with PRAGMA_.

* c-pragma.c (enum pragma_switch_t): Prefix constants with PRAGMA_.
(handle_stdc_pragma): Use new enum constant names.
(handle_pragma_float_const_decimal64): Ditto.

From-SVN: r147492

15 years agoMakefile.in (build/gencheck.o): Depend upon all-tree.def, not tree.def.
Ian Lance Taylor [Wed, 13 May 2009 17:40:51 +0000 (17:40 +0000)]
Makefile.in (build/gencheck.o): Depend upon all-tree.def, not tree.def.

* Makefile.in (build/gencheck.o): Depend upon all-tree.def, not
tree.def.

From-SVN: r147491

15 years agogfortran.h (gfc_code): Rename struct member label to label1.
Steven G. Kargl [Wed, 13 May 2009 16:17:59 +0000 (16:17 +0000)]
gfortran.h (gfc_code): Rename struct member label to label1.

2009-05-12  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.h (gfc_code): Rename struct member label to label1.
* dump-parse-tree.c (show_code_node): Update symbol.
* trans-stmt.c (gfc_trans_label_assign, gfc_trans_goto,
gfc_trans_arithmetic_if)": Ditto.
* resolve.c (gfc_resolve_blocks, resolve_code): Ditto.
* match.c (match_arithmetic_if, gfc_match_if, gfc_reference_st_label,
gfc_match_assign, gfc_match_goto): Ditto.
* parse.c (parse_do_block): Ditto.

From-SVN: r147489

15 years agot-uclinux (M68K_MLIB_CPU): Check for FL_UCLINUX.
Nathan Sidwell [Wed, 13 May 2009 15:10:55 +0000 (15:10 +0000)]
t-uclinux (M68K_MLIB_CPU): Check for FL_UCLINUX.

* config/m68k/t-uclinux (M68K_MLIB_CPU): Check for FL_UCLINUX.
* config/m68k/m68k-devices.def: Add FL_UCLINUX to 68020 and 54455
multilibs.
* config/m68k/m68k.h (FL_UCLINUX): Define.

From-SVN: r147478

15 years agore PR fortran/34153 (Debugging: Cannot set breakpoint in comment lines or "END PROGRAM")
Tobias Burnus [Wed, 13 May 2009 14:52:54 +0000 (16:52 +0200)]
re PR fortran/34153 (Debugging: Cannot set breakpoint in comment lines or "END PROGRAM")

2009-05-13  Tobias Burnus  <burnus@net-b.de>

        PR fortran/34153
        * gfortran.h (gfc_exec_op): Add EXEC_END_PROCEDURE.
        * dump-parse-tree.c (show_code_node): Use EXEC_END_PROCEDURE.
        * trans.c (gfc_trans_code): Ditto.
        * resolve.c (resolve_code): Ditto.
        * st.c (gfc_free_statement): Ditto.

From-SVN: r147477

15 years agoinvoke.texi (-fwhole-file): Update docs.
Jan Hubicka [Wed, 13 May 2009 13:43:32 +0000 (15:43 +0200)]
invoke.texi (-fwhole-file): Update docs.

* doc/invoke.texi (-fwhole-file): Update docs.

* options.c (gfc_post_options): -fwhole-program imply -fwhole-file.

From-SVN: r147472

15 years agoMakefile.am (PCHFLAGS): Remove -Winvalid-pch.
Ben Elliston [Wed, 13 May 2009 00:17:09 +0000 (00:17 +0000)]
Makefile.am (PCHFLAGS): Remove -Winvalid-pch.

* include/Makefile.am (PCHFLAGS): Remove -Winvalid-pch.
* include/Makefile.in: Likewise.

From-SVN: r147459

15 years agoDaily bump.
GCC Administrator [Wed, 13 May 2009 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r147458

15 years agocompatibility.cc (_ZTIe, [...]): Change type to const void * const.
Ben Elliston [Wed, 13 May 2009 00:16:08 +0000 (10:16 +1000)]
compatibility.cc (_ZTIe, [...]): Change type to const void * const.

* src/compatibility.cc (_ZTIe, _ZTIPe, _ZTIPKe): Change type to
const void * const.

From-SVN: r147455

15 years agosh.h (OVERRIDE_OPTIONS): Clear flag_schedule_insns unless -fschedule-insns is specified.
Kaz Kojima [Tue, 12 May 2009 22:49:25 +0000 (22:49 +0000)]
sh.h (OVERRIDE_OPTIONS): Clear flag_schedule_insns unless -fschedule-insns is specified.

* config/sh/sh.h (OVERRIDE_OPTIONS): Clear flag_schedule_insns
unless -fschedule-insns is specified.

From-SVN: r147454

15 years agore PR target/39561 (-mno-expand-cbranchdi broken)
Kaz Kojima [Tue, 12 May 2009 22:47:03 +0000 (22:47 +0000)]
re PR target/39561 (-mno-expand-cbranchdi broken)

PR target/39561
* config/sh/sh.h (OPTIMIZATION_OPTIONS): Don't set
TARGET_EXPAND_CBRANCHDI4.
* config/sh/sh.md (cbranchdi4): Don't check TARGET_EXPAND_CBRANCHDI4.
* config/sh/sh.opt (mexpand-cbranchdi): Remove.
(cmpeqdi): Fix comment.

From-SVN: r147453

15 years agore PR fortran/40110 (Bind(C): gfortran rejects the questionable but formally correct...
Tobias Burnus [Tue, 12 May 2009 22:42:45 +0000 (00:42 +0200)]
re PR fortran/40110 (Bind(C): gfortran rejects the questionable but formally correct INTEGER(C_CHAR))

2009-05-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40110
        * decl.c (gfc_match_kind_spec): Turn C kind error into a
        * warning.

2009-05-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40110
        * gfortran.dg/bind_c_usage_18.f90: Change dg-error into
        dg-warning.
        * gfortran.dg/c_kind_tests_2.f03: Ditto.
        * gfortran.dg/interop_params.f03: Ditto.

From-SVN: r147452

15 years agosh-protos.h (sh_legitimate_index_p): Declare.
Kaz Kojima [Tue, 12 May 2009 22:41:54 +0000 (22:41 +0000)]
sh-protos.h (sh_legitimate_index_p): Declare.

* config/sh/sh-protos.h (sh_legitimate_index_p): Declare.
(sh_legitimate_address_p): Likewise.
* config/sh/sh.c (sh_legitimate_index_p): New.
(sh_legitimate_address_p): Likewise.
* config/sh/sh.h (REG_OK_FOR_BASE_P): Add STRICT parameter.
(REG_OK_FOR_INDEX_P, SUBREG_OK_FOR_INDEX_P): Likewise.
(MODE_DISP_OK_4, MODE_DISP_OK_8): Remove.
(MAYBE_BASE_REGISTER_RTX_P): New macro.
(MAYBE_INDEX_REGISTER_RTX_P): Likewise.
(BASE_REGISTER_RTX_P): Use MAYBE_BASE_REGISTER_RTX_P.
(INDEX_REGISTER_RTX_P): Use MAYBE_INDEX_REGISTER_RTX_P.
(GO_IF_LEGITIMATE_INDEX): Use sh_legitimate_index_p.
(GO_IF_LEGITIMATE_ADDRESS): Use sh_legitimate_address_p.

From-SVN: r147450

15 years agostatus_cxx200x.xml: Note missing constexpr for random number engines...
Edward Smith-Rowland [Tue, 12 May 2009 22:16:52 +0000 (22:16 +0000)]
status_cxx200x.xml: Note missing constexpr for random number engines...

2009-05-12  Edward Smith-Rowland  <3dw4rd@verizon.net>

        * doc/xml/manual/status_cxx200x.xml: Note missing constexpr for
random number engines, complex, bitset, array, time utilities, and
char_traits.

From-SVN: r147449

15 years agoexception: Include nested_exception.h in C++0x mode.
Jonathan Wakely [Tue, 12 May 2009 21:08:00 +0000 (21:08 +0000)]
exception: Include nested_exception.h in C++0x mode.

2009-05-12  Jonathan Wakely  <jwakely.gcc@gmail.com>

* libsupc++/exception: Include nested_exception.h in C++0x mode.
* libsupc++/nested_exception.h: New.
* libsupc++/Makefile.am: Add new header.
* libsupc++/Makefile.in: Regenerate.
* testsuite/18_support/nested_exception/rethrow_nested.cc: New.
* testsuite/18_support/nested_exception/throw_with_nested.cc: New.
* testsuite/18_support/nested_exception/cons.cc: New.
* testsuite/18_support/nested_exception/nested_ptr.cc: New.
* testsuite/18_support/nested_exception/rethrow_if_nested.cc: New.
* doc/xml/manual/status_cxx200x.xml: Adjust.

From-SVN: r147446

15 years agore PR target/37179 (gcc emits bad opcode 'ffreep')
H.J. Lu [Tue, 12 May 2009 16:33:14 +0000 (09:33 -0700)]
re PR target/37179 (gcc emits bad opcode 'ffreep')

PR target/37179:
* Correct PR number for revision 147429.

From-SVN: r147441

15 years agoloop-36.c: Reduce amount of iterations to 2 so unrolling still happens.
Jan Hubicka [Tue, 12 May 2009 14:05:28 +0000 (16:05 +0200)]
loop-36.c: Reduce amount of iterations to 2 so unrolling still happens.

* gcc.dg/tree-ssa/loop-36.c: Reduce amount of iterations to 2 so unrolling
still happens.
* gcc.dg/ipa/ipacost-1.c: Prevent inlining
* gcc.dg/ipa/ipacost-2.c: Likewise.
* gcc.dg/vect/slp-3.c: Loop is no longer unrolled.

* tree-inline.c (estimate_operator_cost): Add operands;
when division happens by constant, it is cheap.
(estimate_num_insns): Loads and stores are not having cost of 0;
EH magic stuff is cheap; when computing runtime cost of switch,
use log2 base of amount of its cases; builtin_expect has cost of 0;
compute cost for moving return value of call.
(init_inline_once): Initialize time_based flags.
* tree-inline.h (eni_weights_d): Add time_based flag.

From-SVN: r147436

15 years agodf-core.c: Update head documentation.
Paolo Bonzini [Tue, 12 May 2009 13:47:26 +0000 (13:47 +0000)]
df-core.c: Update head documentation.

2009-05-12  Paolo Bonzini  <bonzini@gnu.org>

* df-core.c: Update head documentation.

From-SVN: r147435

15 years agoFix PR bootstrap/40118
Michael Meissner [Tue, 12 May 2009 12:52:45 +0000 (12:52 +0000)]
Fix PR bootstrap/40118

From-SVN: r147434

15 years agodefault_format_1.f90: XFAIL on cygwin.
David Billinghurst [Tue, 12 May 2009 11:55:20 +0000 (11:55 +0000)]
default_format_1.f90: XFAIL on cygwin.

2009-05-12  David Billinghurst <billingd@gcc.gnu.org>

        * gfortran.dg/default_format_1.f90: XFAIL on cygwin.

From-SVN: r147430

15 years agore PR target/37197 (-msse4 ICE on __builtin_parityl)
Uros Bizjak [Tue, 12 May 2009 11:42:53 +0000 (13:42 +0200)]
re PR target/37197 (-msse4 ICE on __builtin_parityl)

PR target/37197
* config/i386/driver-i386.c (processor_signatures): New enum.
(SIG_GEODE): Move from vendor_signatures to processor_signatures.
(host_detect_local_cpu): For SIG_AMD vendor, check for SIG_GEODE
processor signature to detect geode processor.

From-SVN: r147429

15 years agorevert: optabs.c (prepare_cmp_insn): Temporarily disable test that causes spurious...
Paolo Bonzini [Tue, 12 May 2009 09:52:27 +0000 (09:52 +0000)]
revert: optabs.c (prepare_cmp_insn): Temporarily disable test that causes spurious differences between trunk and...

2009-05-12  Paolo Bonzini  <bonzini@gnu.org>

Revert:

2009-05-12  Paolo Bonzini  <bonzini@gnu.org>

* optabs.c (prepare_cmp_insn): Temporarily disable test that
causes spurious differences between trunk and cond-optab branch.

From-SVN: r147426

15 years agoMerge cond-optab branch.
Paolo Bonzini [Tue, 12 May 2009 09:43:48 +0000 (09:43 +0000)]
Merge cond-optab branch.

From-SVN: r147425

15 years agotarget-supports.exp (check_profiling_available): Return false for -p on *-*-cygwin...
David Billinghurst [Tue, 12 May 2009 08:34:46 +0000 (08:34 +0000)]
target-supports.exp (check_profiling_available): Return false for -p on *-*-cygwin* targets.

2009-05-12  David Billinghurst <billingd@gcc.gnu.org>

    * lib/target-supports.exp (check_profiling_available): Return
    false for -p on *-*-cygwin* targets.

From-SVN: r147421

15 years agooptabs.c (prepare_cmp_insn): Temporarily disable test that causes spurious difference...
Paolo Bonzini [Tue, 12 May 2009 06:42:59 +0000 (06:42 +0000)]
optabs.c (prepare_cmp_insn): Temporarily disable test that causes spurious differences between trunk and...

2009-05-12  Paolo Bonzini  <bonzini@gnu.org>

* optabs.c (prepare_cmp_insn): Temporarily disable test that
causes spurious differences between trunk and cond-optab branch.

From-SVN: r147418

15 years agore PR target/37137 (unrecognized command line option "-minterlink-mips16")
Alexandre Oliva [Tue, 12 May 2009 05:49:28 +0000 (05:49 +0000)]
re PR target/37137 (unrecognized command line option "-minterlink-mips16")

ChangeLog:
PR target/37137
* Makefile.def (flags_to_pass): Remove redundant and incomplete
STAGE1_CFLAGS, STAGE2_CFLAGS, STAGE3_CFLAGS, and STAGE4_CFLAGS.
Add FLAGS_FOR_TARGET and BUILD_CONFIG.
(bootstrap_stage): Remove bootstrap-debug custom stages.  Turn
stage_configureflags, stage_cflags and stage_libcflags into
explicit Makefile macros.
* Makefile.tpl (HOST_EXPORTS, EXTRA_HOST_FLAGS): Pass GCJ and
GFORTRAN.
(POSTSTAGE1_HOST_EXPORTS): Add XGCC_FLAGS_FOR_TARGET and TFLAGS to
CC.  Set CC_FOR_BUILD from CC.
(BASE_TARGET_EXPORTS, RAW_CXX_TARGET_EXPORTS,
NORMAL_TARGET_EXPORTS): Move SYSROOT_CFLAGS_FOR_TARGET and
DEBUG_PREFIX_CFLAGS_FOR_TARGET from CFLAGS and CXXFLAGS to
XGCC_FLAGS_FOR_TARGET.  Add it along with TFLAGS to CC, CXX, GCJ,
and GFORTRAN.
(TFLAGS, STAGE_CFLAGS, STAGE_TFLAGS, STAGE_CONFIGURE_FLAGS): New.
(_LIBCFLAGS): Renamed to _TFLAGS.
(do-compare-debug, do-compare3-debug): Drop.
(CC, GCC_FOR_TARGET, CXX_FOR_TARGET, RAW_CXX_FOR_TARGET,
GCJ_FOR_TARGET, GFORTRAN_FOR_TARGET): Remove FLAGS_FOR_TARGET.
(FLAGS_FOR_TARGET, SYSROOT_CFLAGS_FOR_TARGET,
DEBUG_PREFIX_CFLAGS_FOR_TARGET): Move down.
(XGCC_FLAGS_FOR_TARGET): New.
(BASE_FLAGS_TO_PASS): Pass STAGEid_CFLAGS, STAGEid_TFLAGS and TFLAGS.
(EXTRA_HOST_FLAGS): Pass GCJ and GFORTRAN.
(POSTSTAGE1_FLAGS_TO_PASS): Move SYSROOT_CFLAGS_FOR_TARGET and
DEBUG_PREFIX_CFLAGS_FOR_TARGET from CFLAGS, CXXFLAGS, LIBCFLAGS,
LIBCXXFLAGS to XGCC_FLAGS_FOR_TARGET.    Add it along with TFLAGS
to CC, CXX, GCJ, and GFORTRAN.  Pass XGCC_FLAGS_FOR_TARGET and
TFLAGS.
(BUILD_CONFIG): Include if requested.
(all): Set TFLAGS on bootstrap.
(configure-stageid-prefixmodule): Pass TFLAGS, adjust FLAGS.
(all-stageid-prefixmodule): Likewise.
(do-clean, distclean-stageid): Set TFLAGS.
(restrap): Fix whitespace.
* Makefile.in: Rebuilt.
config/ChangeLog:
* multi.m4: Save CXX, GFORTRAN and GCJ in config.status.
* mt-gnu (CXXFLAGS_FOR_TARGET): Adjust.
* bootstrap-O1.mk: New.
* bootstrap-O3.mk: New.
* bootstrap-debug.mk: New.
gcc/ChangeLog:
PR target/37137
* doc/install.texi (STAGE1_TFLAGS, BUILD_CONFIG): Document.
gcc/java/ChangeLog:
* Make-lang.in (GCJ): Renamed to...
(XGCJ): ... this.
libjava/ChangeLog:
* configure.ac: Insert libgcjdir in the GCJ passed in the
environment, rather than overriding completely.
* configure: Rebuilt.

From-SVN: r147415

15 years agotree.c (iterative_hash_pointer): Delete.
Alexandre Oliva [Tue, 12 May 2009 05:43:51 +0000 (05:43 +0000)]
tree.c (iterative_hash_pointer): Delete.

* tree.c (iterative_hash_pointer): Delete.
(iterative_hash_expr): Short-circuit handling of NULL pointer.
Hash UIDs and versions of SSA names.  Don't special-case built-in
function declarations.

From-SVN: r147414

15 years agore PR bootstrap/40103 (CLooG header files are not -Wc++-compat ready)
Ian Lance Taylor [Tue, 12 May 2009 01:26:45 +0000 (01:26 +0000)]
re PR bootstrap/40103 (CLooG header files are not -Wc++-compat ready)

PR bootstrap/40103
* graphite.c: Force -Wc++-compat to only be a warning before
#including "cloog/cloog.h".

From-SVN: r147407

15 years agoDaily bump.
GCC Administrator [Tue, 12 May 2009 00:16:46 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r147404

15 years agore PR tree-optimization/38632 (ICE with try/catch and -ftree-parallelize-loops)
H.J. Lu [Tue, 12 May 2009 00:09:17 +0000 (00:09 +0000)]
re PR tree-optimization/38632 (ICE with try/catch and -ftree-parallelize-loops)

2009-05-11  H.J. Lu  <hongjiu.lu@intel.com>

PR tree-optimization/38632
* g++.dg/tree-ssa/pr38632.C: New.

From-SVN: r147401

15 years agoipa-cp.c (ipcp_cloning_candidate_p): Add missing return false.
Martin Jambor [Mon, 11 May 2009 20:58:08 +0000 (22:58 +0200)]
ipa-cp.c (ipcp_cloning_candidate_p): Add missing return false.

2009-05-11  Martin Jambor  <mjambor@suse.cz>

* ipa-cp.c (ipcp_cloning_candidate_p): Add missing return false.

From-SVN: r147396

15 years agopr21829.c: Simplify matching since we now optimize better.
Jan Hubicka [Mon, 11 May 2009 20:54:56 +0000 (22:54 +0200)]
pr21829.c: Simplify matching since we now optimize better.

* gcc.dg/tree-ssa/pr21829.c: Simplify matching since
we now optimize better.
* gcc.dg/Wunreachable-8.c: Bogus warnings now come
out at different places.
* gcc.dg/vect/vect-92.c: Increase loop iteration count to prevent
unroling.
* gcc.dg/vect/vect-76.c: Likewise.
* gcc.dg/vect/vect-70.c: Likewise.
* gcc.dg/vect/vect-66.c: Likewise.
* gcc.dg/vect/no-section-anchors-vect-66.c: Likewise.
* gcc.dg/vect/slp-3.c: One of loops gets now fully unrolled.
* tree-ssa-loop-ivcanon.c: Include target.h
(struct loop_size): new structure.
(constant_after_peeling): New predicate.
(tree_estimate_loop_size): New function.
(estimated_unrolled_size): Rewrite for new estimates.
(try_unroll_loop_completely): Use new estimates.
* Makefile.in (tree-ssa-loop-ivcanon.o): Add dependenc on target.h

From-SVN: r147395

15 years agospu-c.c (spu_categorize_keyword): Update for recent libcpp interface change.
Andrew Pinski [Mon, 11 May 2009 19:14:08 +0000 (19:14 +0000)]
spu-c.c (spu_categorize_keyword): Update for recent libcpp interface change.

2009-05-11  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config/spu/spu-c.c (spu_categorize_keyword): Update for recent
        libcpp interface change.
        (spu_macro_to_expand): Likewise.

From-SVN: r147393

15 years agore PR middle-end/40080 (error: missing callgraph edge for call stmt)
H.J. Lu [Mon, 11 May 2009 16:37:07 +0000 (16:37 +0000)]
re PR middle-end/40080 (error: missing callgraph edge for call stmt)

2009-05-11  H.J. Lu  <hongjiu.lu@intel.com>

PR middle-end/40080
* gcc.c-torture/compile/pr40080.c: New.

From-SVN: r147389

15 years agore PR middle-end/40026 (ICE during gimplify_init_constructor)
Paolo Bonzini [Mon, 11 May 2009 16:05:45 +0000 (16:05 +0000)]
re PR middle-end/40026 (ICE during gimplify_init_constructor)

2009-05-11  Paolo Bonzini  <bonzini@gnu.org>

PR tree-optimization/40026
* gimplify.c (gimplify_init_constructor): Change initial conditional
to assertion.  Rewrite TREE_OPERAND (*expr_p, 1) after
optimize_compound_literals_in_ctor.

testsuite:
2009-05-11  Paolo Bonzini  <bonzini@gnu.org>

* gcc.c-torture/compile/pr40026.c: New testcase.

From-SVN: r147386

15 years agom68k-devices.def (52274, [...]): New devices.
Nathan Sidwell [Mon, 11 May 2009 15:46:54 +0000 (15:46 +0000)]
m68k-devices.def (52274, [...]): New devices.

* config/m68k/m68k-devices.def (52274, 52277, 5301x, 5225x, 51xx):
New devices.
* doc/invoke.texi (M680x0 Options): Document new coldfire cpus.

From-SVN: r147383

15 years ago* resolve.c (check_host_association): Initialize tail.
Steve Ellcey [Mon, 11 May 2009 15:23:25 +0000 (15:23 +0000)]
* resolve.c (check_host_association): Initialize tail.

From-SVN: r147381

15 years agore PR fortran/40089 (Public type with public component which has a private type)
Janus Weil [Mon, 11 May 2009 14:14:38 +0000 (16:14 +0200)]
re PR fortran/40089 (Public type with public component which has a private type)

2009-05-11  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40089
* resolve.c (resolve_fl_derived): Only return FAILURE if
gfc_notify_std fails.

2009-05-11  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40089
* gfortran.dg/proc_ptr_comp_7.f90: New.

From-SVN: r147379

15 years agotree-vect-data-refs.c (vect_analyze_group_access): Use HOST_WIDE_INT for gap.
H.J. Lu [Mon, 11 May 2009 13:51:14 +0000 (13:51 +0000)]
tree-vect-data-refs.c (vect_analyze_group_access): Use HOST_WIDE_INT for gap.

2009-05-11  H.J. Lu  <hongjiu.lu@intel.com>

* tree-vect-data-refs.c (vect_analyze_group_access): Use
HOST_WIDE_INT for gap.

From-SVN: r147375

15 years agore PR tree-optimization/40074 (ICE in vect_get_vec_def_for_operand, at tree-vect...
Ira Rosen [Mon, 11 May 2009 12:33:13 +0000 (12:33 +0000)]
re PR tree-optimization/40074 (ICE in vect_get_vec_def_for_operand, at tree-vect-stmts.c:944)

PR tree-optimization/40074
* tree-vect-data-refs.c (vect_analyze_group_access): Take gaps into
account in group size and step comparison.

From-SVN: r147372

15 years agopasses.c (init_optimization_passes): Strip now incorrect comment.
Richard Guenther [Mon, 11 May 2009 12:19:00 +0000 (12:19 +0000)]
passes.c (init_optimization_passes): Strip now incorrect comment.

2009-05-11  Richard Guenther  <rguenther@suse.de>

* passes.c (init_optimization_passes): Strip now incorrect comment.
(execute_function_todo): Do not set PROP_alias.
* tree-pass.h (PROP_alias): Remove.
* tree-ssa-structalias.c (pass_build_alias): Do not provide PROP_alias.
* tree-if-conv.c (pass_if_conversion): Do not require PROP_alias.
* tree-nrv.c (pass_return_slot): Likewise.
* tree-object-size.c (pass_object_sizes): Likewise.
* tree-ssa-dom.c (pass_dominator): Likewise.
(pass_phi_only_cprop): Likewise.
* tree-ssa-dse.c (pass_dse): Likewise.
* tree-ssa-phiopt.c (pass_phiopt): Likewise.
(pass_cselim): Likewise.
* tree-ssa-pre.c (pass_pre): Likewise.
(pass_fre): Likewise.
* tree-ssa-reassoc.c (pass_reassoc): Likewise.
* tree-ssa-sink.c (pass_sink_code): Likewise.
* tree-stdarg.c (pass_stdarg): Likewise.
* tree-tailcall.c (pass_tail_calls): Likewise.
* tree-vrp.c (pass_vrp): Likewise.

From-SVN: r147371

15 years agobasic-block.h (enum profile_status): Break out of struct control_flow_graph.
Ian Lance Taylor [Mon, 11 May 2009 01:02:40 +0000 (01:02 +0000)]
basic-block.h (enum profile_status): Break out of struct control_flow_graph.

./: * basic-block.h (enum profile_status): Break out of struct
control_flow_graph.
* cgraph.h (struct inline_summary): Break out of struct
cgraph_local_info.
* cgraphunit.c (enum cgraph_order_sort_kind): New enum, broken out
of struct cgraph_order_sort.
* combine.c (enum undo_kind): New enum, broken out of struct
undo.
* cse.c (struct branch_path): Break out of struct
cse_basic_block_data.
* except.h (enum eh_region_type): Break out of struct eh_region.
* gcc.c (enum add_del): Break out of struct modify_target.
* genrecog.c (enum decision_type): Break out of struct
decision_test.
* ggc-page.c (struct ggc_pch_ondisk): Break out of struct
ggc_pch_data.
* matrix-reorg.c (struct free_info): Break out of struct
matrix_info.
* regmove.c (enum match_use): New enum, broken out of struct
match.
* sched-int.h (enum post_call_group): New enum, broken out of
struct deps.
(struct deps_reg): Break out of struct deps.
* target.h (struct asm_int_op): Break out of struct gcc_target.
* tree-eh.c (struct goto_queue_node): Break out of struct
leh_tf_state.
* tree-inline.h (enum copy_body_cge_which): Break out of
copy_body_data.
* tree-pass.h (enum opt_pass_type): Break out of struct opt_pass.

* c-decl.c (in_struct, struct_types): New static variables.
(pushtag): Add loc parameter.  Change all callers.
(lookup_tag): Add ploc parameter.  Change all callers.
(check_compound_literal_type): New function.
(parser_xref_tag): Add loc parameter.  Change all callers.  If
-Wc++-compat, warn about struct/union/enum types defined within a
struct or union.
(start_struct): Add enclosing_in_struct, enclosing_struct_types,
and loc parameters.  Change all callers.  Change error calls to
error_at, using loc.  For a redefinition, if the location of the
original definition is known, report it.  Set in_struct and
struct_types.  If -Wc++-compat warn if in sizeof, typeof, or
alignof.
(finish_struct): Add new parameters enclosing_in_struct and
enclosing_struct_types.  Change all callers.  Set
C_TYPE_DEFINED_IN_STRUCT for all struct/union/enum types defined
in the struct.  If in a struct, add this struct to struct_types.
(start_enum): Add loc parameter.  Change all callers.  Use
error_at for errors, using loc.  For a redefinition, if the
location of the original definition is known, report it.  If in a
struct, add this enum type to struct_types.  If -Wc++-compat warn
if in sizeof, typeof, or alignof.
* c-parser.c (disable_extension_diagnostics): Disable
-Wc++-compat.
(enable_extension_diagnostics): Reenable -Wc++-compat if
appropriate.
(c_parser_enum_specifier): Get enum location for start_enum.
(c_parser_struct_or_union_specifier): Get struct location for
start_struct.  Save in_struct and struct_types status between
start_struct and finish_struct.
(c_parser_cast_expression): Get location of cast.
(c_parser_alignof_expression): Get location of type.
(c_parser_postfix_expression): Likewise.
(c_parser_postfix_expression_after_paren_type): Add type_loc
parameter.  Change all callers.  Call
check_compound_literal_type.  Use type_loc for error about
variable size type.
* c-typeck.c (build_external_ref): If -Wc++-compat, warn about a
use of an enum constant from an enum type defined in a struct or
union.
(c_cast_expr): Add loc parameter.  Change all callers.  If
-Wc++-compat, warn about defining a type in a cast.
* c-tree.h (C_TYPE_DEFINED_IN_STRUCT): Define.
(start_enum, start_struct, finish_struct): Update declarations.
(parser_xref_tag, c_cast_expr): Update declarations.
(check_compound_literal_type): Declare.
fortran/:
* gfortran.h (enum gfc_omp_sched_kind): New enum, broken out of
gfc_omp_clauses.
(enum gfc_omp_default_sharing): Likewise.
* module.c (enum gfc_rsym_state): New enum, broken out of
pointer_info.
(enum gfc_wsym_state): Likewise.
* parse.c (enum state_order): New enum, broken out of st_state.
objc/:
* objc-act.c (objc_building_struct): New static variable.
(objc_in_struct, objc_struct_types): New static variables.
(objc_start_struct, objc_finish_struct): New static functions.
(generate_struct_by_value_array): Call objc_start_struct instead
of start_struct, and call objc_finish_struct instead of
finish_struct.
(objc_build_struct, build_objc_symtab_template): Likewise.
(build_module_descriptor): Likewise.
(build_next_objc_exception_stuff): Likewise.
(build_protocol_template): Likewise.
(build_method_prototype_list_template): Likewise.
(build_method_prototype_template): Likewise.
(build_category_template, build_selector_template): Likewise.
(build_class_template, build_super_template): Likewise.
(build_ivar_template, build_ivar_list_template): Likewise.
(build_method_list_template): Likewise.
(build_method_template): Likewise.
objcp/:
* objcp-decl.h (start_struct): Add three new, ignored, macro
parameters.
(finish_struct): Add two new, ignored, macro parameters.
testsuite/:
* gcc.dg/Wcxx-compat-7.c: New testcase.
* gcc.dg/Wcxx-compat-8.c: New testcase.
* gcc.dg/c99-tag-1.c: Recognize new "originally defined here"
notes
* gcc.dg/pr17188-1.c: Likewise.
* gcc.dg/pr39084.c: Likewise.

From-SVN: r147358

15 years agoDaily bump.
GCC Administrator [Mon, 11 May 2009 00:16:46 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r147356

15 years agors6000-c.c (altivec_categorize_keyword): Update for recent libcpp interface change.
Ben Elliston [Sun, 10 May 2009 23:17:55 +0000 (23:17 +0000)]
rs6000-c.c (altivec_categorize_keyword): Update for recent libcpp interface change.

* config/rs6000/rs6000-c.c (altivec_categorize_keyword): Update
for recent libcpp interface change.
(rs6000_macro_to_expand): Likewise.

From-SVN: r147352

15 years agore PR target/40031 (ARM broken with addresses in PHIs with -fPIC)
Michael Matz [Sun, 10 May 2009 18:40:16 +0000 (18:40 +0000)]
re PR target/40031 (ARM broken with addresses in PHIs with -fPIC)

        PR target/40031
        * config/arm/arm.c (require_pic_register): Emit on entry
        edge, not at entry of function.
testsuite/
        * gcc.dg/pr40031.c: New test.

From-SVN: r147350

15 years agore PR tree-optimization/40081 (verify_stmts failed with -O2)
Richard Guenther [Sun, 10 May 2009 16:40:55 +0000 (16:40 +0000)]
re PR tree-optimization/40081 (verify_stmts failed with -O2)

2009-05-10  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/40081
Revert
* tree-sra.c (instantiate_element): Instantiate scalar replacements
using the main variant of the element type.  Do not fiddle with
TREE_THIS_VOLATILE or TREE_SIDE_EFFECTS.

* tree-sra.c (sra_type_can_be_decomposed_p): Do not decompose
structs with volatile fields.

From-SVN: r147349

15 years agoRemove junk file
Eric Botcazou [Sun, 10 May 2009 16:39:39 +0000 (16:39 +0000)]
Remove junk file

From-SVN: r147348

15 years agotree-inline.c (delete_unreachable_blocks_update_callgraph): Declare.
Jan Hubicka [Sun, 10 May 2009 15:20:27 +0000 (17:20 +0200)]
tree-inline.c (delete_unreachable_blocks_update_callgraph): Declare.

* tree-inline.c (delete_unreachable_blocks_update_callgraph): Declare.
(estimate_move_cost): Assert that it does not get called for VOID_TYPE_P.
(estimate_num_insns): Skip VOID types in argument handling.
(optimize_inline_calls): Delete unreachable blocks and verify that
callgraph is valid.

From-SVN: r147344

15 years agoFix changelog entry.
Jan Hubicka [Sun, 10 May 2009 15:13:23 +0000 (15:13 +0000)]
Fix changelog entry.

From-SVN: r147343

15 years agocgraphbuild.c (record_reference): Use cgraph_mark_address_taken_node.
Jan Hubicka [Sun, 10 May 2009 15:11:01 +0000 (17:11 +0200)]
cgraphbuild.c (record_reference): Use cgraph_mark_address_taken_node.

* cgraphbuild.c (record_reference): Use cgraph_mark_address_taken_node.
* cgraph.c (cgraph_mark_address_taken_node): New function.
(dump_cgraph_node): Dump new flag.
* cgraph.h (struct cgraph_node): Add address_taken.
(cgraph_mark_address_taken_node): New function.
* cp/decl2.c (cxx_callgraph_analyze_expr): Use
cgraph_mark_address_taken.
* ipa.c (cgraph_postorder): Prioritize functions with address taken
since new direct calls can be born.

From-SVN: r147342

15 years agoc-lex.c (c_lex_with_flags): Expect cpp_hashnode in tok->val.node.node.
Joseph Myers [Sun, 10 May 2009 14:27:32 +0000 (15:27 +0100)]
c-lex.c (c_lex_with_flags): Expect cpp_hashnode in tok->val.node.node.

gcc:
* c-lex.c (c_lex_with_flags): Expect cpp_hashnode in
tok->val.node.node.

libcpp:
* include/cpplib.h (enum cpp_token_fld_kind): Add
CPP_TOKEN_FLD_TOKEN_NO.
(struct cpp_macro_arg, struct cpp_identifier): Define.
(union cpp_token_u): Use struct cpp_identifier for identifiers.
Use struct cpp_macro_arg for macro arguments.  Add token_no for
CPP_PASTE token numbers.
* directives.c (_cpp_handle_directive, lex_macro_node, do_pragma,
do_pragma_poison, parse_assertion): Use val.node.node in place of
val.node.
* expr.c (parse_defined, eval_token): Use val.node.node in place
of val.node.
* lex.c (cpp_ideq, _cpp_lex_direct, cpp_token_len,
cpp_spell_token, cpp_output_token, _cpp_equiv_tokens,
cpp_token_val_index): Use val.macro_arg.arg_no or val.token_no in
place of val.arg_no.  Use val.node.node in place of val.node.
* macro.c (replace_args, cpp_get_token, parse_params,
lex_expansion_token, create_iso_definition, cpp_macro_definition):
Use val.macro_arg.arg_no or val.token_no in place of val.arg_no.
Use val.node.node in place of val.node.

From-SVN: r147341

15 years agoFix formatting
Eric Botcazou [Sun, 10 May 2009 12:09:47 +0000 (12:09 +0000)]
Fix formatting

From-SVN: r147338

15 years agore PR middle-end/40084 (Revision 147294 failed 483.xalancbmk in SPEC CPU 2006 at...
Jan Hubicka [Sun, 10 May 2009 11:36:11 +0000 (13:36 +0200)]
re PR middle-end/40084 (Revision 147294 failed 483.xalancbmk in SPEC CPU 2006 at -O3)

PR middle-end/40084
* cgraph.c (cgraph_update_edges_for_call_stmt_node): Take old_call argument;
rewrite.
(cgraph_update_edges_for_call_stmt): Take old_decl argument.
* cgraph.h (cgraph_update_edges_for_call_stmt): Update prototype.
* tree-inline.c (copy_bb): Set frequency correctly.
(fold_marked_statements): Update call of cgraph_update_edges_for_call_stmt.

From-SVN: r147337

15 years ago* gcc.pot: Regenerate.
Joseph Myers [Sun, 10 May 2009 10:36:44 +0000 (11:36 +0100)]
* gcc.pot: Regenerate.

From-SVN: r147335

15 years agoarc.c (arc_handle_interrupt_attribute): Use %qE for identifiers in diagnostics.
Joseph Myers [Sun, 10 May 2009 10:29:35 +0000 (11:29 +0100)]
arc.c (arc_handle_interrupt_attribute): Use %qE for identifiers in diagnostics.

* config/arc/arc.c (arc_handle_interrupt_attribute): Use %qE for
identifiers in diagnostics.
* config/arm/arm.c (arm_handle_fndecl_attribute,
arm_handle_isr_attribute): Likewise.
* config/avr/avr.c (avr_handle_progmem_attribute,
avr_handle_fndecl_attribute, avr_handle_fntype_attribute):
Likewise.
* config/bfin/bfin.c (handle_int_attribute,
bfin_handle_longcall_attribute, bfin_handle_l1_text_attribute,
bfin_handle_l1_data_attribute, bfin_handle_longcall_attribute,
bfin_handle_l1_text_attribute, bfin_handle_l1_data_attribute):
Likewise.
* config/darwin.c (darwin_handle_kext_attribute,
darwin_handle_weak_import_attribute): Likewise.
* config/h8300/h8300.c (h8300_handle_fndecl_attribute,
h8300_handle_eightbit_data_attribute,
h8300_handle_tiny_data_attribute): Likewise.
* config/i386/i386.c (ix86_handle_cconv_attribute,
ix86_handle_abi_attribute, ix86_handle_struct_attribute):
Likewise.
* config/i386/winnt.c (ix86_handle_shared_attribute,
ix86_handle_selectany_attribute): Likewise.
* config/ia64/ia64.c (ia64_handle_model_attribute): Likewise.
* config/m32c/m32c.c (function_vector_handler): Likewise.
* config/m68hc11/m68hc11.c (m68hc11_handle_page0_attribute,
m68hc11_handle_fntype_attribute): Likewise.
* config/m68k/m68k.c (m68k_handle_fndecl_attribute): Likewise.
* config/mcore/mcore.c (mcore_handle_naked_attribute): Likewise.
* config/mips/mips.c (mips_insert_attributes,
mips_merge_decl_attributes, mips_expand_builtin): Likewise.
* config/rs6000/rs6000.c (rs6000_handle_longcall_attribute,
rs6000_handle_struct_attribute): Likewise.
* config/sh/sh.c (sh_insert_attributes,
sh_handle_resbank_handler_attribute,
sh_handle_interrupt_handler_attribute,
sh2a_handle_function_vector_handler_attribute,
sh_handle_sp_switch_attribute, sh_handle_trap_exit_attribute):
Likewise.
* config/sh/symbian.c (sh_symbian_mark_dllimport): Likewise.
* config/spu/spu.c (spu_handle_fndecl_attribute,
spu_handle_vector_attribute): Likewise.
* config/stormy16/stormy16.c
(xstormy16_handle_interrupt_attribute): Likewise.
* config/v850/v850-c.c (ghs_pragma_section): Likewise.
* config/v850/v850.c (v850_handle_interrupt_attribute): Likewise.

From-SVN: r147334

15 years agopretty-print.h (struct pretty_print_info): Add translate_identifiers.
Joseph Myers [Sun, 10 May 2009 10:28:34 +0000 (11:28 +0100)]
pretty-print.h (struct pretty_print_info): Add translate_identifiers.

* pretty-print.h (struct pretty_print_info): Add
translate_identifiers.
(pp_translate_identifiers): New.
(pp_identifier): Only conditionally translate identifier to locale
character set.
* pretty-print.c (pp_construct): Set pp_translate_identifiers.
(pp_base_tree_identifier): Only conditionally translate identifier
to locale character set.
* c-pretty-print.c (M_): Define.
(pp_c_type_specifier, pp_c_primary_expression): Mark English
fragments for conditional translation with M_.
* tree-pretty-print.c (maybe_init_pretty_print): Disable
identifier translation.

cp:
* call.c (name_as_c_string): Call type_as_string_translate.
Translate identifiers to locale character set.
* cp-tree.h (lang_decl_name): Update prototype.
(type_as_string_translate, decl_as_string_translate,
cxx_printable_name_translate): Declare.
* cxx-pretty-print.c (M_): Define.
(pp_cxx_unqualified_id, pp_cxx_canonical_template_parameter): Mark
English fragments for conditional translation with M_.
* decl.c (grokdeclarator): Translate identifiers to locale
character set for diagnostics.
* error.c (M_): Define.
(dump_template_bindings, dump_type, dump_aggr_type,
dump_type_prefix, dump_global_iord, dump_simple_decl, dump_decl,
dump_function_decl, dump_template_parms, dump_expr,
dump_binary_op, op_to_string, assop_to_string): Mark English
fragments for conditional translation with M_.
(type_as_string): Disable translation of identifiers.
(type_as_string_translate): New.
(expr_as_string): Disable translation of identifiers.
(decl_as_string): Disable translation of identifiers.
(decl_as_string_translate): New.
(lang_decl_name): Add parameter translate.
(args_to_string): Call type_as_string_translate.
(cp_print_error_function): Call cxx_printable_name_translate.
(print_instantiation_full_context,
print_instantiation_partial_context): Call
decl_as_string_translate.
* parser.c (cp_lexer_get_preprocessor_token): Use %qE for
identifier in diagnostic.
* tree.c (cxx_printable_name): Change to
cxx_printable_name_internal.  Add parameter translate.
(cxx_printable_name, cxx_printable_name_translate): New wrappers
round cxx_printable_name_internal.

objc:
* objc-act.c: Include intl.h.
(objc_lookup_protocol): Use complete sentences for diagnostics
with %qE for identifiers and translating results of
gen_type_name_0 to locale character set.
(objc_check_decl, check_protocol_recursively,
lookup_and_install_protocols, objc_build_string_object,
objc_get_class_reference, objc_declare_alias, objc_declare_class,
objc_get_class_ivars, error_with_ivar, check_duplicates,
objc_finish_message_expr, objc_build_protocol_expr,
objc_build_selector_expr, build_ivar_reference, objc_add_method,
add_category, add_instance_variable, objc_is_public,
check_methods, check_methods_accessible, check_protocol,
start_class, finish_class, start_protocol, really_start_method,
get_super_receiver, objc_lookup_ivar): Use %E and %qE for
identifiers in diagnostics.  Translate generated text to locale
character set as needed.
(check_protocol, check_protocols): Change name parameter to type
tree.
(lang_report_error_function): Remove.

From-SVN: r147333

15 years agore PR fortran/40018 (ICE in output_constructor)
Paul Thomas [Sun, 10 May 2009 10:22:37 +0000 (10:22 +0000)]
re PR fortran/40018 (ICE in output_constructor)

2009-05-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40018
* trans-array.c (gfc_trans_array_constructor_value): Fold
convert numeric constants.
(gfc_build_constant_array_constructor): The same.

2009-05-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40018
* gfortran.dg/array_constructor_31.f90: New test.

From-SVN: r147332

15 years agore PR fortran/40018 (ICE in output_constructor)
Paul Thomas [Sun, 10 May 2009 10:21:08 +0000 (10:21 +0000)]
re PR fortran/40018 (ICE in output_constructor)

2009-05-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40018
* trans-array.c (gfc_trans_array_constructor_value): Fold
convert numeric constants.
(gfc_build_constant_array_constructor): The same.

2009-05-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40018
* gfortran.dg/array_constructor_31.f90: New test.

From-SVN: r147331

15 years agore PR tree-optimization/40081 (verify_stmts failed with -O2)
Richard Guenther [Sun, 10 May 2009 10:16:01 +0000 (10:16 +0000)]
re PR tree-optimization/40081 (verify_stmts failed with -O2)

2009-05-10  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/40081
* tree-sra.c (instantiate_element): Instantiate scalar replacements
using the main variant of the element type.  Do not fiddle with
TREE_THIS_VOLATILE or TREE_SIDE_EFFECTS.

* g++.dg/torture/pr40081.C: New testcase.

From-SVN: r147330

15 years agore PR fortran/38863 (WHERE with multiple elemental defined assignments gives wrong...
Paul Thomas [Sun, 10 May 2009 07:23:30 +0000 (07:23 +0000)]
re PR fortran/38863 (WHERE with multiple elemental defined assignments gives wrong answer)

2009-05-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/38863
* trans-expr.c (gfc_conv_operator_assign): Remove function.
* trans.h : Remove prototype for gfc_conv_operator_assign.
* trans-stmt.c (gfc_conv_elemental_dependencies): Initialize
derivde types with intent(out).
(gfc_trans_call): Add mask, count1 and invert arguments. Add
code to use mask for WHERE assignments.
(gfc_trans_forall_1): Use new arguments for gfc_trans_call.
(gfc_trans_where_assign): The gfc_symbol argument is replaced
by the corresponding code. If this has a resolved_sym, then
gfc_trans_call is called. The call to gfc_conv_operator_assign
is removed.
(gfc_trans_where_2): Change the last argument in the call to
gfc_trans_where_assign.
* trans-stmt.h : Modify prototype for gfc_trans_call.
* trans.c (gfc_trans_code): Use new args for gfc_trans_call.

2009-05-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/38863
* gfortran.dg/dependency_24.f90: New test.
* gfortran.dg/dependency_23.f90: Clean up module files.

From-SVN: r147329

15 years agore PR fortran/38956 (tests gfortran.dg/chmod_{1,2,3}.f90 fails on i686-pc-cygwin)
David Billinghurst [Sun, 10 May 2009 01:14:50 +0000 (01:14 +0000)]
re PR fortran/38956 (tests gfortran.dg/chmod_{1,2,3}.f90 fails on i686-pc-cygwin)

2009-04-10  David Billinghurst <billingd@gcc.gnu.org>

        PR fortran/38956
        * gfortran.dg/chmod_1.f90: Don't run on *-*-cygwin*.
        * gfortran.dg/chmod_2.f90: Likewise.
        * gfortran.dg/chmod_3.f90: Likewise.
        * gfortran.dg/open_errors.f90: Likewise.

From-SVN: r147326

15 years agoDaily bump.
GCC Administrator [Sun, 10 May 2009 00:16:45 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r147325

15 years agore PR middle-end/40080 (error: missing callgraph edge for call stmt)
Jan Hubicka [Sat, 9 May 2009 20:10:37 +0000 (22:10 +0200)]
re PR middle-end/40080 (error: missing callgraph edge for call stmt)

PR middle-end/40080
* cgraphunit.c (cgraph_materialize_all_clones): Do not redirect
indirect calls; verify cgraph afterwards.

From-SVN: r147320

15 years agore PR bootstrap/40082 (Power bootstrap is broken in building libstdc++)
Jan Hubicka [Sat, 9 May 2009 18:31:32 +0000 (20:31 +0200)]
re PR bootstrap/40082 (Power bootstrap is broken in building libstdc++)

PR bootstrap/40082
* ipa.c (update_inlined_to_pointer): New function.
(cgraph_remove_unreachable_nodes): Use it.

From-SVN: r147319

15 years agotree-eh.c (struct leh_state): Remove prev_try.
Jan Hubicka [Sat, 9 May 2009 15:00:25 +0000 (17:00 +0200)]
tree-eh.c (struct leh_state): Remove prev_try.

* tree-eh.c (struct leh_state): Remove prev_try.
(lower_try_finally, lower_catch, lower_eh_filter, lower_cleanup): Do
not track prev_try.
* except.c (gen_eh_region_cleanup, duplicate_eh_regions,
copy_eh_region_1, copy_eh_region, redirect_eh_edge_to_label,
remove_eh_handler_and_replace, foreach_reachable_handler,
verify_eh_region, verify_eh_tree): Remove tracking of prev_try pointer.
* except.h (struct eh_region): Remove eh_region_u_cleanup.
(gen_eh_region_cleanup): Update prototype.

From-SVN: r147318

15 years agore PR middle-end/40043 (ICE with nested try/catch)
Jan Hubicka [Sat, 9 May 2009 10:52:24 +0000 (12:52 +0200)]
re PR middle-end/40043 (ICE with nested try/catch)

* g++.dg/eh/nested-try.C: New test.

PR middle-end/40043
* except.c (copy_eh_region): Always set prev_try.
(redirect_eh_edge_to_label): Find outer try.
(foreach_reachable_handler): When looking for prev try
handle case where previous try is not going to be taken.

From-SVN: r147317

15 years agoFix even more formatting.
Uros Bizjak [Sat, 9 May 2009 07:37:38 +0000 (09:37 +0200)]
Fix even more formatting.

From-SVN: r147315

15 years agoFix more formatting
Eric Botcazou [Sat, 9 May 2009 06:51:31 +0000 (06:51 +0000)]
Fix more formatting

From-SVN: r147314

15 years agoFix formatting
Eric Botcazou [Sat, 9 May 2009 06:47:29 +0000 (06:47 +0000)]
Fix formatting

From-SVN: r147313

15 years agoDaily bump.
GCC Administrator [Sat, 9 May 2009 00:16:39 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r147304

15 years agoUpdate test to use __BIGGEST_ALIGNMENT__
Michael Meissner [Fri, 8 May 2009 23:02:35 +0000 (23:02 +0000)]
Update test to use __BIGGEST_ALIGNMENT__

From-SVN: r147299

15 years agoFix PR 40049
Michael Meissner [Fri, 8 May 2009 22:38:49 +0000 (22:38 +0000)]
Fix PR 40049

From-SVN: r147298

15 years agofold-const.c (fold_binary): Do not fold multiplication by 1 or -1 for complex floatin...
Joseph Myers [Fri, 8 May 2009 20:58:26 +0000 (21:58 +0100)]
fold-const.c (fold_binary): Do not fold multiplication by 1 or -1 for complex floating-point types if...

* fold-const.c (fold_binary): Do not fold multiplication by 1 or
-1 for complex floating-point types if honoring signed zeros.

testsuite:
* gcc.dg/torture/complex-sign-mul-minus-one.c,
gcc.dg/torture/complex-sign-mul-one.c: New tests.

From-SVN: r147295

15 years agocgraphbuild.c (compute_call_stmt_bb_frequency): Accept function argument; handle...
Jan Hubicka [Fri, 8 May 2009 19:19:51 +0000 (21:19 +0200)]
cgraphbuild.c (compute_call_stmt_bb_frequency): Accept function argument; handle correctly when profile is absent.

* cgraphbuild.c (compute_call_stmt_bb_frequency): Accept function argument;
handle correctly when profile is absent.
(build_cgraph_edges): Update.
(rebuild_cgraph_edges): Update.
* cgraph.c: Do not include varrau.h
(cgraph_set_call_stmt_including_clones, cgraph_create_edge_including_clones):
New function
(cgraph_update_edges_for_call_stmt_node): New stati cfunction.
(cgraph_update_edges_for_call_stmt): Handle clones.
(cgraph_remove_node): Handle clone tree.
(cgraph_remove_node_and_inline_clones): New function.
(dump_cgraph_node): Dump clone tree.
(cgraph_clone_node): Handle clone tree.
(clone_function_name): Bring here from tree-inline.c
(cgraph_create_virtual_clone): New function.
* cgraph.h (ipa_replace_map): Move ehre from ipa.h
(cgraph_clone_info): New function
(strut cgraph_node): Add clone_info and new clone tree pointers.
(cgraph_remove_node_and_inline_clones, cgraph_set_call_stmt_including_clones,
cgraph_create_edge_including_clones, cgraph_create_virtual_clone): Declare.
(cgraph_function_versioning): Use VEC argument.
(compute_call_stmt_bb_frequency): Update prototype.
(cgraph_materialize_all_clones): New function.
* ipa-cp.c (ipcp_update_cloned_node): Remove.
(ipcp_create_replace_map): Update to VECtors.
(ipcp_update_callgraph): Use virtual clones.
(ipcp_update_bb_counts, ipcp_update_edges_counts): Remove.
(ipcp_update_profiling): Do not update local profiling.
(ipcp_insert_stage): Use VECtors and virtual clones.
* cgraphunit.c (verify_cgraph_node): Verify clone tree.
(clone_of_p): New function.
(cgraph_preserve_function_body_p): Use clone tree.
(cgraph_optimize): Materialize clones.
(cgraph_function_versioning): Update for VECtors.
(save_inline_function_body): Use clone tree.
(cgraph_materialize_clone, cgraph_materialize_all_clones): New functions.
* ipa-inline.c (cgraph_default_inline_p): Use analyzed flags.
* ipa.c: Include gimple.h.
(cgraph_remove_unreachable_nodes): Use clone tree.
* ipa-prop.c (ipa_note_param_call): Update call of compute_call_stmt_bb_frequency.
* ipa-prop.h (ipa_replace_map): Move to cgraph.h.
* tree-inline.c: Do not include varray.h; do not include gt-tree-inline.h
(copy_bb): Handle updating of clone tree; add new edge when new call
appears.
(expand_call_inline): Be strict about every call having edge.
(clone_fn_id_num, clone_function_name): Move to cgraph.c.
(delete_unreachable_blocks_update_callgraph): New function.
(tree_function_versioning): Use VECtors; always remove unreachable blocks
and fold conditionals.
* tree-inline.h: Do not include varray.h
(tree_function_versioning): Remove.
* Makefile.in (GTFILES): Remove tree-inline.c
* passes.c (do_per_function): Do only functions having body.
* ipa-struct-reorg.c (do_reorg_1, collect_data_accesses): Handle cone tree.

From-SVN: r147294

15 years agore PR c/36892 (Support __attribute__((deprecated("text string"))))
H.J. Lu [Fri, 8 May 2009 18:44:50 +0000 (11:44 -0700)]
re PR c/36892 (Support __attribute__((deprecated("text string"))))

gcc/

2009-05-08  H.J. Lu  <hongjiu.lu@intel.com>
    Andrew Morrow  <acm@google.com>

PR c/36892
* c-common.c (c_common_attribute_table): Permit deprecated
attribute to take an optional argument.
(handle_deprecated_attribute): If the optional argument to
__attribute__((deprecated)) is not a string ignore the attribute
and emit a warning.

* c-decl.c (grokdeclarator): Updated warn_deprecated_use call.
* c-typeck.c (build_component_ref): Likewise.
(build_external_ref): Likewise.

* toplev.c (warn_deprecated_use): Add an attribute argument.
Emit the message associated with __attribute__((deprecated)).

* toplev.h (warn_deprecated_use): Updated.

* doc/extend.texi: Document new optional parameter to
__attribute__((deprecated))

gcc/cp/

2009-05-08  H.J. Lu  <hongjiu.lu@intel.com>

PR c/36892
* call.c (build_call_a): Updated warn_deprecated_use call.
(build_over_call): Likewise.
* decl.c (grokdeclarator): Likewise.
(grokparms): Likewise.
* semantics.c (finish_id_expression): Likewise.
* typeck.c (build_class_member_access_expr): Likewise.
(finish_class_member_access_expr): Likewise.

gcc/testsuite/

2009-05-08  H.J. Lu  <hongjiu.lu@intel.com>

PR c/36892
* g++.dg/warn/deprecated-6.C: New.
* gcc.dg/deprecated-4.c: Likewise.
* gcc.dg/deprecated-5.c: Likewise.
* gcc.dg/deprecated-6.c: Likewise.

From-SVN: r147293

15 years agoFix bug in movdf_softfloat32.
Michael Eager [Fri, 8 May 2009 16:18:16 +0000 (16:18 +0000)]
Fix bug in movdf_softfloat32.

From-SVN: r147290

15 years agono-vfa-vect-37.c: Replace __aligned__(16) with __aligned__(__BIGGEST_ALIGNMENT__).
H.J. Lu [Fri, 8 May 2009 13:39:01 +0000 (13:39 +0000)]
no-vfa-vect-37.c: Replace __aligned__(16) with __aligned__(__BIGGEST_ALIGNMENT__).

2009-05-08  H.J. Lu  <hongjiu.lu@intel.com>

* gcc.dg/vect/no-vfa-vect-37.c: Replace __aligned__(16) with
__aligned__(__BIGGEST_ALIGNMENT__).
* gcc.dg/vect/no-vfa-vect-43.c: Likewise.
* gcc.dg/vect/no-vfa-vect-49.c: Likewise.
* gcc.dg/vect/no-vfa-vect-53.c: Likewise.
* gcc.dg/vect/no-vfa-vect-57.c: Likewise.
* gcc.dg/vect/no-vfa-vect-61.c: Likewise.
* gcc.dg/vect/no-vfa-vect-79.c: Likewise.
* gcc.dg/vect/Os-vect-95.c: Likewise.
* gcc.dg/vect/pr20122.c: Likewise.
* gcc.dg/vect/pr36493.c: Likewise.
* gcc.dg/vect/pr37385.c: Likewise.
* gcc.dg/vect/slp-7.c: Likewise.
* gcc.dg/vect/slp-9.c: Likewise.
* gcc.dg/vect/slp-widen-mult-s16.c: Likewise.
* gcc.dg/vect/slp-widen-mult-u8.c: Likewise.
* gcc.dg/vect/vect-35.c: Likewise.
* gcc.dg/vect/vect-40.c: Likewise.
* gcc.dg/vect/vect-42.c: Likewise.
* gcc.dg/vect/vect-44.c: Likewise.
* gcc.dg/vect/vect-46.c: Likewise.
* gcc.dg/vect/vect-48.c: Likewise.
* gcc.dg/vect/vect-52.c: Likewise.
* gcc.dg/vect/vect-54.c: Likewise.
* gcc.dg/vect/vect-56.c: Likewise.
* gcc.dg/vect/vect-58.c: Likewise.
* gcc.dg/vect/vect-60.c: Likewise.
* gcc.dg/vect/vect-74.c: Likewise.
* gcc.dg/vect/vect-75.c: Likewise.
* gcc.dg/vect/vect-76.c: Likewise.
* gcc.dg/vect/vect-77-alignchecks.c: Likewise.
* gcc.dg/vect/vect-77.c: Likewise.
* gcc.dg/vect/vect-77-global.c: Likewise.
* gcc.dg/vect/vect-78-alignchecks.c: Likewise.
* gcc.dg/vect/vect-78.c: Likewise.
* gcc.dg/vect/vect-78-global.c: Likewise.
* gcc.dg/vect/vect-80.c: Likewise.
* gcc.dg/vect/vect-85.c: Likewise.
* gcc.dg/vect/vect-87.c: Likewise.
* gcc.dg/vect/vect-88.c: Likewise.
* gcc.dg/vect/vect-92.c: Likewise.
* gcc.dg/vect/vect-93.c: Likewise.
* gcc.dg/vect/vect-95.c: Likewise.
* gcc.dg/vect/vect-97.c: Likewise.
* gcc.dg/vect/vect-complex-1.c: Likewise.
* gcc.dg/vect/vect-complex-4.c: Likewise.
* gcc.dg/vect/vect-complex-5.c: Likewise.
* gcc.dg/vect/vect-multitypes-10.c: Likewise.
* gcc.dg/vect/vect-multitypes-11.c: Likewise.
* gcc.dg/vect/vect-multitypes-12.c: Likewise.
* gcc.dg/vect/vect-multitypes-13.c: Likewise.
* gcc.dg/vect/vect-multitypes-14.c: Likewise.
* gcc.dg/vect/vect-multitypes-15.c: Likewise.
* gcc.dg/vect/vect-multitypes-16.c: Likewise.
* gcc.dg/vect/vect-multitypes-17.c: Likewise.
* gcc.dg/vect/vect-multitypes-3.c: Likewise.
* gcc.dg/vect/vect-multitypes-6.c: Likewise.
* gcc.dg/vect/vect-multitypes-7.c: Likewise.
* gcc.dg/vect/vect-multitypes-8.c: Likewise.
* gcc.dg/vect/vect-multitypes-9.c: Likewise.
* gcc.dg/vect/vect-outer-1a.c: Likewise.
* gcc.dg/vect/vect-outer-1.c: Likewise.
* gcc.dg/vect/vect-outer-2a.c: Likewise.
* gcc.dg/vect/vect-outer-2b.c: Likewise.
* gcc.dg/vect/vect-outer-2.c: Likewise.
* gcc.dg/vect/vect-outer-2c.c: Likewise.
* gcc.dg/vect/vect-outer-2d.c: Likewise.
* gcc.dg/vect/vect-outer-3a.c: Likewise.
* gcc.dg/vect/vect-outer-3b.c: Likewise.
* gcc.dg/vect/vect-outer-3.c: Likewise.
* gcc.dg/vect/vect-outer-3c.c: Likewise.
* gcc.dg/vect/vect-outer-5.c: Likewise.
* gcc.dg/vect/vect-outer-6.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s16a.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s16b.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s8a.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s8b.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-s8c.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-u16a.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-u16b.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-u8a.c: Likewise.
* gcc.dg/vect/vect-reduc-dot-u8b.c: Likewise.
* gcc.dg/vect/vect-widen-mult-s16.c: Likewise.
* gcc.dg/vect/vect-widen-mult-s8.c: Likewise.
* gcc.dg/vect/vect-widen-mult-u16.c: Likewise.
* gcc.dg/vect/vect-widen-mult-u8.c: Likewise.
* gcc.dg/vect/wrapv-vect-reduc-dot-s8b.c: Likewise.

From-SVN: r147286

15 years agore PR tree-optimization/40062 (high memory usage and compile time in SCEV cprop with...
Richard Guenther [Fri, 8 May 2009 12:24:22 +0000 (12:24 +0000)]
re PR tree-optimization/40062 (high memory usage and compile time in SCEV cprop with -O3)

2009-05-08  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/40062
* tree-scalar-evolution.c (follow_ssa_edge_in_condition_phi):
Avoid exponential behavior.

From-SVN: r147283

15 years agore PR rtl-optimization/33928 (30% performance slowdown in floating-point code caused...
Paolo Bonzini [Fri, 8 May 2009 12:22:30 +0000 (12:22 +0000)]
re PR rtl-optimization/33928 (30% performance slowdown in floating-point code caused by  r118475)

2009-05-08  Paolo Bonzini  <bonzini@gnu.org>

PR rtl-optimization/33928
PR 26854
* fwprop.c (use_def_ref, get_def_for_use, bitmap_only_bit_bitween,
process_uses, build_single_def_use_links): New.
(update_df): Update use_def_ref.
(forward_propagate_into): Use get_def_for_use instead of use-def
chains.
(fwprop_init): Call build_single_def_use_links and let it initialize
dataflow.
(fwprop_done): Free use_def_ref.
(fwprop_addr): Eliminate duplicate call to df_set_flags.
* df-problems.c (df_rd_simulate_artificial_defs_at_top,
df_rd_simulate_one_insn): New.
(df_rd_bb_local_compute_process_def): Update head comment.
(df_chain_create_bb): Use the new RD simulation functions.
* df.h (df_rd_simulate_artificial_defs_at_top,
df_rd_simulate_one_insn): New.
* opts.c (decode_options): Enable fwprop at -O1.
* doc/invoke.texi (-fforward-propagate): Document this.

From-SVN: r147282

15 years agore PR c/24581 (Complex arithmetic on special cases is incorrect.)
Joseph Myers [Fri, 8 May 2009 10:22:08 +0000 (11:22 +0100)]
re PR c/24581 (Complex arithmetic on special cases is incorrect.)

PR c/24581
* c-typeck.c (build_binary_op): Handle arithmetic between one real
and one complex operand specially.
* tree-complex.c (some_nonzerop): Do not identify a real value as
zero if flag_signed_zeros.

testsuite:
* gcc.dg/torture/complex-sign.h: New header.
* gcc.dg/torture/complex-sign-add.c,
gcc.dg/torture/complex-sign-mixed-add.c,
gcc.dg/torture/complex-sign-mixed-div.c,
gcc.dg/torture/complex-sign-mixed-mul.c,
gcc.dg/torture/complex-sign-mixed-sub.c,
gcc.dg/torture/complex-sign-mul.c,
gcc.dg/torture/complex-sign-sub.c: New tests.

From-SVN: r147281