OSDN Git Service

11 years ago2009-05-06 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 6 May 2009 09:00:34 +0000 (09:00 +0000)]
2009-05-06  Paolo Carlini  <paolo.carlini@oracle.com>

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

* acinclude.m4 ([GLIBCXX_ENABLE_ATOMIC_BUILTINS]): Do link tests when
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147154 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-06 Thomas Quinot <quinot@adacore.com>
charlet [Wed, 6 May 2009 08:29:29 +0000 (08:29 +0000)]
2009-05-06  Thomas Quinot  <quinot@adacore.com>

* sem_ch3.adb (Access_Type_Declaration): An access type whose
designated type is a limited view from a limited with clause (flagged
From_With_Type) is not itself such a limited view.

2009-05-06  Emmanuel Briot  <briot@adacore.com>

* prj-nmsc.adb: Remove unused variable.

* clean.adb, gnatcmd.adb, makeutl.ads, prj-pars.adb, prj-pars.ads,
prj-proc.ads, prj.ads, switch-m.adb (Subdirs_Option): Moved to
makeutl.ads, since not all users of prj.ads need this.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147152 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-06 Javier Miranda <miranda@adacore.com>
charlet [Wed, 6 May 2009 08:28:40 +0000 (08:28 +0000)]
2009-05-06  Javier Miranda  <miranda@adacore.com>

* exp_aggr.adb (Build_Record_Aggr_Code): Add implicit call to the C++
constructor in case of aggregates whose type is a CPP_Class type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147151 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-06 Robert Dewar <dewar@adacore.com>
charlet [Wed, 6 May 2009 08:23:58 +0000 (08:23 +0000)]
2009-05-06  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb: Minor comment additions

* osint.adb: Minor reformatting

2009-05-06  Pascal Obry  <obry@adacore.com>

* initialize.c: On Windows, keep full pathname to expanded command
line patterns.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147150 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-06 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 6 May 2009 08:20:13 +0000 (08:20 +0000)]
2009-05-06  Ed Schonberg  <schonberg@adacore.com>

* sem_aggr.adb (Resolve_Record_Aggregate): If a defaulted component of
an aggregate with box default is of a discriminated private type, do
not build a subaggregate for it.
A proper call to the initialization procedure is generated for it.

2009-05-06  Thomas Quinot  <quinot@adacore.com>

* rtsfind.adb, rtsfind.ads, exp_dist.adb, exp_dist.ads
(Exp_Dist.Build_TC_Call, Build_From_Any_Call, Build_To_Any_Call):
Use PolyORB strings to represent Ada.Strings.Unbounded_String value;
use standard array code for Standard.String.
(Exp_Dist): Bump PolyORB s-parint API version to 3.
(Rtsfind): New entities TA_Std_String, Unbounded_String.

2009-05-06  Robert Dewar  <dewar@adacore.com>

* g-comlin.ads: Minor reformatting

* xoscons.adb: Minor reformatting

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147149 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-06 Gary Dismukes <dismukes@adacore.com>
charlet [Wed, 6 May 2009 08:11:41 +0000 (08:11 +0000)]
2009-05-06  Gary Dismukes  <dismukes@adacore.com>

* sem_aggr.adb (Resolve_Record_Aggregate): In step 5, get the
Underlying_Type before retrieving the type definition for gathering
components, to account for the case where the type is private.

2009-05-06  Tristan Gingold  <gingold@adacore.com>

* g-comlin.ads: Fix minor typos (Getopt instead of Get_Opt).

2009-05-06  Thomas Quinot  <quinot@adacore.com>

* g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.adb,
g-socthi-vxworks.ads, g-socthi-mingw.adb g-socthi-mingw.ads,
g-socthi.adb, g-stsifd-sockets.adb, g-socthi.ads, g-socket.adb
(GNAT.Sockets.Thin.C_Sendmsg, GNAT.Sockets.Thin.C_Recvmsg,
Windows versions): Fix incorrect base
address of Iovec (it's Msg_Iov, not Msg_Iov'Address).
(GNAT.Sockets.Thin.C_Sendto, GNAT.Sockets.Thin.C_Recvfrom): Use a
System.Address for the To parameter instead of a Sockaddr_In_Access, to
achieve independance from AF_INET family, and also to allow this
parameter to be retrieved from a Msghdr for the Windows case where
these routines are used to implement C_Sendmsg and C_Recvmsg.

2009-05-06  Bob Duff  <duff@adacore.com>

* g-expect.adb, g-expect.ads: Minor reformatting

* sdefault.ads: Minor comment fix

* g-expect-vms.adb: Minor reformatting

* table.ads, table.adb (Append_All): New convenience procedure for
appending a whole array.

* comperr.adb (Compiler_Abort): Mention the -gnatd.n switch in the bug
box message. Call Osint.Dump_Source_File_Names to print out the file
list, instead of rummaging around in various data structures.

* debug.adb: New switch -gnatd.n, to print source file names as they
are read.

* alloc.ads: Add parameters for Osint.File_Name_Chars.

* osint.ads, osint.adb (Dump_Source_File_Names): New procedure to print
out source file names during a "bug box".
(Include_Dir_Default_Prefix): Use memo-izing to avoid repeated new/free.
(Read_Source_File): Print out the file name, if requested via -gnatd.n.
If it's not part of the runtimes, store it for later printing by

2009-05-06  Javier Miranda  <miranda@adacore.com>

* gnat_rm.texi (CPP_Constructor): Avoid duplication of the
documentation and add reference to the GNAT user guide for further

2009-05-06  Javier Miranda  <miranda@adacore.com>

* gnat_ugn.texi: Complete documentation for CPP_Constructor and remove
also wrong examples that use extension aggregates.

2009-05-06  Albert Lee  <lee@adacore.com>

* s-oscons-tmplt.c (System.OS_Constants): Do not use special definition
of Msg_Iovlen_T for VMS.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147148 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Wed, 6 May 2009 00:16:48 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147143 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-05 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Tue, 5 May 2009 21:32:38 +0000 (21:32 +0000)]
2009-05-05  Jonathan Wakely  <jwakely.gcc@gmail.com>

PR libstdc++/39909
* include/std/mutex (__get_once_functor_lock, __get_once_mutex,
__set_once_functor_lock_ptr): Replace global lock object with local
locks on global mutex.
* src/mutex.cc (__get_once_functor_lock, __get_once_mutex,
__set_once_functor_lock_ptr): Likewise, keeping old function to
preserve ABI.
(__once_proxy): Use pointer to local lock if set, global lock
* config/abi/pre/gnu.ver: Add new symbols to new ABI version.
* testsuite/util/testsuite_abi.cc: Add GLIBCX_3.4.12 version.
* testsuite/30_threads/call_once/39909.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147137 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR middle-end/39666
jakub [Tue, 5 May 2009 21:09:16 +0000 (21:09 +0000)]
PR middle-end/39666
* gimplify.c (gimplify_switch_expr): If case labels cover the whole
range of the type, but default label is missing, add it with one
of the existing labels instead of adding a new label for it.

* gcc.dg/pr39666-1.c: New test.
* gcc.dg/pr39666-2.c: Likewise.
* g++.dg/warn/Wuninitialized-4.C: Likewise.
* g++.dg/warn/Wuninitialized-5.C: Likewise.
* gfortran.dg/pr39666-1.f90: Likewise.
* gfortran.dg/pr39666-2.f90: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147136 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * tree.h: Remove DECL_BY_REFERENCE from private_flag comment.
jakub [Tue, 5 May 2009 21:07:05 +0000 (21:07 +0000)]
* tree.h: Remove DECL_BY_REFERENCE from private_flag comment.
(struct tree_base): Adjust spacing for 8 bit boundaries.
(struct tree_decl_common): Add decl_by_reference_flag bit.
* print-tree.c (print_node): For VAR_DECL, PARM_DECL or RESULT_DECL,
* dbxout.c (DECL_ACCESSIBILITY_CHAR): Revert last change.
* dwarf2out.c (loc_by_reference, gen_decl_die): Check
DECL_BY_REFERENCE for all VAR_DECLs, not just non-static ones.
(gen_variable_die): Likewise.  Check TREE_PRIVATE/TREE_PROTECTED

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147135 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcc.target/mips/mips.exp: Add -mtune= to mips_option_groups.
nemet [Tue, 5 May 2009 20:54:06 +0000 (20:54 +0000)]
* gcc.target/mips/mips.exp: Add -mtune= to mips_option_groups.
* gcc.target/mips/dspr2-MULT.c: Pass -mtune=74kc
* gcc.target/mips/dspr2-MULTU.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147134 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-05 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 5 May 2009 20:41:00 +0000 (20:41 +0000)]
2009-05-05  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39998
* expr.c (gfc_check_pointer_assign): Check for statement functions and
internal procedures in procedure pointer assignments.

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

PR fortran/39998
* gfortran.dg/proc_ptr_17.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147133 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-05 Shujing Zhao <pearly.zhao@oracle.com>
paolo [Tue, 5 May 2009 20:29:40 +0000 (20:29 +0000)]
2009-05-05  Shujing Zhao  <pearly.zhao@oracle.com>

* cp-tree.h:
        (opname_tab, assignop_tab, update_member_visibility, yyerror, yyhook,
        mangle_compound_literal): Remove unused declarations.
        (build_vfield_ref, cxx_print_statistics, clone_function_decl,
        adjust_clone_args, maybe_push_cleanup_level, pushtag, make_anon_name,
        pushdecl_top_level_maybe_friend, pushdecl_top_level_and_finish,
        check_for_out_of_scope_variable, print_other_binding_stack,
        maybe_push_decl, cxx_mark_addressable, force_target_expr,
        build_target_expr_with_type, finish_case_label,
        cxx_maybe_build_cleanup, begin_eh_spec_block, finish_eh_spec_block,
        check_template_keyword, cxx_omp_predetermined_sharing,
        cxx_omp_clause_default_ctor, cxx_omp_clause_copy_ctor,
        cxx_omp_clause_assign_op, cxx_omp_clause_dtor, cxx_omp_finish_clause,
        cxx_omp_privatize_by_reference): Rearrange the declarations line to
        match the comment that indicates the .c file which the functions are
        (cxx_print_xnode, cxx_print_decl, cxx_print_type,
        cxx_print_identifier, cxx_print_error_function, pushdecl): Add comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147132 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * dwarf.h: Remove.
jsm28 [Tue, 5 May 2009 20:15:30 +0000 (20:15 +0000)]
* dwarf.h: Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147131 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-05 Rafael Avila de Espindola <espindola@google.com>
espindola [Tue, 5 May 2009 19:14:20 +0000 (19:14 +0000)]
2009-05-05  Rafael Avila de Espindola  <espindola@google.com>

* Makefile.in (enable_plugin, plugin_includedir): New.
(install): Depend on install-plugin.
(install-plugin): New.
* config.gcc: Add vxworks-dummy.h to tm_file for x86 and x86-64.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147130 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-05 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 5 May 2009 16:09:46 +0000 (16:09 +0000)]
2009-05-05  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/40022
* tree-ssa-phiprop.c (struct phiprop_d): Exchange vop_stmt for
the only vuse.
(phivn_valid_p): Fix tuplification error, simplify.
(phiprop_insert_phi): Add dumps.
(propagate_with_phi): Simplify.

* gcc.c-torture/execute/pr40022.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147128 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-05 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 5 May 2009 16:08:24 +0000 (16:08 +0000)]
2009-05-05  Richard Guenther  <rguenther@suse.de>

PR middle-end/40023
* builtins.c (gimplify_va_arg_expr): Properly build the

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147127 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago cp/
nathan [Tue, 5 May 2009 13:00:03 +0000 (13:00 +0000)]
* typeck.c (cp_build_compound_expr): Require RHS to have a known
* class.c (resolve_address_of_overloaded_function): Use
OVL_CURRENT for error message.
(instantiate_type): Forbid COMPOUND_EXPRs and remove code dealing
with them.  Do not copy the node.

* g++.old-deja/g++.other/overload11.C: Adjust expected errors.
* g++.dg/template/overload9.C: Likewise.
* g++.dg/ext/ms-1.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147125 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-05 Shujing Zhao <pearly.zhao@oracle.com>
paolo [Tue, 5 May 2009 10:06:52 +0000 (10:06 +0000)]
2009-05-05  Shujing Zhao  <pearly.zhao@oracle.com>

* tree.h (strip_float_extensions): Remove duplicate declaration.
       (build_low_bits_mask, debug_fold_checksum, expand_function_end,
       expand_function_start, stack_protect_prologue, stack_protect_epilogue,
       block_ultimate_origin): Rearrange the declarations line to match the
       comment that indicates the .c file which the functions are defined.
       (dwarf2out_*, set_decl_rtl): Add comment.
       (get_base_address): Adjust comment.
       (change_decl_assembler_name, maybe_fold_*, build_addr): Rearrange the
       declarations line and add comment.
       (is_builtin_name): Add blank after function name, for clarity.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147122 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR c++/40013
jakub [Tue, 5 May 2009 06:37:05 +0000 (06:37 +0000)]
PR c++/40013
* pt.c (tsubst): If magic NOP_EXPR with side-effects has no type,
set it from its operand's type after tsubst_expr.

* g++.dg/ext/vla7.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147119 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Tue, 5 May 2009 00:16:43 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147115 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * attribs.c (decl_attributes): Use %qE for identifiers in
jsm28 [Mon, 4 May 2009 23:44:36 +0000 (23:44 +0000)]
* attribs.c (decl_attributes): Use %qE for identifiers in
* cgraphunit.c (verify_cgraph_node): Translate function names to
locale character set in diagnostics.
* coverage.c (get_coverage_counts): Use %qE for identifiers in
* doc/invoke.texi (-finstrument-functions-exclude-function-list):
Document that functions are named in UTF-8.
* expr.c (expand_expr_real_1): Translate function names to locale
character set in diagnostics.
* gimplify.c (omp_notice_variable, omp_is_private,
gimplify_scan_omp_clauses): Use %qE for identifiers in
* langhooks.c (lhd_print_error_function): Translate function names
to locale character set.
* langhooks.h (decl_printable_name): Document that return value is
in internal character set.
* stmt.c: Include pretty-print.h
(tree_conflicts_with_clobbers_p): Use %qE for identifiers in
(resolve_operand_name_1): Translate named operand name to locale
character set.
* stor-layout.c (finalize_record_size): Use %qE for identifiers in
* toplev.c (announce_function): Translate function names to locale
character set.
(warn_deprecated_use): Use %qE for identifiers in diagnostics.
(default_tree_printer): Use pp_identifier or translate identifiers
to locale character set.  Mark "<anonymous>" for translation.
* tree-mudflap.c (mx_register_decls, mudflap_finish_file): Use %qE
for identifiers in diagnostics.
* tree.c (handle_dll_attribute): Use %qE for identifiers in
* varasm.c (output_constructor): Use %qE for identifiers in

* gcc.dg/ucnid-11.c, gcc.dg/ucnid-12.c, gcc.dg/ucnid-13.c: New

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147111 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-04 Rafael Avila de Espindola <espindola@google.com>
espindola [Mon, 4 May 2009 22:08:44 +0000 (22:08 +0000)]
2009-05-04  Rafael Avila de Espindola  <espindola@google.com>

* configure.ac: use ` ` instead of $()
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147110 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/pa/linux-atomic.c: Eliminate conditional include of
bje [Mon, 4 May 2009 21:34:41 +0000 (21:34 +0000)]
* config/pa/linux-atomic.c: Eliminate conditional include of
errno.h on non-LP64 systems to simplify build requirements.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147109 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * c-common.c (handle_mode_attribute): Use %qE for identifiers in
jsm28 [Mon, 4 May 2009 20:24:22 +0000 (20:24 +0000)]
* c-common.c (handle_mode_attribute): Use %qE for identifiers in
* c-decl.c (check_bitfield_type_and_width): Make orig_name a tree
and pass value to identifier_to_locale.
(warn_variable_length_array): Make name a tree.
(grokdeclarator): Separate diagnostic texts for named and unnamed
declarators.  Use %qE for named declarators.
* c-parser.c (c_lex_one_token): Use %qE for identifiers in
* c-pragma.c (pop_alignment, handle_pragma_pack): Use %qE for
identifiers in diagnostics.
* c-typeck.c (push_member_name, start_init): Pass identifiers to
identifier_to_locale.  Mark "anonymous" strings for translation.

* gcc.dg/ucnid-8.c, gcc.dg/ucnid-9.c, gcc.dg/ucnid-10.c: New
* gcc.dg/declspec-9.c, gcc.dg/declspec-10.c, gcc.dg/declspec-11.c:
Update expected errors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147108 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAllow address for DImode/DFmode only if double-precision FP regs.
eager [Mon, 4 May 2009 15:57:46 +0000 (15:57 +0000)]
Allow address for DImode/DFmode only if double-precision FP regs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147105 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAdd TARGET_SINGLE_FLOAT check.
eager [Mon, 4 May 2009 15:48:59 +0000 (15:48 +0000)]

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147104 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-04 Laurent GUERBY <laurent@guerby.net>
guerby [Mon, 4 May 2009 15:32:00 +0000 (15:32 +0000)]
2009-05-04   Laurent GUERBY  <laurent@guerby.net>

PR ada/38874
* make.adb (Scan_Make_Arg): Pass --param= to compiler and linker.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147102 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAdd CPP_SPEC for -mxilinx-fpu.
eager [Mon, 4 May 2009 15:22:22 +0000 (15:22 +0000)]
Add CPP_SPEC for -mxilinx-fpu.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147101 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoAdd t-xilinx for powerpc-xilinx-eabi*.
eager [Mon, 4 May 2009 15:16:20 +0000 (15:16 +0000)]
Add t-xilinx for powerpc-xilinx-eabi*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147100 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-04 Paolo Bonzini <bonzini@gnu.org>
bonzini [Mon, 4 May 2009 12:52:41 +0000 (12:52 +0000)]
2009-05-04  Paolo Bonzini  <bonzini@gnu.org>

  * doc/tm.texi (LEGITIMIZE_ADDRESS): Revise documentation.
* gcc/defaults.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/explow.c (memory_address): Use target hook.
* gcc/targhooks.c (default_legitimize_address): New.
* gcc/targhooks.h (default_legitimize_address): New.
* gcc/target.h (legitimize_address): New.
* gcc/target-def.h (TARGET_LEGITIMIZE_ADDRESS): New.
* gcc/system.h (LEGITIMIZE_ADDRESS): Poison.

* config/bfin/bfin-protos.h (legitimize_address): Remove.
* config/bfin/bfin.c (legitimize_address): Remove.
* config/bfin/bfin.h (LEGITIMIZE_ADDRESS): Remove.
* config/m68hc11/m68hc11-protos.h (m68hc11_legitimize_address): Remove.
* config/m68hc11/m68hc11.c (m68hc11_legitimize_address): Remove.
* config/m68hc11/m68hc11.h (LEGITIMIZE_ADDRESS): Remove.

* gcc/config/s390/s390.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/m32c/m32c.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/sparc/sparc.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/m32r/m32r.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/i386/i386.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/sh/sh.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/avr/avr.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/m68hc11/m68hc11.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/iq2000/iq2000.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/mn10300/mn10300.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/m68k/m68k.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/score/score.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/pa/pa.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/mips/mips.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/alpha/alpha.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/frv/frv.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/spu/spu.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/xtensa/xtensa.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/cris/cris.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/rs6000/rs6000.h (LEGITIMIZE_ADDRESS): Delete.
* gcc/config/picochip/picochip.h (LEGITIMIZE_ADDRESS): Delete.

* gcc/config/s390/s390-protos.h (legitimize_address): Delete.
* gcc/config/m32c/m32c-protos.h (m32c_legitimize_address): Delete.
* gcc/config/sparc/sparc-protos.h (legitimize_address): Delete.
* gcc/config/i386/i386-protos.h (legitimize_address): Delete.
* gcc/config/avr/avr-protos.h (legitimize_address): Delete.
* gcc/config/mn10300/mn10300-protos.h (legitimize_address): Delete.
* gcc/config/score/score-protos.h (score_legitimize_address): Delete.
* gcc/config/arm/arm-protos.h (arm_legitimize_address,
(thumb_legitimize_address): Delete.
* gcc/config/pa/pa-protos.h (hppa_legitimize_address): Delete.
* gcc/config/mips/mips-protos.h (mips_legitimize_address): Delete.
* gcc/config/alpha/alpha-protos.h (alpha_legitimize_address): Delete.
* gcc/config/frv/frv-protos.h (frv_legitimize_address): Delete.
* gcc/config/spu/spu-protos.h (spu_legitimize_address): Delete.
* gcc/config/xtensa/xtensa-protos.h (xtensa_legitimize_address): Delete.
* gcc/config/rs6000/rs6000-protos.h (rs6000_legitimize_address): Delete.

* config/arm/arm.c (arm_legitimize_address): Maybe call Thumb version.
* config/m32c/m32c.c (m32c_legitimize_address): Standardize.
* config/m32r/m32r.c (m32r_legitimize_address): New.
* config/m68k/m68k.c (m68k_legitimize_address): New.
* config/score/score.c (score_legitimize_address): Standardize.
* config/score/score3.c (score3_legitimize_address): Standardize.
* config/score/score3.h (score3_legitimize_address): Adjust.
* config/score/score7.c (score7_legitimize_address): Standardize.
* config/score/score7.h (score7_legitimize_address): Adjust.
* config/sh/sh.c (sh_legitimize_address): New.
* config/iq2000/iq2000.c (iq2000_legitimize_address): New.

* gcc/config/s390/s390.c (legitimize_address): Rename to...
  (s390_legitimize_address): ... this.
* gcc/config/sparc/sparc.c (legitimize_address): Rename to...
(sparc_legitimize_address): ... this.
* gcc/config/i386/i386.c (legitimize_address): Rename to...
(ix86_legitimize_address): ... this.
* gcc/config/avr/avr.c (legitimize_address): Rename to...
(avr_legitimize_address): ... this.
* gcc/config/mn10300/mn10300.c (legitimize_address): Rename to...
(mn10300_legitimize_address): ... this.
* config/alpha/alpha.c (alpha_legitimize_address): Wrap...
(alpha_legitimize_address_1): ... the old alpha_legitimize_address.
(alpha_expand_mov): Adjust call.

* config/frv/frv.c (frv_legitimize_address): Return x on failure.
* config/spu/spu.c (spu_legitimize_address): Likewise.
* config/xtensa/xtensa.c (xtensa_legitimize_address): Likewise.
* config/rs6000/rs6000.c (rs6000_legitimize_address): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147098 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-04 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
manu [Mon, 4 May 2009 12:47:53 +0000 (12:47 +0000)]
2009-05-04  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR c++/28152
* parser.c (cp_lexer_get_preprocessor_token):  Do not store the
canonical spelling for keywords.
(cp_parser_attribute_list): Use the canonical spelling for
keywords in attributes.
* g++.dg/parse/parser-pr28152.C: New.
* g++.dg/parse/parser-pr28152-2.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147097 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * intl.c (locale_encoding, locale_utf8): New.
jsm28 [Mon, 4 May 2009 12:23:50 +0000 (12:23 +0000)]
* intl.c (locale_encoding, locale_utf8): New.
(gcc_init_libintl): Initialize locale_encoding and locale_utf8.
* intl.h (locale_encoding, locale_utf8): Declare.
* pretty-print.c: Include ggc.h.  Include iconv.h if HAVE_ICONV.
(pp_base_tree_identifier, decode_utf8_char, identifier_to_locale):
* pretty-print.h (pp_identifier): Call identifier_to_locale on ID
(pp_tree_identifier): Define to call pp_base_tree_identifier.
(pp_base_tree_identifier): Declare as function.
(identifier_to_locale): Declare.
* Makefile.in (pretty-print.o): Update dependencies.
* varasm.c (finish_aliases_1): Use %qE for identifiers in

* gcc.dg/attr-alias-5.c, gcc.dg/ucnid-7.c: New tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147096 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-04 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 4 May 2009 11:01:59 +0000 (11:01 +0000)]
2009-05-04  Richard Guenther  <rguenther@suse.de>

PR middle-end/40015
* builtins.c (fold_builtin_memory_op): Do not decay to element
type if the size matches the whole array.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147094 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Mon, 4 May 2009 00:16:50 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147090 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * expmed.c (synth_mult): When trying out a shift, pass the result
kazu [Sun, 3 May 2009 23:31:18 +0000 (23:31 +0000)]
* expmed.c (synth_mult): When trying out a shift, pass the result
of a signed shift.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147087 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * expmed.c (shiftsub_cost): Rename to shiftsub0_cost.
kazu [Sun, 3 May 2009 23:27:10 +0000 (23:27 +0000)]
* expmed.c (shiftsub_cost): Rename to shiftsub0_cost.
(shiftsub1_cost): New.
(init_expmed): Compute shiftsub1_cost.
(synth_mult): Optimize multiplications by constants of the form
-(2^^m-1) for some constant positive integer m.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147086 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcc.target/sparc/fpmul-2.c: Replace final_cleanup with optimized.
ebotcazou [Sun, 3 May 2009 21:10:20 +0000 (21:10 +0000)]
* gcc.target/sparc/fpmul-2.c: Replace final_cleanup with optimized.
* gcc.target/sparc/fexpand-2.c: Likewise.
* gcc.target/sparc/fpmerge-2.c: Likewise.
* gcc.target/sparc/pdist-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147085 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-03 Richard Guenther <rguenther@suse.de>
rguenth [Sun, 3 May 2009 19:57:32 +0000 (19:57 +0000)]
2009-05-03  Richard Guenther  <rguenther@suse.de>

PR c/39983
* c-typeck.c (array_to_pointer_conversion): Do not built
ADDR_EXPRs of arrays of pointer-to-element type.
* c-gimplify.c (c_gimplify_expr): Revert change fixing
up wrong ADDR_EXPRs after-the-fact.
* c-common.c (strict_aliasing_warning): Strip pointer
conversions for obtaining the original type.
* builtins.c (fold_builtin_memset): Handle array types.
(fold_builtin_memory_op): Handle folded POINTER_PLUS_EXPRs
and array types

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147083 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-03 Richard Guenther <rguenther@suse.de>
rguenth [Sun, 3 May 2009 19:55:55 +0000 (19:55 +0000)]
2009-05-03  Richard Guenther  <rguenther@suse.de>

PR middle-end/23329
* tree-ssa.c (useless_type_conversion_p_1): Use get_deref_alias_set.
Do not lose casts from array types with unknown extent to array
types with known extent.
* tree-ssa-copy.c (may_propagate_copy): Remove hack checking for
alias set compatibility.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147082 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-03 Manuel López-Ibáñez <manu@gcc.gnu.org>
manu [Sun, 3 May 2009 19:14:06 +0000 (19:14 +0000)]
2009-05-03  Manuel López-Ibáñez  <manu@gcc.gnu.org>

* flags.h (extra_warnings): Delete.
* toplev.c (process_options): Handle Wuninitialized here.
* opts.c (extra_warnings): Delete.
(set_Wextra): Delete.
(common_handle_option): -Wextra can be handled automatically.
* c-opts.c (c_common_handle_option): Delete obsolete code.
(c_common_post_options): Simplify comment.
* common.opt (W): Add Var.
(Wextra): Add Var.
(Wuninitialized): Initialize to -1.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147080 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * expr.c (get_def_for_expr): New function.
nemet [Sun, 3 May 2009 17:20:30 +0000 (17:20 +0000)]
* expr.c (get_def_for_expr): New function.
(expand_expr_real_1) <PLUS_EXPR, MINUS_EXPR>: Adjust to work with
SSA rather than trees.
<MULT_EXPR>: Likewise.  Use subexp0 and subexp1 instead of
TREE_OPERAND (exp, 0) and TREE_OPERAND (exp, 1).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147078 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * include/parallel/settings.h (get): Mark const.
hubicka [Sun, 3 May 2009 16:51:50 +0000 (16:51 +0000)]
* include/parallel/settings.h (get): Mark const.
* libsupc++/unwind-cxx.h (__cxa_call_terminate): Mark throw ().
* libsupc++/eh_call.cc (__cxa_call_terminate): Mark throw ().
* config/io/basic_file_stdio.cc (sys_open, is_open, fd, seekoff): Mark
throw ().
* config/io/basic_file_stdio.h (__basic_file, sys_open): Mark throw ().
(is_open, fd): Mark pure and throw ().
(seekoff): Mark throw ().

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147077 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-03 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sun, 3 May 2009 16:13:59 +0000 (16:13 +0000)]
2009-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

* acinclude.m4 ([GLIBCXX_ENABLE_ATOMIC_BUILTINS]): Do link tests when
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147076 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * c-common.c (reswords): Add _Imaginary.
jsm28 [Sun, 3 May 2009 14:07:41 +0000 (14:07 +0000)]
* c-common.c (reswords): Add _Imaginary.
* c-common.c (enum rid): Add RID_IMAGINARY.

* gcc.dg/c99-complex-3.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147075 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-03 Paolo Bonzini <bonzini@gnu.org>
bonzini [Sun, 3 May 2009 14:03:24 +0000 (14:03 +0000)]
2009-05-03  Paolo Bonzini  <bonzini@gnu.org>

* tree.h (TYPE_VECTOR_OPAQUE): Fix documentation.
Patch by Richard Guenther.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147074 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agolibcpp:
jsm28 [Sun, 3 May 2009 11:59:26 +0000 (11:59 +0000)]
* charset.c (one_utf8_to_cppchar): Correct mask used for 5-byte
UTF-8 sequences.

* gcc.dg/cpp/utf8-5byte-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147073 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * defaults.h (FRAME_POINTER_REQUIRED): Provide default.
aesok [Sun, 3 May 2009 11:25:20 +0000 (11:25 +0000)]
* defaults.h (FRAME_POINTER_REQUIRED): Provide default.
* doc/tm.texi (FRAME_POINTER_REQUIRED): Revise documentation.
* config/alpha/alpha.h (FRAME_POINTER_REQUIRED): Delete.
* config/s390/s390.h (FRAME_POINTER_REQUIRED): Delete.
* config/spu/spu.h (FRAME_POINTER_REQUIRED): Delete.
* config/sh/sh.h (FRAME_POINTER_REQUIRED): Delete.
* config/pdp11/pdp11.h (FRAME_POINTER_REQUIRED): Delete.
* config/stormy16/stormy16.h (FRAME_POINTER_REQUIRED): Delete.
* config/m68hc11/m68hc11.h (FRAME_POINTER_REQUIRED): Delete.
* config/iq2000/iq2000.h (FRAME_POINTER_REQUIRED): Delete.
* config/mn10300/mn10300.h (FRAME_POINTER_REQUIRED): Delete.
* config/ia64/ia64.h (FRAME_POINTER_REQUIRED): Delete.
* config/m68k/m68k.h (FRAME_POINTER_REQUIRED): Delete.
* config/rs6000/rs6000.h (FRAME_POINTER_REQUIRED): Delete.
* config/picochip/picochip.h (FRAME_POINTER_REQUIRED): Delete.
* config/mcore/mcore.h (FRAME_POINTER_REQUIRED): Delete.
* config/h8300/h8300.h (FRAME_POINTER_REQUIRED): Delete.
* config/v850/v850.h (FRAME_POINTER_REQUIRED): Delete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147072 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Sun, 3 May 2009 00:16:41 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147071 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcc.dg/ucnid-6.c: Fix typo in dg-do directive.
jsm28 [Sat, 2 May 2009 23:30:58 +0000 (23:30 +0000)]
* gcc.dg/ucnid-6.c: Fix typo in dg-do directive.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147068 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-02 Richard Guenther <rguenther@suse.de>
rguenth [Sat, 2 May 2009 17:50:21 +0000 (17:50 +0000)]
2009-05-02  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/39940
* tree-ssa-pre.c (eliminate): Make sure we may propagate before
doing so.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147065 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-05-02 Richard Guenther <rguenther@suse.de>
rguenth [Sat, 2 May 2009 17:49:32 +0000 (17:49 +0000)]
2009-05-02  Richard Guenther  <rguenther@suse.de>

PR middle-end/40001
* tree-ssa.c (execute_update_addresses_taken): Properly check
if we can mark a variable DECL_GIMPLE_REG_P.
* gimple.c (is_gimple_reg): Re-order check for DECL_GIMPLE_REG_P
back to the end of the function.
(is_gimple_reg_type): Remove complex type special casing.
* gimplify.c (gimplify_bind_expr): Do not set DECL_GIMPLE_REG_P
if not optimizing.

* gcc.target/spu/pr40001.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147064 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * include/tr1_impl/functional_hash.h (explicit specializations of ()
hubicka [Sat, 2 May 2009 13:22:49 +0000 (13:22 +0000)]
* include/tr1_impl/functional_hash.h (explicit specializations of ()
operator): Mark pure.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147062 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * doc/collect2.texi (Collect2): Document search path behaviour
bje [Sat, 2 May 2009 12:03:05 +0000 (12:03 +0000)]
* doc/collect2.texi (Collect2): Document search path behaviour
when configured with --with-ld.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147058 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * tree-ssa-coalesce.c (coalesce_cost): Do not take ciritical
hubicka [Sat, 2 May 2009 11:00:59 +0000 (11:00 +0000)]
* tree-ssa-coalesce.c (coalesce_cost): Do not take ciritical
parameter; update callers.
(coalesce_cost_edge): EH edges are costier because they needs splitting
even if not critical and even more costier when there are multiple
EH predecestors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147057 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * except.c (remove_eh_handler_and_replace): Handle updating after
hubicka [Sat, 2 May 2009 10:57:07 +0000 (10:57 +0000)]
* except.c (remove_eh_handler_and_replace): Handle updating after
removing TRY blocks.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147055 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * store-motion.c (compute_store_table): Add ENABLE_CHECKING guard.
ebotcazou [Sat, 2 May 2009 09:11:23 +0000 (09:11 +0000)]
* store-motion.c (compute_store_table): Add ENABLE_CHECKING guard.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147054 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * varasm.c: Do not include c-pragma.h
steven [Sat, 2 May 2009 06:43:49 +0000 (06:43 +0000)]
* varasm.c: Do not include c-pragma.h
* attribs.c: Do not incude c-common.h

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147053 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Sat, 2 May 2009 00:16:48 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147052 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * calls.c (initialize_argument_information): Handle SSA names
matz [Fri, 1 May 2009 21:53:15 +0000 (21:53 +0000)]
    * calls.c (initialize_argument_information): Handle SSA names
        like decls with a non MEM_P DECL_RTL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147044 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * ipa-reference.c: Do not include c-common.h, include splay-tree.h.
steven [Fri, 1 May 2009 20:25:26 +0000 (20:25 +0000)]
* ipa-reference.c: Do not include c-common.h, include splay-tree.h.
* ipa-utils.c: Likewise.
* ipa-type-escape.c: Likewise.
* cgraphunit.c Do not include c-common.h.
* ipa-pure-const.c: Likewise.
* tree-if-conv.c: Likewise.
* matrix-reorg.c: Do not include c-common.h and c-tree.h.
* ipa-struct-reorg.c: Likewise.
* tree-nomudflap.c: Likewise.
* tree-ssa-structalias.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147035 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * store-motion.c: Many cleanups to make this pass a first-class
steven [Fri, 1 May 2009 20:22:56 +0000 (20:22 +0000)]
* store-motion.c: Many cleanups to make this pass a first-class
citizen instead of an appendix to gcse load motion.  Add TODO list
to make this pass faster/cleaner/better.

(struct ls_expr): Post gcse.c-split cleanups.
Rename to st_expr.  Rename "loads" field to "antic_stores".  Rename
"stores" field to "avail_stores".
(pre_ldst_mems): Rename to store_motion_mems.
(pre_ldst_table): Rename to store_motion_mems_table.
(pre_ldst_expr_hash): Rename to pre_st_expr_hash, update users.
(pre_ldst_expr_eq): Rename to pre_st_expr_eq, update users.
(ldst_entry): Rename to st_expr_entry, update users.
(free_ldst_entry): Rename to free_st_expr_entry, update users.
(free_ldst_mems): Rename to free_store_motion_mems, update users.
(enumerate_ldsts): Rename to enumerate_store_motion_mems, update caller.
(first_ls_expr): Rename to first_st_expr, update users.
(next_ls_expr): Rename to next_st_expr, update users.
(print_ldst_list): Rename to print_store_motion_mems.  Print names of
fields properly for store motion instead of names inherited from load
motion in gcse.c.
(LAST_AVAIL_CHECK_FAILURE): Explain what this is.  Undefine when we
are done with it.

(ae_kill): Rename to st_kill, update users.
(ae_gen): Rename to st_avloc, update users.
(transp): Rename to st_transp, update users.
(pre_insert_map): Rename to st_insert_map, update users.
(pre_delete_map): Rename to st_delete_map, update users.
(insert_store, build_store_vectors, free_store_memory,
one_store_motion_pass): Update for abovementioned changes.

(gcse_subst_count, gcse_create_count): Remove.
(one_store_motion_pass): New statistics counters "n_stores_deleted"
and "n_stores_created", local variables.

(extract_mentioned_regs, extract_mentioned_regs_1): Rewrite to
use for_each_rtx.

(regvec, compute_store_table_current_insn): Remove.
(reg_set_info, reg_clear_last_set): Remove.
(compute_store_table): Use DF caches instead of local dataflow

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147034 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * c-objc-common.c (c_tree_printer): Print identifiers with
jsm28 [Fri, 1 May 2009 14:09:20 +0000 (14:09 +0000)]
* c-objc-common.c (c_tree_printer): Print identifiers with
pp_identifier, not pp_string.  Mark "({anonymous})" for
* c-pretty-print.c (pp_c_ws_string): New.
(pp_c_cv_qualifier, pp_c_type_specifier,
pp_c_specifier_qualifier_list, pp_c_parameter_type_list,
pp_c_storage_class_specifier, pp_c_function_specifier,
pp_c_attributes, pp_c_bool_constant, pp_c_constant,
pp_c_primary_expression, pp_c_postfix_expression,
pp_c_unary_expression, pp_c_shift_expression,
pp_c_relational_expression, pp_c_equality_expression,
pp_c_logical_and_expression, pp_c_logical_or_expression): Mostly
use pp_string and pp_c_ws_string in place of pp_identifier and
pp_c_identifier for non-identifiers.  Mark English strings for
* c-pretty-print.h (pp_c_ws_string): Declare.

* cxx-pretty-print.c (is_destructor_name, pp_cxx_unqualified_id,
pp_cxx_template_keyword_if_needed, pp_cxx_postfix_expression,
pp_cxx_new_expression, pp_cxx_delete_expression,
pp_cxx_unary_expression, pp_cxx_assignment_operator,
pp_cxx_assignment_expression, pp_cxx_expression,
pp_cxx_function_specifier, pp_cxx_decl_specifier_seq,
pp_cxx_simple_type_specifier, pp_cxx_type_specifier_seq,
pp_cxx_exception_specification, pp_cxx_direct_declarator,
pp_cxx_ctor_initializer, pp_cxx_type_id, pp_cxx_statement,
pp_cxx_namespace_alias_definition, pp_cxx_template_parameter,
pp_cxx_canonical_template_parameter, pp_cxx_template_declaration,
pp_cxx_declaration, pp_cxx_typeid_expression,
pp_cxx_va_arg_expression, pp_cxx_offsetof_expression,
pp_cxx_trait_expression): Mostly use pp_string and
pp_cxx_ws_string in place of pp_identifier and pp_cxx_identifier
for non-identifiers.  Mark English strings for translation.
* cxx-pretty-print.h (pp_cxx_ws_string): Define.
* error.c (dump_template_parameter, dump_template_bindings,
dump_type, dump_aggr_type, dump_type_prefix, dump_simple_decl,
dump_decl, dump_template_decl, dump_function_decl,
dump_parameters, dump_exception_spec, dump_template_parms,
dump_expr, dump_binary_op, dump_unary_op, op_to_string,
assop_to_string, args_to_string, cp_print_error_function,
print_instantiation_partial_context): Mostly use pp_string and
pp_cxx_ws_string in place of pp_identifier and pp_cxx_identifier
for non-identifiers.  Mark English strings for translation.
(dump_global_iord): Mark strings for translation; use longer
strings instead of substituting single words.
(function_category): Return a format string marked for
translation, not a single word or phrase to substitute in a longer

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147033 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * doc/install.texi: Document --enable-linker-build-id option.
ian [Fri, 1 May 2009 00:38:54 +0000 (00:38 +0000)]
* doc/install.texi: Document --enable-linker-build-id option.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147031 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * configure.ac (HAVE_LD_BUILDID): New check for ld --build-id
ian [Fri, 1 May 2009 00:19:24 +0000 (00:19 +0000)]
* configure.ac (HAVE_LD_BUILDID): New check for ld --build-id
(ENABLE_LD_BUILDID): New configuration option.
(init_spec): If defined, prepend it between LINK_EH_SPEC and
* doc/install.texi: Document --enable-linker-build-id option.
* configure: Rebuild.
* config.in: Rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147029 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Fri, 1 May 2009 00:16:51 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147028 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/mips/mips.h (FRAME_GROWS_DOWNWARD,
nemet [Thu, 30 Apr 2009 22:42:58 +0000 (22:42 +0000)]
* config/mips/mips.h (FRAME_GROWS_DOWNWARD,
MIPS_GP_SAVE_AREA_SIZE): Define new macros.
* config/mips/mips.c (struct mips_frame_info): Update comment
before arg_pointer_offset and hard_frame_pointer_offset.
(mips_compute_frame_info): Update diagram before function: to
correctly use stack_pointer_rtx for fp_sp_offset and gp_sp_offset, to
indicate the position of frame_pointer_rtx with -fstack-protector and
to show args_size.  Don't allocate cprestore area for leaf functions
(mips_initial_elimination_offset): Update for FRAME_GROWS_DOWNWARD.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147024 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcc.dg/ssp-1.c (__stack_chk_fail): Remove static.
nemet [Thu, 30 Apr 2009 22:33:32 +0000 (22:33 +0000)]
* gcc.dg/ssp-1.c (__stack_chk_fail): Remove static.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147023 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agofix for PR 39955
meissner [Thu, 30 Apr 2009 21:59:49 +0000 (21:59 +0000)]
fix for PR 39955

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147021 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix from Dave Korn in case a backend does not declare any define_register_constraints
meissner [Thu, 30 Apr 2009 21:52:15 +0000 (21:52 +0000)]
Fix from Dave Korn in case a backend does not declare any define_register_constraints

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147020 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR middle-end/39579
sje [Thu, 30 Apr 2009 21:43:21 +0000 (21:43 +0000)]
PR middle-end/39579
* gcc.dg/vect/vect-35.c: XFAIL for IA64 and Sparc.
* gfortran.dg/vect/fast-math-pr38968.f90: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147018 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-04-30 Jonathan Wakely <jwakely.gcc@gmail.com>
redi [Thu, 30 Apr 2009 19:04:03 +0000 (19:04 +0000)]
2009-04-30  Jonathan Wakely  <jwakely.gcc@gmail.com>

* scripts/create_testsuite_files: Remove thread directory.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147012 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR testsuite/39776
janis [Thu, 30 Apr 2009 17:48:03 +0000 (17:48 +0000)]
PR testsuite/39776
* g++.dg/ext/altivec-15.C: Remove dg-error for messages that are
no longer issued.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147010 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-04-30 Rafael Avila de Espindola <espindola@google.com>
espindola [Thu, 30 Apr 2009 16:24:31 +0000 (16:24 +0000)]
2009-04-30  Rafael Avila de Espindola  <espindola@google.com>

* alloc-pool.c (alloc_pool_descriptor): Use an insert_opion value
instead of an int.
* bitmap.c (bitmap_descriptor): Likewise.
* ggc-common.c (loc_descriptor): Likewise.
* varray.c (varray_descriptor): Likewise.
* vec.c (vec_descriptor): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147009 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-04-30 David Ayers <ayers@fsfe.org>
ayers [Thu, 30 Apr 2009 16:03:44 +0000 (16:03 +0000)]
2009-04-30  David Ayers  <ayers@fsfe.org>

* lib/objc.exp (objc_init): Add and set gcc_warning_prefix
and gcc_error_prefix variables.
* objc.dg/bad-receiver-type.m: Update to match correct
diagnostics marker.
* objc.dg/encode-5.m: Likewise.
* objc.dg/id-1.m: Likewise.
* objc.dg/method-1.m: Likewise.
* objc.dg/method-6.m: Likewise.
* objc.dg/method-7.m: Likewise.
* objc.dg/method-9.m: Likewise.
* objc.dg/method-11.m: Likewise.
* objc.dg/method-20.m: Likewise.
* objc.dg/private-1.m: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147006 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix PR libfortran/39667
jb [Thu, 30 Apr 2009 15:12:37 +0000 (15:12 +0000)]
Fix PR libfortran/39667

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147004 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix date
ebotcazou [Thu, 30 Apr 2009 14:35:50 +0000 (14:35 +0000)]
Fix date

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147003 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * Makefile.in (dce.o): Add $(EXCEPT_H).
ebotcazou [Thu, 30 Apr 2009 14:35:22 +0000 (14:35 +0000)]
* Makefile.in (dce.o): Add $(EXCEPT_H).
* dce.c: Include except.h and delete redundant vector definitions.
(deletable_insn_p): Return false for non-call insns that can throw
if DF is running.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147002 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcse.c (ae_gen): Remove.
steven [Thu, 30 Apr 2009 10:51:08 +0000 (10:51 +0000)]
* gcse.c (ae_gen): Remove.
(can_assign_to_reg_p): Rename to can_assign_to_reg_without_clobbers_p
and make non-static function to make it available in store-motion.c.
Update call sites with search-and-replace.
(enumerate_ldsts, reg_set_info, reg_clear_last_set, store_ops_ok,
extract_mentioned_regs, extract_mentioned_regs_helper,
find_moveable_store, compute_store_table, load_kills_store, find_loads,
store_killed_in_insn, store_killed_after, store_killed_before,
build_store_vectors, insert_insn_start_basic_block, insert-store,
remove_reachable_equiv_notes, replace_store_insn, delete_store,
free_store_memory, one_store_motion_pass, gate_rtl_store_motion,
execute_rtl_store_motion, pass_rtl_store_motion): Move to...
* store-motion.c: ...new file.  Also copy data structures from gcse.c
and clean up to remove parts not used by store motion.
* rtl.h (can_assign_to_reg_without_clobbers_p): Add prototype.
* Makefile.in (store-motion.o): New rule. Add to OBJS-common.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147001 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoFix PR target/38571
ramana [Thu, 30 Apr 2009 10:04:52 +0000 (10:04 +0000)]
Fix PR target/38571

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@147000 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcse.c (gcse_constant_p): Fix typo in last change.
hp [Thu, 30 Apr 2009 08:10:37 +0000 (08:10 +0000)]
* gcse.c (gcse_constant_p): Fix typo in last change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146999 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-04-30 Rafael Avila de Espindola <espindola@google.com>
espindola [Thu, 30 Apr 2009 08:05:31 +0000 (08:05 +0000)]
2009-04-30  Rafael Avila de Espindola  <espindola@google.com>

* plugin.c: Include plugin-version.h only if ENABLE_PLUGIN is defined.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146998 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-04-30 Andreas Krebbel <krebbel1@de.ibm.com>
krebbel [Thu, 30 Apr 2009 06:54:54 +0000 (06:54 +0000)]
2009-04-30  Andreas Krebbel  <krebbel1@de.ibm.com>

* gcse.c (gcse_constant_p): Make sure the constant is sharable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146997 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago* config/mips/mips.c (mips_add_offset): Use gen_int_mode for
wilson [Thu, 30 Apr 2009 00:58:10 +0000 (00:58 +0000)]
* config/mips/mips.c (mips_add_offset): Use gen_int_mode for

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146995 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoDaily bump.
gccadmin [Thu, 30 Apr 2009 00:17:30 +0000 (00:17 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146994 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago Revert
ebotcazou [Wed, 29 Apr 2009 23:10:21 +0000 (23:10 +0000)]
2009-04-29  Vincent Celier  <celier@adacore.com>

* sinput-l.adb (Load_File): When preprocessing, set temporarily the
Source_File_Index_Table entries for the source, to avoid crash when
reporting an error.

* gnatcmd.adb (Test_If_Relative_Path): Use

* makeutl.adb:(Test_If_Relative_Path): Process switches --RTS= only if
Including_RTS is True.

* makeutl.ads (Test_If_Relative_Path): New Boolean parameter
Including_RTS defaulted to False.

* sinput.ads, scans.ads, err_vars.ads: Initialize some variables with
a default value.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146991 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago (frame_pointer_required_p): Change return type to bool.
aesok [Wed, 29 Apr 2009 22:41:33 +0000 (22:41 +0000)]
(frame_pointer_required_p): Change return type to bool.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146990 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/avr/avr.c (initial_elimination_offset): Rename to
aesok [Wed, 29 Apr 2009 21:57:03 +0000 (21:57 +0000)]
* config/avr/avr.c (initial_elimination_offset): Rename to
(frame_pointer_required_p): Rename to avr_frame_pointer_required_p,
change return type to bool.
(avr_can_eliminate): New function.
* config/avr/avr.h (CAN_ELIMINATE): Use avr_can_eliminate.
(FRAME_POINTER_REQUIRED): Use avr_frame_pointer_required_p.
(INITIAL_ELIMINATION_OFFSET): Use avr_initial_elimination_offset.
* config/avr/avr-protos.h (initial_elimination_offset) : Rename to
(frame_pointer_required_p): Rename to avr_frame_pointer_required_p.
(avr_initial_elimination_offset): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146989 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR rtl-optimization/39938
ebotcazou [Wed, 29 Apr 2009 21:44:26 +0000 (21:44 +0000)]
PR rtl-optimization/39938
* Makefile.in (cfgrtl.o): Add $(INSN_ATTR_H).
* cfgrtl.c: Include insn-attr.h.
(rest_of_pass_free_cfg): New function.
(pass_free_cfg): Use rest_of_pass_free_cfg as execute function.
* resource.c (init_resource_info): Remove call to df_analyze.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146988 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-04-29 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 29 Apr 2009 18:07:23 +0000 (18:07 +0000)]
2009-04-29  Richard Guenther  <rguenther@suse.de>

PR target/39943
* config/i386/i386.c (ix86_vectorize_builtin_conversion): Only
allow conversion to signed integers.

* lib/target-supports.exp (check_effective_target_vect_uintfloat_cvt):
(check_effective_target_vect_floatuint_cvt): Likewise.
* gcc.dg/vect/slp-10.c: Adjust.
* gcc.dg/vect/slp-11.c: Adjust.
* gcc.dg/vect/slp-12b.c: Adjust.
* gcc.dg/vect/slp-33.c: Adjust.
* gcc.c-torture/compile/pr39943.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146984 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-04-29 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 29 Apr 2009 18:03:58 +0000 (18:03 +0000)]
2009-04-29  Richard Guenther  <rguenther@suse.de>

* tree-cfg.c (verify_gimple_assign_binary): Allow vector
shifts of floating point vectors if the shift amount is
a constant multiple of the element size.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146983 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago PR middle-end/39927
matz [Wed, 29 Apr 2009 17:36:21 +0000 (17:36 +0000)]
    PR middle-end/39927
        PR bootstrap/39929
        * tree-outof-ssa.c (emit_partition_copy): New function.
        (insert_partition_copy_on_edge, insert_rtx_to_part_on_edge,
        insert_part_to_rtx_on_edge): Perform the partition base var
        copy using emit_partition_copy.
        (insert_value_copy_on_edge): Convert constants to the right mode.
        (insert_rtx_to_part_on_edge): Add UNSIGNEDSRCP parameter.
        (elim_create): Pass the sign of the src to insert_rtx_to_part_on_edge.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146982 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/bfin/bfin.c (bfin_optimize_loop): When looking for the last
bernds [Wed, 29 Apr 2009 15:40:06 +0000 (15:40 +0000)]
* config/bfin/bfin.c (bfin_optimize_loop): When looking for the last
insn before the loop_end instruction, don't look past labels.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146980 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-04-29 Ed Schonberg <schonberg@adacore.com>
charlet [Wed, 29 Apr 2009 15:36:48 +0000 (15:36 +0000)]
2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Analyze_Subprogram_Renaming): Improve error message on
box-defaulted operator in an instantiation, when the type of the
operands is not directly visible.

2009-04-29  Gary Dismukes  <dismukes@adacore.com>

* sem_aggr.adb (Valid_Limited_Ancestor): Undo previous change.
(Resolve_Extension_Aggregate): Call Check_Parameterless_Call after the
analysis of the ancestor part. Remove prohibition against limited
interpretations of the ancestor expression in the case of Ada 2005.
Revise error message in overloaded case, adding a message to cover
the Ada 2005 case.

2009-04-29  Thomas Quinot  <quinot@adacore.com>

* xoscons.adb: Minor reformatting

2009-04-29  Bob Duff  <duff@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not ignore
attribute_definition_clauses for the following attributes when the
-gnatI switch is used: External_Tag, Input, Output, Read, Storage_Pool,
Storage_Size, Write. Otherwise, we get spurious errors (for example,
missing Read attribute on remote types).

* gnat_ugn.texi: Document the change, and add a stern warning.

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_attr.adb (Check_Local_Access): Indicate that value tracing is
disabled not just for the current scope, but for the innermost dynamic
scope as well.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146979 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * gcc-interface/Make-lang.in: Update dependencies
charlet [Wed, 29 Apr 2009 15:34:32 +0000 (15:34 +0000)]
* gcc-interface/Make-lang.in: Update dependencies

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146978 138bc75d-0d04-0410-961f-82ee72b054a4

11 years agoRemoved file that should have been removed in a previous commit. Already listed on...
espindola [Wed, 29 Apr 2009 15:33:20 +0000 (15:33 +0000)]
Removed file that should have been removed in a previous commit. Already listed on ChangeLog.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146977 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-04-29 Vincent Celier <celier@adacore.com>
charlet [Wed, 29 Apr 2009 15:25:01 +0000 (15:25 +0000)]
2009-04-29  Vincent Celier  <celier@adacore.com>

* prj-part.adb: Minor comment update

2009-04-29  Ed Schonberg  <schonberg@adacore.com>

* sem_aggr.adb (Resolve_Record_Aggregate): handle properly
box-initialized records with discriminated subcomponents that are
constrained by discriminants of enclosing components. New subsidiary
procedures Add_Discriminant_Values, Propagate_Discriminants.

2009-04-29  Arnaud Charlet  <charlet@adacore.com>

* g-socket.adb: Code clean up.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146976 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/bfin/bfin.c (bfin_optimize_loop): If we need a scratch reg,
bernds [Wed, 29 Apr 2009 15:09:37 +0000 (15:09 +0000)]
* config/bfin/bfin.c (bfin_optimize_loop): If we need a scratch reg,
scan backwards to try to find a constant to initialize it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146974 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago2009-04-29 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 29 Apr 2009 15:05:22 +0000 (15:05 +0000)]
2009-04-29  Richard Guenther  <rguenther@suse.de>

PR middle-end/39937
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Do not
loose type conversions.
(forward_propagate_addr_expr): Fix tuplification bug.  Remove
stmts only if there are no uses of its definition.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146973 138bc75d-0d04-0410-961f-82ee72b054a4

11 years ago * config/bfin/bfin.h (splitting_loops): Declare.
bernds [Wed, 29 Apr 2009 14:13:30 +0000 (14:13 +0000)]
* config/bfin/bfin.h (splitting_loops): Declare.
* config/bfin/bfin-protos.h (WA_05000257, WA_05000283, WA_05000315):
Reorder bit definitions to be ascending.
* config/bfin/bfin.c (splitting_loops): New variable.
(bfin_cpus): Add WA_LOAD_LCREGS as needed.
(struct loop_info): Remove members INIT and LOOP_INIT.
(bfin_optimize_loop): Don't set them.  Reorder the code that generates
the LSETUP sequence.  Allow LC to be loaded from any register, but also
add a case to push/pop a PREG scratch if ENABLE_WA_LOAD_LCREGS.
(bfin_reorg_loops): When done, split all BB_ENDs with splitting_loops
set to 1.
* config/bfin/bfin.md (loop_end splitter): Use splitting_loops instead
of reload_completed.
From Jie Zhang:
* config/bfin/bfin.md (movsi_insn): Refine constraints.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146971 138bc75d-0d04-0410-961f-82ee72b054a4