platform/upstream/gcc.git
12 years agore PR bootstrap/51796 (internal compiler error: in distribute_notes, at combine.c...
Jakub Jelinek [Wed, 11 Jan 2012 22:59:12 +0000 (23:59 +0100)]
re PR bootstrap/51796 (internal compiler error: in distribute_notes, at combine.c:13285 for libgomp/alloc.c on m68k-linux)

PR bootstrap/51796
* combine.c (distribute_notes): If i3 is a noreturn call,
allow old_size to be equal to args_size and make sure the
noreturn call gets REG_ARGS_SIZE note.
* expr.c (fixup_args_size_notes): Put REG_ARGS_SIZE notes
on noreturn calls even when the delta is 0.

* gcc.dg/pr51796.c: New test.

From-SVN: r183111

12 years agocompiler: Don't use memcmp for structs/arrays with padding.
Ian Lance Taylor [Wed, 11 Jan 2012 21:20:41 +0000 (21:20 +0000)]
compiler: Don't use memcmp for structs/arrays with padding.

From-SVN: r183109

12 years agocomment
Jason Merrill [Wed, 11 Jan 2012 20:26:53 +0000 (15:26 -0500)]
comment

From-SVN: r183108

12 years agore PR c++/51818 ([C++0x] Name mangling error using lambda expressions in GCC47)
Jason Merrill [Wed, 11 Jan 2012 20:26:44 +0000 (15:26 -0500)]
re PR c++/51818 ([C++0x] Name mangling error using lambda expressions in GCC47)

PR c++/51818
* mangle.c (find_substitution): A type is only a substitution
match if we're looking for a type.
(write_nested_name): Use decl_mangling_context.

From-SVN: r183107

12 years agoadjust comment
Jason Merrill [Wed, 11 Jan 2012 19:31:40 +0000 (14:31 -0500)]
adjust comment

From-SVN: r183106

12 years agogcov.c (STRING_SIZE): Remove.
Nathan Sidwell [Wed, 11 Jan 2012 18:58:30 +0000 (18:58 +0000)]
gcov.c (STRING_SIZE): Remove.

* gcov.c (STRING_SIZE): Remove.
(generate_results): Erase annotations for source files with no
coverage information.
(read_line): New.
(output_lines): Use it.

From-SVN: r183105

12 years agogimple.h (gimplify_body): Remove first argument.
Eric Botcazou [Wed, 11 Jan 2012 18:50:54 +0000 (18:50 +0000)]
gimple.h (gimplify_body): Remove first argument.

* gimple.h (gimplify_body): Remove first argument.
* gimplify.c (copy_if_shared): Add DATA argument.  Do not create the
pointer set here, instead just pass DATA to walk_tree.
(unshare_body): Remove BODY_P argument and adjust.  Create the pointer
set here and invoke copy_if_shared on the size trees of DECL_RESULT.
(unvisit_body): Likewise, but with unmark_visited.
(gimplify_body): Remove BODY_P argument and adjust.
(gimplify_function_tree): Adjust call to gimplify_body.
* omp-low.c (finalize_task_copyfn): Likewise.

From-SVN: r183104

12 years ago* libgcov.c (__gcov_init): Ignore objects with no functions.
Nathan Sidwell [Wed, 11 Jan 2012 18:50:21 +0000 (18:50 +0000)]
* libgcov.c (__gcov_init): Ignore objects with no functions.

From-SVN: r183103

12 years agotree.h (build_function_decl_skip_args): Add boolean parameter.
Eric Botcazou [Wed, 11 Jan 2012 18:47:28 +0000 (18:47 +0000)]
tree.h (build_function_decl_skip_args): Add boolean parameter.

* tree.h (build_function_decl_skip_args): Add boolean parameter.
(build_function_type_skip_args): Delete.
* tree.c (build_function_type_skip_args): Make static and add
SKIP_RETURN parameter.  Fix thinko in the handling of variants.
(build_function_decl_skip_args): Add SKIP_RETURN parameter and
pass it to build_function_type_skip_args.
* cgraph.h (cgraph_function_versioning): Add boolean parameter.
(tree_function_versioning): Likewise.
* cgraph.c (cgraph_create_virtual_clone): Adjust call to
build_function_decl_skip_args.
* cgraphunit.c (cgraph_function_versioning): Add SKIP_RETURN parameter
and pass it to build_function_decl_skip_args/tree_function_versioning.
(cgraph_materialize_clone): Adjust call to tree_function_versioning.
* ipa-inline-transform.c (save_inline_function_body): Likewise.
* trans-mem.c (ipa_tm_create_version): Likewise.
* tree-sra.c (modify_function): Ditto for cgraph_function_versioning.
* tree-inline.c (declare_return_variable): Remove always-true test.
(tree_function_versioning): Add SKIP_RETURN parameter.  If the function
returns non-void and SKIP_RETURN, create a void-typed RESULT_DECL.
* ipa-split.c (split_function): Skip the return value for the split
part if it doesn't return.

From-SVN: r183102

12 years agore PR tree-optimization/49642 (constant part of a macro not optimized away as expecte...
Bill Schmidt [Wed, 11 Jan 2012 16:52:03 +0000 (16:52 +0000)]
re PR tree-optimization/49642 (constant part of a macro not optimized away as expected due to splitter)

gcc:

2012-01-11  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR tree-optimization/49642
* ipa-split.c (forbidden_dominators): New variable.
(check_forbidden_calls): New function.
(dominated_by_forbidden): Likewise.
(consider_split): Check for forbidden dominators.
(execute_split_functions): Initialize and free forbidden
dominators info; call check_forbidden_calls.

gcc/testsuite:

2012-01-11  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR tree-optimization/49642
* gcc.dg/tree-ssa/pr49642-1.c: New test.
* gcc.dg/tree-ssa/pr49642-2.c: New test.

From-SVN: r183101

12 years ago* decl.c (decls_match): Assert that the arguments are decls.
Jason Merrill [Wed, 11 Jan 2012 16:47:12 +0000 (11:47 -0500)]
* decl.c (decls_match): Assert that the arguments are decls.

From-SVN: r183100

12 years agore PR c++/51613 (Ambiguous function template instantiations as template argument...
Jason Merrill [Wed, 11 Jan 2012 16:46:57 +0000 (11:46 -0500)]
re PR c++/51613 (Ambiguous function template instantiations as template argument are not rejected)

PR c++/51613
* pt.c (resolve_overloaded_unification): Compare types with
same_type_p, not decls_match.

From-SVN: r183099

12 years agocompiler: Fix names for hash/equality functions for unnamed types.
Ian Lance Taylor [Wed, 11 Jan 2012 16:28:08 +0000 (16:28 +0000)]
compiler: Fix names for hash/equality functions for unnamed types.

From-SVN: r183098

12 years agoFix PR number in ChangeLog.
Andreas Tobler [Wed, 11 Jan 2012 16:27:21 +0000 (17:27 +0100)]
Fix PR number in ChangeLog.

From-SVN: r183097

12 years agore PR rtl-optimization/57105 (ICE: in add_insn_before_nobb, at emit-rtl.c:3883 with...
Bruce Korb [Wed, 11 Jan 2012 16:23:48 +0000 (16:23 +0000)]
re PR rtl-optimization/57105 (ICE: in add_insn_before_nobb, at emit-rtl.c:3883 with -Os -fselective-scheduling2 -g)

2012-01-11  Bruce Korb <bkorb@gnu.org>
    Steven G. Kargl  <kargl@gcc.gnu.org>
    Andreas Tobler  <andreast@fgznet.ch>

PR bootstrap/57105
PR preprocessor/51776
* inclhack.def (cdef_cplusplus): Add a replacement for [[noreturn]].
* fixincl.x: Regenerate.
* tests/base/sys/cdefs.h: Update.

* genfixes: Remove the 'Ver.' from the version check.

Co-Authored-By: Andreas Tobler <andreast@fgznet.ch>
Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org>
From-SVN: r183096

12 years agoarm.md (mov_notscc): Use MVN for false condition.
Matthew Gretton-Dann [Wed, 11 Jan 2012 16:14:14 +0000 (16:14 +0000)]
arm.md (mov_notscc): Use MVN for false condition.

* gcc/config/arm/arm.md (mov_notscc): Use MVN for false condition.
* gcc/testsuite/gcc.c-torture/execute/20120110-1.c: New testcase.

From-SVN: r183095

12 years agomain.c (store_exe_path): Fix absolute path detection for Windows.
Tobias Burnus [Wed, 11 Jan 2012 14:39:28 +0000 (15:39 +0100)]
main.c (store_exe_path): Fix absolute path detection for Windows.

2012-01-11  Tobias Burnus  <burnus@net-b.de>

        * runtime/main.c (store_exe_path): Fix absolute path
        detection for Windows.

From-SVN: r183094

12 years ago* config/rx/rx.md (return): Define pattern.
Nick Clifton [Wed, 11 Jan 2012 11:42:05 +0000 (11:42 +0000)]
* config/rx/rx.md (return): Define pattern.

From-SVN: r183093

12 years agoextend.texi (malloc attribute): Adjust according to implementation.
Richard Guenther [Wed, 11 Jan 2012 09:01:36 +0000 (09:01 +0000)]
extend.texi (malloc attribute): Adjust according to implementation.

2012-01-11  Richard Guenther  <rguenther@suse.de>

* doc/extend.texi (malloc attribute): Adjust according to
implementation.

From-SVN: r183092

12 years agoPR 51803 Handle getcwd failure and lack of the function better.
Janne Blomqvist [Wed, 11 Jan 2012 07:34:16 +0000 (09:34 +0200)]
PR 51803 Handle getcwd failure and lack of the function better.

2012-01-11  Janne Blomqvist  <jb@gcc.gnu.org>
            Mike Stump  <mikestump@comcast.net>
PR libfortran/51803
* runtime/main.c (store_exe_path): Handle getcwd failure and lack
of the function better.

Co-Authored-By: Mike Stump <mikestump@comcast.net>
From-SVN: r183090

12 years agocompiler: Use backend interface for type sizes and alignments.
Ian Lance Taylor [Wed, 11 Jan 2012 04:48:22 +0000 (04:48 +0000)]
compiler: Use backend interface for type sizes and alignments.

* go-gcc.cc (Gcc_backend::type_size): New function.
(Gcc_backend::type_alignment): New function.
(Gcc_backend::type_field_alignment): New function.
(Gcc_backend::type_field_offset): New function.
* go-backend.c (go_type_alignment): Remove.
* go-c.h (go_type_alignment): Don't declare.

From-SVN: r183089

12 years agore PR c++/51614 (ICE with ambiguous base class)
Jason Merrill [Wed, 11 Jan 2012 03:04:49 +0000 (22:04 -0500)]
re PR c++/51614 (ICE with ambiguous base class)

PR c++/51614
* class.c (build_base_path): Diagnose ambiguous base.

From-SVN: r183088

12 years agotweak comment
Jason Merrill [Wed, 11 Jan 2012 03:04:38 +0000 (22:04 -0500)]
tweak comment

From-SVN: r183087

12 years agoDaily bump.
GCC Administrator [Wed, 11 Jan 2012 00:19:01 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r183085

12 years agocp-demangle.c (d_print_comp): Omit a trailing space in the operator name.
Jason Merrill [Tue, 10 Jan 2012 17:02:52 +0000 (12:02 -0500)]
cp-demangle.c (d_print_comp): Omit a trailing space in the operator name.

* cp-demangle.c (d_print_comp) [DEMANGLE_COMPONENT_OPERATOR]:
Omit a trailing space in the operator name.

From-SVN: r183072

12 years agore PR middle-end/51516 ([trans-mem] problem with TM clone aliases)
Aldy Hernandez [Tue, 10 Jan 2012 16:50:41 +0000 (16:50 +0000)]
re PR middle-end/51516 ([trans-mem] problem with TM clone aliases)

        PR middle-end/51516
        * trans-mem.c (get_cg_data): Traverse aliases if requested.
        (ipa_tm_scan_calls_block): Update parameters to get_cg_data.
        (ipa_tm_note_irrevocable): Same.
        (ipa_tm_scan_irr_block): Same.
        (ipa_tm_decrement_clone_counts): Same.
        (ipa_tm_scan_irr_function): Same.
        (ipa_tm_create_version_alias): Same.
        (ipa_tm_create_version): Same.
        (ipa_tm_transform_calls_redirect): Same.
        (ipa_tm_transform_calls): Same.
        (ipa_tm_transform_transaction): Same.
        (ipa_tm_execute): Same.

Co-Authored-By: Patrick Marlier <patrick.marlier@gmail.com>
From-SVN: r183070

12 years agore PR lto/51806 (-flto ignores -Werror)
Richard Guenther [Tue, 10 Jan 2012 16:27:55 +0000 (16:27 +0000)]
re PR lto/51806 (-flto ignores -Werror)

2012-01-10  Richard Guenther  <rguenther@suse.de>

PR middle-end/51806
c-family/
* c-opts.c (c_common_handle_option): Move -Werror handling
to language independent code.

* opts.c (common_handle_option): Handle -Werror.

From-SVN: r183069

12 years agosync.md ("atomic_compare_and_swap<mode>_1"): Fix operand number.
Andreas Schwab [Tue, 10 Jan 2012 14:40:47 +0000 (14:40 +0000)]
sync.md ("atomic_compare_and_swap<mode>_1"): Fix operand number.

* config/m68k/sync.md ("atomic_compare_and_swap<mode>_1"): Fix
operand number.

From-SVN: r183067

12 years agoinvoke.texi (C++ Dialect Options): Update -fabi-version=6 information.
Jason Merrill [Tue, 10 Jan 2012 14:37:34 +0000 (09:37 -0500)]
invoke.texi (C++ Dialect Options): Update -fabi-version=6 information.

* doc/invoke.texi (C++ Dialect Options): Update -fabi-version=6
information.

From-SVN: r183066

12 years agore PR c++/51433 (constexpr caching leads to incorrect dynamic initialization)
Jason Merrill [Tue, 10 Jan 2012 14:37:26 +0000 (09:37 -0500)]
re PR c++/51433 (constexpr caching leads to incorrect dynamic initialization)

PR c++/51433
* semantics.c (cxx_eval_call_expression): Always retry previously
non-constant expressions.

From-SVN: r183065

12 years agore PR tree-optimization/51801 (ICE in inline_small_functions)
Richard Guenther [Tue, 10 Jan 2012 13:38:41 +0000 (13:38 +0000)]
re PR tree-optimization/51801 (ICE in inline_small_functions)

2012-01-10  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/51801
* gcc.dg/torture/pr51801.c: New testcase.

From-SVN: r183064

12 years agoCheck if linker supports R_386_TLS_GD_PLT, R_386_TLS_LDM_PLT relocs
Rainer Orth [Tue, 10 Jan 2012 13:21:53 +0000 (13:21 +0000)]
Check if linker supports R_386_TLS_GD_PLT, R_386_TLS_LDM_PLT relocs

* configure.ac (gcc_cv_as_ix86_tlsgdplt): Check if linker
supports R_386_TLS_GD_PLT reloc.
(gcc_cv_as_ix86_tlsldmplt): Check if linker
supports R_386_TLS_LDM_PLT reloc.
* configure: Regenerate.
* config.in: Regenerate.

From-SVN: r183063

12 years agogfortran.texi (Fortran 2003 Status): Fix grammar.
Gerald Pfeifer [Tue, 10 Jan 2012 11:38:46 +0000 (11:38 +0000)]
gfortran.texi (Fortran 2003 Status): Fix grammar.

2012-01-10  Gerald Pfeifer  <gerald@pfeifer.com>

        * gfortran.texi (Fortran 2003 Status): Fix grammar.

From-SVN: r183062

12 years agore PR fortran/51652 (Allocate with type-spec and source-expr: check whether length...
Tobias Burnus [Tue, 10 Jan 2012 11:22:16 +0000 (12:22 +0100)]
re PR fortran/51652 (Allocate with type-spec and source-expr: check whether length type-parameter is the same is lacking)

2012-01-10  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51652
        * resolve.c (resolve_allocate_expr): For non-deferred char
        lengths, check whether type-spec matches declaration.

2012-01-10  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51652
        * gfortran.dg/allocate_with_typespec_5.f90: New.

From-SVN: r183061

12 years ago[multiple changes]
Arnaud Charlet [Tue, 10 Jan 2012 11:06:44 +0000 (12:06 +0100)]
[multiple changes]

2012-01-10  Pascal Obry  <obry@adacore.com>

* prj-nmsc.adb (Check_Library_Attributes): Kill check for object/source
directories for aggregate libraries.

2012-01-10  Matthew Heaney  <heaney@adacore.com>

* a-cdlili.adb, a-cdlili.ads, a-cihama.adb, a-cihama.ads, a-coinve.adb,
a-coinve.ads, a-ciorse.adb, a-ciorse.ads, a-coorma.adb, a-coorma.ads,
a-cborma.adb, a-cborma.ads, a-cidlli.adb, a-cidlli.ads, a-cimutr.adb,
a-cimutr.ads, a-cihase.adb, a-cihase.ads, a-cohama.adb, a-cohama.ads,
a-coorse.adb, a-coorse.ads, a-cbhama.adb, a-cbhama.ads, a-cborse.adb,
a-cborse.ads, a-comutr.adb, a-comutr.ads, a-ciorma.adb, a-cobove.adb,
a-ciorma.ads, a-cobove.ads, a-convec.adb, a-convec.ads, a-cohase.adb,
a-cohase.ads, a-cbdlli.adb, a-cbdlli.ads, a-cbmutr.adb, a-cbmutr.ads,
a-cbhase.adb, a-cbhase.ads (Reference, Constant_Reference): Declare
container parameter as aliased in/in out.
Code clean ups.

2012-01-10  Bob Duff  <duff@adacore.com>

* s-os_lib.ads: Improve comment.

2012-01-10  Geert Bosch  <bosch@adacore.com>

* s-gearop.adb (Forward_Eliminate): Avoid improper aliasing
for complex Scalar.

From-SVN: r183060

12 years ago[multiple changes]
Arnaud Charlet [Tue, 10 Jan 2012 10:35:38 +0000 (11:35 +0100)]
[multiple changes]

2012-01-10  Bob Duff  <duff@adacore.com>

* sem_intr.adb (Check_Shift): Use RM_Size instead of Esize, when
checking that the 'Size is correct. If the type is "mod 2**12",
for example, it's illegal, but Esize is the 'Object_Size, which
will be something like 16 or 32, so the error ('Size = 12) was
not detected.
* gnat_rm.texi: Improve documentation of shift
and rotate intrinsics.

2012-01-10  Pascal Obry  <obry@adacore.com>

* prj.adb (For_Every_Project_Imported): Fix
implementation to make sure we return each project only once
for aggragte libraries. It is fine to return a project twice for
aggregate projects, this was the case as a Project_Id is different
in each project tree. The new implementation use a table based on
the project name to ensure proper detection of duplicate project
in aggregate library. A new context is then created to continue
retrurning duplicate project for aggregate libraries.

From-SVN: r183059

12 years agore PR target/49868 (Implement named address space to place/access data in flash memory)
Georg-Johann Lay [Tue, 10 Jan 2012 09:42:10 +0000 (09:42 +0000)]
re PR target/49868 (Implement named address space to place/access data in flash memory)

libgcc/
PR target/49868
Extend __pgmx semantics to linearize memory.
* config/avr/t-avr (LIB1ASMFUNCS): Add _xload_1, _movmemx.
* config/avr/lib1funcs.S (__xload_1): New function.
(__movmemx_qi, __movmemx_hi): New functions.
(__xload_2, __xload_3, __xload_4): Rewrite to fit new __pgmx
semantics.

gcc/
PR target/49868
Extend __pgmx semantics to linearize memory.
* config/avr/avr.md (mov<mode>): Use avr_xload_libgcc_p to
determine if code comes inline or from libgcc.
(MOVMEM_r_d:HI): Add "w" to constraint for better preference.
(movmem_qi, movmem_qi): Set constraint #2 to "n".
(movmem_qi_elpm, movmem_hi_elpm): Remove insns.
(movmemx_qi, movmemx_hi): New insns.
(xload_<mode>_libgcc): Rewrite to new insn condition.
(xload_<mode>): Remove insns.
* config/avr/avr.c (avr_out_xload): Rewrite: Only need to handle
cases that don't satisfy avr_xload_libgcc_p().
(avr_addr_space_convert): Allow converting in any direction.
(avr_addr_space_subset_p): Return always true.
(avr_xload_libgcc_p): Rewrite to fit new __pgmx semantics.
(avr_emit_movmemhi): Ditto.
(avr_out_lpm): No need to handle ADDR_SPACE_PGMX any more.
(avr_out_movmem): Ditto.
(AVR_SYMBOL_FLAG_PROGMEM): New macro.
(AVR_SYMBOL_SET_ADDR_SPACE): New macro.
(AVR_SYMBOL_GET_ADDR_SPACE): New macro.
(avr_encode_section_info): Encode 'progmem' in symbol flags.
(output_reload_in_const): Don't zero-extend any 24-bit symbols.

From-SVN: r183058

12 years agore PR fortran/51197 (Backtrace information less useful)
Tobias Burnus [Tue, 10 Jan 2012 09:32:29 +0000 (10:32 +0100)]
re PR fortran/51197 (Backtrace information less useful)

2012-01-10  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51197
        * runtime/compile_options.c (show_signal): List
        more signals.

From-SVN: r183057

12 years agoresolve.c (resolve_ordinary_assign): Improve error wording.
Tobias Burnus [Tue, 10 Jan 2012 09:31:31 +0000 (10:31 +0100)]
resolve.c (resolve_ordinary_assign): Improve error wording.

2012-01-10  Tobias Burnus  <burnus@net-b.de>

        * resolve.c (resolve_ordinary_assign): Improve error wording.

2012-01-10  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/class_39.f03: Update dg-error string.

From-SVN: r183056

12 years agore PR tree-optimization/50913 (ICE in scan_tree_for_params_right_scev, at graphite...
Richard Guenther [Tue, 10 Jan 2012 09:14:51 +0000 (09:14 +0000)]
re PR tree-optimization/50913 (ICE in scan_tree_for_params_right_scev, at graphite-sese-to-poly.c:633 compiling libgfortran with -floop-interchange -m32)

2012-01-10  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/50913
* graphite-scop-detection.c (stmt_has_simple_data_refs_p):
Require data-refs to be representable by Graphite with respect
to any loop nest.

* gcc.dg/graphite/interchange-16.c: New testcase.
* gcc.dg/graphite/scop-20.c: XFAIL.
* gfortran.dg/graphite/interchange-1.f: Likewise.
* gfortran.dg/graphite/block-1.f90: Likewise.
* gfortran.dg/graphite/block-2.f: Likewise.

From-SVN: r183055

12 years agoconstraints.md ("L"): Return true for 0xffffffff.
Uros Bizjak [Tue, 10 Jan 2012 09:06:11 +0000 (10:06 +0100)]
constraints.md ("L"): Return true for 0xffffffff.

* config/i386/constraints.md ("L"): Return true for 0xffffffff.
* config/i386/i386.c (*anddi_1): Emit AND with 0xffffffff as MOV.

From-SVN: r183054

12 years agoAdd missing PR lines
Tom de Vries [Tue, 10 Jan 2012 08:46:30 +0000 (08:46 +0000)]
Add missing PR lines

From-SVN: r183053

12 years agore PR rtl-optimization/51271 (ICE in in maybe_record_trace_start, at dwarf2cfi.c...
Tom de Vries [Tue, 10 Jan 2012 08:28:55 +0000 (08:28 +0000)]
re PR rtl-optimization/51271 (ICE in in maybe_record_trace_start, at dwarf2cfi.c:2244)

2012-01-10  Tom de Vries  <tom@codesourcery.com>

PR rtl-optimization/51271
* dwarf2cfi.c (scan_trace): Save and restore cur_row->reg_save when
handling annulled branch.

From-SVN: r183052

12 years agoarm: Implement vec_perm and vec_perm_const for NEON.
Richard Henderson [Tue, 10 Jan 2012 04:47:26 +0000 (20:47 -0800)]
arm: Implement vec_perm and vec_perm_const for NEON.

* config/arm/arm.c (arm_vectorize_vec_perm_const_ok,
TARGET_VECTORIZE_VEC_PERM_CONST_OK, neon_split_vcombine, MAX_VECT_LEN,
struct expand_vec_perm_d, arm_expand_vec_perm_1, arm_expand_vec_perm,
arm_evpc_neon_vuzp, arm_evpc_neon_vzip, arm_evpc_neon_vrev,
arm_evpc_neon_vtrn, arm_evpc_neon_vtbl, arm_expand_vec_perm_const_1,
arm_expand_vec_perm_const): New.
* config/arm/arm-protos.h: Update.
* config/arm/neon.md (UNSPEC_VCONCAT): New.
(*neon_vswp<VDQX>): New.
(neon_vcombine<VDX>): Use neon_split_vcombine.
(neon_vtbl1v16qi, neon_vtbl2v16qi, neon_vcombinev16qi): New.
* config/arm/vec-common.md (vec_perm_const<VALL>): New.
(vec_perm<VE>): New.

testsuite/
* lib/target-supports.exp (check_effective_target_vect_perm,
check_effective_target_vect_perm_byte,
check_effective_target_vect_perm_short): Enable for arm neon.

From-SVN: r183051

12 years agoarm: Convert to atomic optabs.
Richard Henderson [Tue, 10 Jan 2012 04:14:09 +0000 (20:14 -0800)]
arm: Convert to atomic optabs.

* config/arm/arm.c (arm_gen_compare_reg): Add scratch argument;
use it if reload_completed.
(arm_legitimize_sync_memory, arm_emit, arm_insn_count, arm_count,
arm_output_asm_insn, arm_process_output_memory_barrier,
arm_output_memory_barrier, arm_ldrex_suffix, arm_output_ldrex,
arm_output_strex, arm_output_it, arm_output_op2, arm_output_op3,
arm_output_sync_loop, arm_get_sync_operand, FETCH_SYNC_OPERAND,
arm_process_output_sync_insn, arm_output_sync_insn,
arm_sync_loop_insns, arm_call_generator, arm_expand_sync): Remove.
(arm_pre_atomic_barrier, arm_post_atomic_barrier): New.
(arm_emit_load_exclusive, arm_emit_store_exclusive): New.
(emit_unlikely_jump): New.
(arm_expand_compare_and_swap, arm_split_compare_and_swap): New.
(arm_split_atomic_op): New.
* config/arm/arm-protos.h: Update.
* config/arm/arm.h (enum arm_sync_generator_tag): Remove.
(struct arm_sync_generator): Remove.
* config/arm/arm.md (VUNSPEC_SYNC_COMPARE_AND_SWAP, VUNSPEC_SYNC_LOCK,
VUNSPEC_SYNC_OP, VUNSPEC_SYNC_NEW_OP, VUNSPEC_SYNC_OLD_OP): Remove.
(VUNSPEC_ATOMIC_CAS, VUNSPEC_ATOMIC_XCHG, VUNSPEC_ATOMIC_OP): New.
(VUNSPEC_LL, VUNSPEC_SC): New.
(sync_result, sync_memory, sync_required_value, sync_new_value,
sync_t1, sync_t2, sync_release_barrier, sync_op): Remove.
(attr length): Don't use arm_sync_loop_insns.
(cbranch_cc, cstore_cc): Update call to arm_gen_compare_reg.
(movsfcc, movdfcc): Likewise.
* config/arm/constraints.md (Ua): New.
* config/arm/prediates.md (mem_noofs_operand): New.
(sync_compare_and_swap<QHSD>, sync_lock_test_and_set<QHSD>): Remove.
(sync_clobber, sync_t2_reqd): Remove.
(sync_<syncop><QHSD>, sync_nand<QHSD>): Remove.
(sync_new_<syncop><QHSD>, sync_new_nand<QHSD>): Remove.
(sync_old_<syncop><QHSD>, sync_old_nand<QHSD>): Remove.
(arm_sync_compare_and_swap<SIDI>): Remove.
(arm_sync_compare_and_swap<NARROW>): Remove.
(arm_sync_lock_test_and_set<SIDI>): Remove.
(arm_sync_lock_test_and_set<NARROW>): Remove.
(arm_sync_new_<syncop><SIDI>): Remove.
(arm_sync_new_<syncop><NARROW>): Remove.
(arm_sync_new_nand<SIDI>): Remove.
(arm_sync_new_nand<NARROW>): Remove.
(arm_sync_old_<syncop><SIDI>): Remove.
(arm_sync_old_<syncop><NARROW>): Remove.
(arm_sync_old_nand<SIDI>): Remove.
(arm_sync_old_nand<NARROW>): Remove.
(*memory_barrier): Merge arm_output_memory_barrier.
(atomic_compare_and_swap<QHSD>): New.
(atomic_compare_and_swap<NARROW>_1): New.
(atomic_compare_and_swap<SIDI>_1): New.
(atomic_exchange<QHSD>): New.
(cas_cmp_operand, cas_cmp_str): New.
(atomic_op_operand, atomic_op_str): New.
(atomic_<syncop><QHSD>, atomic_nand<QHSD>): New.
(atomic_fetch_<syncop><QHSD>, atomic_fetch_nand<QHSD>): New.
(atomic_<syncop>_fetch<QHSD>, atomic_nand_fetch<QHSD>): New.
(arm_load_exclusive<NARROW>): New.
(arm_load_exclusivesi, arm_load_exclusivedi): New.
(arm_store_exclusive<QHSD>): New.

From-SVN: r183050

12 years agolibitm_i.h (_Unwind_DeleteException): Declare weak.
Richard Henderson [Tue, 10 Jan 2012 03:16:07 +0000 (19:16 -0800)]
libitm_i.h (_Unwind_DeleteException): Declare weak.

* libitm_i.h (_Unwind_DeleteException): Declare weak.
* eh_cpp.cc (_Unwind_DeleteException): Define for
!HAVE_ELF_STYLE_WEAKREF.

From-SVN: r183049

12 years agoFix bugs in -mvsx-scalar-memory and -mvsx-scalar-double
Michael Meissner [Tue, 10 Jan 2012 01:01:01 +0000 (01:01 +0000)]
Fix bugs in -mvsx-scalar-memory and -mvsx-scalar-double

From-SVN: r183048

12 years agoDaily bump.
GCC Administrator [Tue, 10 Jan 2012 00:19:25 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r183047

12 years ago[multiple changes]
Benjamin Kosnik [Mon, 9 Jan 2012 23:39:22 +0000 (23:39 +0000)]
[multiple changes]

2012-01-09  Kai Tietz  <ktietz@redhat.com>

PR libstc++/51673 part 2
* config/abi/pre/gnu-versioned-namespace.ver: Adjusted new/delete
operators signature for LLP64 size_t, and adjusted signatures for
mt-allocator using size_t.

2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>

PR libstc++/51673 part 1
* config/abi/pre/gnu-versioned-namespace.ver: Sync cxxabi symbols
with gnu.ver.

From-SVN: r183043

12 years agore PR fortran/46328 ([OOP] type-bound operator call with non-trivial polymorphic...
Tobias Burnus [Mon, 9 Jan 2012 23:23:26 +0000 (00:23 +0100)]
re PR fortran/46328 ([OOP] type-bound operator call with non-trivial polymorphic operand)

2012-01-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/46328
        * gfortran.dg/typebound_operator_11.f90: New.

From-SVN: r183039

12 years agore PR debug/51471 (gcc.c-torture/execute/20040811-1.c and gcc.c-torture/execute/vla...
Tom de Vries [Mon, 9 Jan 2012 22:19:47 +0000 (22:19 +0000)]
re PR debug/51471 (gcc.c-torture/execute/20040811-1.c and gcc.c-torture/execute/vla-dealloc-1.c  fails at -O3 -g on mips64-linux-gnu)

2012-01-09  Tom de Vries  <tom@codesourcery.com>
    Andrew Pinski  <apinski@cavium.com>

PR debug/51471
* reorg.c (fill_slots_from_thread): Don't speculate frame-related insns.

Co-Authored-By: Andrew Pinski <apinski@cavium.com>
From-SVN: r183038

12 years agofragment.am (WARN_CXXFLAGS): Add -Wabi.
Benjamin Kosnik [Mon, 9 Jan 2012 21:50:18 +0000 (21:50 +0000)]
fragment.am (WARN_CXXFLAGS): Add -Wabi.

2012-01-09  Benjamin Kosnik  <bkoz@redhat.com>

* fragment.am (WARN_CXXFLAGS): Add -Wabi.
* Makefile.in: Regenerate.
* doc/Makefile.in: Same.
* include/Makefile.in: Same.
* libsupc++/Makefile.in: Same.
* src/Makefile.in: Same.
* testsuite/Makefile.in: Same.
* po/Makefile.in: Same.
* python/Makefile.in: Same.

From-SVN: r183034

12 years agotrans.c (call_to_gnu): Create the temporary for the return value in the variable...
Eric Botcazou [Mon, 9 Jan 2012 21:08:53 +0000 (21:08 +0000)]
trans.c (call_to_gnu): Create the temporary for the return value in the variable-sized return type...

* gcc-interface/trans.c (call_to_gnu): Create the temporary for the
return value in the variable-sized return type case if the target is
an array with fixed size.  However, do not create it if this is the
expression of an object declaration.

From-SVN: r183033

12 years agore PR fortran/51791 ([OOP] Failure to resolve typebound function call with base objec...
Paul Thomas [Mon, 9 Jan 2012 20:25:55 +0000 (20:25 +0000)]
re PR fortran/51791 ([OOP] Failure to resolve typebound function call with base object in parentheses.)

2012-01-09  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/51791
* interface.c (matching_typebound_op): Drill down through
possible parentheses to obtain base expression. Do not test for
'class_ok' but, instead for the class structure components.
* resolve.c (resolve_ordinary_assign): Extend error message for
polymorphic assignment to advise checking for specific
subroutine.

PR fortran/51792
* resolve.c (resolve_typebound_function): Restore 'static' to
declaration.

2012-01-09  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/51791
* gfortran.dg/typebound_operator_7.f03: Insert parentheses
around base object in first assignment in main program.
* gfortran.dg/typebound_operator_10.f03: New test.

From-SVN: r183032

12 years agore PR fortran/51197 (Backtrace information less useful)
Harald Anlauf [Mon, 9 Jan 2012 19:53:27 +0000 (19:53 +0000)]
re PR fortran/51197 (Backtrace information less useful)

2012-01-09  Harald Anlauf  <anlauf@gmx.de>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/51197
        * runtime/backtrace.c (show_backtrace): Modify wording written
        before the backtrace.
        * runtime/compile_options.c (show_signal): New function.
        (backtrace_handler): Use it.

Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r183030

12 years agore PR tree-optimization/51759 (miscompile writes past end of bitfield)
Martin Jambor [Mon, 9 Jan 2012 19:52:06 +0000 (20:52 +0100)]
re PR tree-optimization/51759 (miscompile writes past end of bitfield)

2012-01-09  Martin Jambor  <mjambor@suse.cz>

        PR tree-optimization/51759
* g++.dg/ipa/pr51759.C: New test.

From-SVN: r183029

12 years agosched-int.h (bb_note): Move to...
Richard Sandiford [Mon, 9 Jan 2012 19:43:10 +0000 (19:43 +0000)]
sched-int.h (bb_note): Move to...

gcc/
* sched-int.h (bb_note): Move to...
* basic-block.h: ...here.
* haifa-sched.c (bb_note): Move to...
* cfgrtl.c: ...here.
* function.c (next_block_for_reg): New function.
(move_insn_for_shrink_wrap): Likewise.
(prepare_shrink_wrap): Rewrite to use the above.

From-SVN: r183028

12 years ago* gcc-interface/trans.c (addressable_p) <COMPONENT_REF>: Fix thinko.
Eric Botcazou [Mon, 9 Jan 2012 19:30:58 +0000 (19:30 +0000)]
* gcc-interface/trans.c (addressable_p) <COMPONENT_REF>: Fix thinko.

From-SVN: r183025

12 years ago[multiple changes]
Mikael Morin [Mon, 9 Jan 2012 19:01:34 +0000 (19:01 +0000)]
[multiple changes]

2012-01-09  Mikael Morin  <mikael@gcc.gnu.org>

PR fortran/51758
* trans-array.c (gfc_walk_elemental_function_args):
Skip over NULL() actual arguments.

2012-01-09  Tobias Burnus  <burnus@net-b.de>

PR fortran/51758
* gfortran.dg/optional_absent_2.f90: New.

From-SVN: r183024

12 years agosol2-unwind.h (sparc64_is_sighandler): Check that the purported sigacthandler address...
Eric Botcazou [Mon, 9 Jan 2012 18:20:55 +0000 (18:20 +0000)]
sol2-unwind.h (sparc64_is_sighandler): Check that the purported sigacthandler address isn't null before dereferencing it.

* config/sparc/sol2-unwind.h (sparc64_is_sighandler): Check that the
purported sigacthandler address isn't null before dereferencing it.
(sparc_is_sighandler): Likewise.

From-SVN: r183020

12 years agogfortran.texi: Bump copyright year.
Tobias Burnus [Mon, 9 Jan 2012 16:22:51 +0000 (17:22 +0100)]
gfortran.texi: Bump copyright year.

2012-01-09  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi: Bump copyright year.
        (Fortran 2003 Status): Update polymorphism item, add
        item for generic interface with DT name.

From-SVN: r183018

12 years agoBuild 64-bit libffi multilib for i?86-linux
Rainer Orth [Mon, 9 Jan 2012 16:20:18 +0000 (16:20 +0000)]
Build 64-bit libffi multilib for i?86-linux

* configure.ac (i?86-*-*): Set TARGET to X86_64.
* configure: Regenerate.

From-SVN: r183017

12 years agoLink libgfortran with -shared-libgcc
Rainer Orth [Mon, 9 Jan 2012 16:02:36 +0000 (16:02 +0000)]
Link libgfortran with -shared-libgcc

* Makefile.am (libgfortran_la_LDFLAGS): Add -Wc,-shared-libgcc.
* Makefile.in: Regenerate.

From-SVN: r183016

12 years agogimple.c (is_gimple_non_addressable): Remove.
Aldy Hernandez [Mon, 9 Jan 2012 15:14:19 +0000 (15:14 +0000)]
gimple.c (is_gimple_non_addressable): Remove.

        * gimple.c (is_gimple_non_addressable): Remove.
        * gimple.h: Remove is_gimple_non_addressable.
        * gimplify.c (gimplify_modify_expr_rhs): Use is_gimple_reg instead of
        is_gimple_non_addressable.
        * trans-mem.c (expand_assign_tm): Same.

From-SVN: r183015

12 years agomacro.c (_cpp_builtin_macro_text): Remove unused variable map.
Richard Guenther [Mon, 9 Jan 2012 14:15:25 +0000 (14:15 +0000)]
macro.c (_cpp_builtin_macro_text): Remove unused variable map.

2012-01-09  Richard Guenther  <rguenther@suse.de>

* macro.c (_cpp_builtin_macro_text): Remove unused variable map.

From-SVN: r183013

12 years agore PR tree-optimization/51775 (FAIL: gnat.dg/pack9.adb scan-tree-dump-not optimized...
Richard Guenther [Mon, 9 Jan 2012 14:06:31 +0000 (14:06 +0000)]
re PR tree-optimization/51775 (FAIL: gnat.dg/pack9.adb scan-tree-dump-not optimized "gnat_rcheck")

2012-01-09  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/51775
* tree-ssa-sccvn.c (visit_use): Value-number throwing stmts.
* tree-ssa-pre.c (eliminate): Properly fixup EH info.

From-SVN: r183012

12 years agoarm-cores.def (cortex-a15): Use cortex_a15_tune for tuning parameters.
Matthew Gretton-Dann [Mon, 9 Jan 2012 13:48:11 +0000 (13:48 +0000)]
arm-cores.def (cortex-a15): Use cortex_a15_tune for tuning parameters.

* gcc/config/arm/arm-cores.def (cortex-a15): Use cortex_a15_tune for
tuning parameters.
* gcc/config/arm/arm.c (arm_cortex_a15_tune): New static variable.

From-SVN: r183011

12 years agore PR fortran/51578 (Import of same symbol via different modules and renaming)
Tobias Burnus [Mon, 9 Jan 2012 13:11:05 +0000 (14:11 +0100)]
re PR fortran/51578 (Import of same symbol via different modules and renaming)

2012-01-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51578
        * gfortran.h (gfc_use_list):
        * match.h (gfc_use_module): Rename to ...
        (gfc_use_modules): ... this.
        * module.c (use_locus, specified_nonint, specified_int): Remove
        global variable.
        (module_name): Change type to const char*, used with gfc_get_string.
        (module_list): New global variable.
        (free_rename): Free argument not global var.
        (gfc_match_use): Save match to module_list.
        (load_generic_interfaces, read_module): Don't free symtree.
        (write_dt_extensions, gfc_dump_module): Fix module-name I/O due to the
        type change of module_name.
        (write_symbol0, write_generic): Optimize due to the type change.
        (import_iso_c_binding_module, use_iso_fortran_env_module): Use
        locus of rename->where.
        (gfc_use_module): Take module_list as argument.
        (gfc_use_modules): New function.
        (gfc_module_init_2, gfc_module_done_2): Init module_list, rename_list.
        * parse.c (last_was_use_stmt): New global variable.
        (use_modules): New function.
        (decode_specification_statement, decode_statement): Move USE match up
        and call use_modules.
        (next_free, next_fixed): Call use_modules.
        (accept_statement): Don't call gfc_module_use.

2012-01-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51578
        * gfortran.dg/use_17.f90: New.

From-SVN: r183010

12 years agoRemove conflict marker
Richard Biener [Mon, 9 Jan 2012 10:13:01 +0000 (10:13 +0000)]
Remove conflict marker

From-SVN: r183008

12 years ago2012-01-09 Richard Guenther <rguenther@suse.de>
Richard Biener [Mon, 9 Jan 2012 10:11:38 +0000 (10:11 +0000)]
2012-01-09  Richard Guenther  <rguenther@suse.de>

        Rotate changelogs.

From-SVN: r183007

12 years agore PR ada/41929 (64-bit null_pointer_deref1 gnat.dg test consumes all available memory)
Eric Botcazou [Mon, 9 Jan 2012 09:50:19 +0000 (09:50 +0000)]
re PR ada/41929 (64-bit null_pointer_deref1 gnat.dg test consumes all available memory)

PR ada/41929
* config/sparc/sol2-unwind.h (sparc64_is_sighandler): Remove SAVPC and
add CFA.  Revert back to old code for Solaris 8+ multi-threaded.
(sparc_is_sighandler): Likewise.
(MD_FALLBACK_FRAME_STATE_FOR): Adjust call to IS_SIGHANDLER.

From-SVN: r183005

12 years agore PR preprocessor/33919 (__BASE_FILE__ does not expand correctly when included from...
Gary Funck [Mon, 9 Jan 2012 08:48:43 +0000 (08:48 +0000)]
re PR preprocessor/33919 (__BASE_FILE__ does not expand correctly when included from the command line)

libcpp/
PR preprocessor/33919
* files.c (_cpp_get_file_name): New. Implement file name
access function.
* internal.h (_cpp_get_file_name): New prototype.
* macro.c (_cpp_builtin_macro_text): Call _cpp_get_file_name()
to use pfile->main_file in lieu of traversing INCLUDED_FROM chain.

gcc/testsuite/
PR preprocessor/33919
* gcc.dg/pr33919.c: New test.
* gcc.dg/pr33919-0.h: New test header file.
* gcc.dg/pr33919-1.h: Ditto.
* gcc.dg/pr33919-2.h: Ditto.

From-SVN: r183003

12 years agotree-streamer-out.c (write_ts_optimization): Fix spelling.
Richard Biener [Mon, 9 Jan 2012 08:41:12 +0000 (08:41 +0000)]
tree-streamer-out.c (write_ts_optimization): Fix spelling.

2012-01-09  Richard Guenther  <rguenther@suse.de>

* tree-streamer-out.c (write_ts_optimization): Fix spelling.

From-SVN: r183002

12 years agoDaily bump.
GCC Administrator [Mon, 9 Jan 2012 00:19:12 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r182999

12 years agore PR tree-optimization/51680 (g++ 4.7 fails to inline trivial template stuff)
Jan Hubicka [Sun, 8 Jan 2012 16:39:00 +0000 (17:39 +0100)]
re PR tree-optimization/51680 (g++ 4.7 fails to inline trivial template stuff)

PR tree-optimize/51680
* ipa-inline-analyss.c (evaluate_properties_for_edge): Fix conditoin on when
known_vals needs to be computed; cleanup.

From-SVN: r182995

12 years ago* ipa-inline.c (want_inline_small_function_p): Fix formating.
Jan Hubicka [Sun, 8 Jan 2012 16:33:39 +0000 (16:33 +0000)]
* ipa-inline.c (want_inline_small_function_p): Fix formating.

From-SVN: r182994

12 years agore PR tree-optimization/51694 (ICE while compiling alliance package)
Jan Hubicka [Sun, 8 Jan 2012 16:32:49 +0000 (17:32 +0100)]
re PR tree-optimization/51694 (ICE while compiling alliance package)

PR tree-optimize/51694
* ipa-cp.c (ipa_get_indirect_edge_target): Add bounds checks.

From-SVN: r182993

12 years agolibitm: Optimize undo log.
Torvald Riegel [Sun, 8 Jan 2012 14:13:49 +0000 (14:13 +0000)]
libitm: Optimize undo log.

libitm/
* local.cc (GTM_LB): Use GTM::gtm_undolog.
(GTM::gtm_thread::drop_references_undolog): Remove.
(GTM::gtm_thread::commit_undolog,
GTM::gtm_thread::rollback_undolog): Move to ...
* libitm_i.h (GTM::gtm_undolog): ...here. New.
(GTM::gtm_undolog_entry): Remove.
(GTM::gtm_thread): Adapt.
* beginend.cc (GTM::gtm_thread::rollback): Adapt.
(GTM::gtm_thread::trycommit): Adapt.
* method-serial.cc (serial_dispatch::log): Adapt.
* method-gl.cc (gl_wt_dispatch::pre_write): Adapt.
(gl_wt_dispatch::store): Fix likely/unlikely.
* containers.h (GTM::vector::resize): Add additional_capacity
parameter and handle it.
(GTM::vector::resize_noinline): New/adapt.
(GTM::vector::push): New.

From-SVN: r182992

12 years agocpp.texi (Predefined Macros): __STRICT_ANSI__ is defined for -std=c++98 and -std...
Jonathan Wakely [Sun, 8 Jan 2012 13:24:42 +0000 (13:24 +0000)]
cpp.texi (Predefined Macros): __STRICT_ANSI__ is defined for -std=c++98 and -std=c++11 too.

2012-01-08  Jonathan Wakely  <jwakely.gcc@gmail.com>

* doc/cpp.texi (Predefined Macros): __STRICT_ANSI__ is defined
for -std=c++98 and -std=c++11 too.

From-SVN: r182991

12 years agocfgloop.c (cancel_loop): Add free() of bbs array.
Chung-Lin Tang [Sun, 8 Jan 2012 13:19:05 +0000 (13:19 +0000)]
cfgloop.c (cancel_loop): Add free() of bbs array.

2012-01-08  Chung-Lin Tang  <cltang@codesourcery.com>

* cfgloop.c (cancel_loop): Add free() of bbs array.

From-SVN: r182990

12 years agoprinters.py (StdForwardListPrinter): Add.
Jonathan Wakely [Sun, 8 Jan 2012 12:34:00 +0000 (12:34 +0000)]
printers.py (StdForwardListPrinter): Add.

* python/libstdcxx/v6/printers.py (StdForwardListPrinter): Add.
* testsuite/libstdc++-prettyprinters/cxx11.cc: New.

From-SVN: r182989

12 years agoDaily bump.
GCC Administrator [Sun, 8 Jan 2012 00:19:44 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r182988

12 years agore PR tree-optimization/51600 (ice in estimate_local_effects)
Jan Hubicka [Sun, 8 Jan 2012 00:16:18 +0000 (01:16 +0100)]
re PR tree-optimization/51600 (ice in estimate_local_effects)

PR tree-optimization/51600
* ipa-inline-analysis.c (estimate_edge_devirt_benefit): Disable code
that benefits small functions.

From-SVN: r182984

12 years agore PR tree-optimization/51680 (g++ 4.7 fails to inline trivial template stuff)
Jan Hubicka [Sat, 7 Jan 2012 23:35:08 +0000 (00:35 +0100)]
re PR tree-optimization/51680 (g++ 4.7 fails to inline trivial template stuff)

PR tree-optimization/51680
* ipa-inline.c (want_inline_small_function_p): Be more lax on functions
whose inlining reduce unit size.

From-SVN: r182983

12 years agore PR bootstrap/51725 (segfault in stage 3 when compiling gcc/opts.c for sparc64...
Alexandre Oliva [Sat, 7 Jan 2012 21:37:15 +0000 (21:37 +0000)]
re PR bootstrap/51725 (segfault in stage 3 when compiling gcc/opts.c for sparc64-linux)

PR bootstrap/51725
* cselib.c (new_elt_loc_list): Promote addr_list to canonical node.
Add canonical node to containing_mem chain after the non-canonical
one, even if there weren't any locs to propagate.
(remove_useless_values): Keep only canonical values.
(add_mem_for_addr, cselib_lookup_mem): Canonicalize addr.
(cselib_invalidate_mem): Likewise.  Ensure v is canonical, and
canonicalize mem_chain elements that are not discarded.

From-SVN: r182982

12 years agore PR gcov-profile/51715 (FAIL: gcc.misc-tests/gcov-13.c execution test)
John David Anglin [Sat, 7 Jan 2012 15:27:15 +0000 (15:27 +0000)]
re PR gcov-profile/51715 (FAIL: gcc.misc-tests/gcov-13.c execution test)

PR gcov-profile/51715
PR gcov-profile/51717
* gcc.misc-tests/gcov-13.c: Skip on 32-bit hppa*-*-hpux*.
* gcc.misc-tests/gcov-14.c: Likewise.

From-SVN: r182981

12 years agoDaily bump.
GCC Administrator [Sat, 7 Jan 2012 00:19:15 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r182979

12 years agoDR 686 PR c++/47450
Jason Merrill [Fri, 6 Jan 2012 23:19:05 +0000 (18:19 -0500)]
DR 686 PR c++/47450

DR 686
PR c++/47450
* parser.c (cp_parser_new_expression): Set
type_definition_forbidden_message.

From-SVN: r182975

12 years agore PR target/47333 (g++.dg/lto/20091219 FAILs on Solaris 2 with SUN as)
Jakub Jelinek [Fri, 6 Jan 2012 22:06:08 +0000 (23:06 +0100)]
re PR target/47333 (g++.dg/lto/20091219 FAILs on Solaris 2 with SUN as)

PR target/47333
* cgraphunit.c (cgraph_optimize): Call output_weakrefs
before emitting functions.

From-SVN: r182974

12 years agore PR gcov-profile/50127 (g++.dg/tree-prof/partition2.C FAILs on several targets)
Jakub Jelinek [Fri, 6 Jan 2012 22:05:03 +0000 (23:05 +0100)]
re PR gcov-profile/50127 (g++.dg/tree-prof/partition2.C FAILs on several targets)

PR gcov-profile/50127
* bb-reorder.c (partition_hot_cold_basic_blocks): Call
clear_aux_for_blocks.

From-SVN: r182973

12 years agore PR testsuite/51655 (FAIL: c-c++-common/tm/memcpy-1.c (test for excess errors))
Patrick Marlier [Fri, 6 Jan 2012 21:58:44 +0000 (21:58 +0000)]
re PR testsuite/51655 (FAIL: c-c++-common/tm/memcpy-1.c (test for excess errors))

PR testsuite/51655
        * c-c++-common/tm/memcpy-1.c: Declare memcpy instead of
        including <string.h>.

From-SVN: r182972

12 years agocompiler, runtime: Implement struct and array comparisons.
Ian Lance Taylor [Fri, 6 Jan 2012 21:47:49 +0000 (21:47 +0000)]
compiler, runtime: Implement struct and array comparisons.

From-SVN: r182971

12 years agore PR c++/6057 (expression mangling doesn't work for operator new)
Jason Merrill [Fri, 6 Jan 2012 21:39:43 +0000 (16:39 -0500)]
re PR c++/6057 (expression mangling doesn't work for operator new)

PR c++/6057
PR c++/48051
PR c++/50855
PR c++/51322
gcc/cp/
* mangle.c (write_expression): Support NEW_EXPR, DELETE_EXPR,
THROW_EXPR, CONSTRUCTOR, OVERLOAD.  Fix PREINCREMENT_EXPR and
PREDECREMENT_EXPR.
(write_template_arg): Fix mangling of class-scope functions and
argument packs.
(mangle_decl): Update suggested -fabi-version argument.
* operators.def: Add DOTSTAR_EXPR, REINTERPRET_CAST_EXPR,
DYNAMIC_CAST_EXPR; correct CONST_CAST_EXPR, STATIC_CAST_EXPR.
* tree.c (dependent_name): No longer static.
* cp-tree.h: Declare it.
* pt.c (unify): Defer handling of unconverted functions.
include/
* demangle.h (enum demangle_component_type): Add
DEMANGLE_COMPONENT_INITIALIZER_LIST, DEMANGLE_COMPONENT_NULLARY.
libiberty/
* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_NULLARY and
DEMANGLE_COMPONENT_INITIALIZER_LIST.
(d_make_comp): Likewise.  Allow null right arg for
DEMANGLE_COMPONENT_TRINARY_ARG2.
(cplus_demangle_operators): Adjust new/delete; add .*, :: and throw.
(d_template_args, d_template_arg): Handle 'J' for argument packs.
(d_exprlist): Add terminator parm.
(d_expression, d_print_comp): Handle initializer lists, nullary
expressions, prefix/suffix operators, and new.
(d_print_subexpr): Avoid parens around DEMANGLE_COMPONENT_QUAL_NAME
and DEMANGLE_COMPONENT_INITIALIZER_LIST.
* testsuite/demangle-expected: Add tests.

From-SVN: r182970

12 years agocp-demangle.c (cplus_demangle_type): decltype, pack expansion and vector are substitu...
Jason Merrill [Fri, 6 Jan 2012 21:39:34 +0000 (16:39 -0500)]
cp-demangle.c (cplus_demangle_type): decltype, pack expansion and vector are substitutable.

* cp-demangle.c (cplus_demangle_type): decltype, pack expansion
and vector are substitutable.
(cplus_demangle_operators): Sort.

From-SVN: r182969

12 years agomangle.c (mangle_decl): Don't generate mangling aliases for maybe-in-charge [cd]tors.
Jason Merrill [Fri, 6 Jan 2012 21:39:27 +0000 (16:39 -0500)]
mangle.c (mangle_decl): Don't generate mangling aliases for maybe-in-charge [cd]tors.

* mangle.c (mangle_decl): Don't generate mangling aliases
for maybe-in-charge [cd]tors.

From-SVN: r182968

12 years ago* error.c (dump_expr): Print type of CONSTRUCTOR.
Jason Merrill [Fri, 6 Jan 2012 21:39:19 +0000 (16:39 -0500)]
* error.c (dump_expr): Print type of CONSTRUCTOR.

From-SVN: r182967

12 years agocorrect comment
Jason Merrill [Fri, 6 Jan 2012 21:39:07 +0000 (16:39 -0500)]
correct comment

From-SVN: r182965

12 years agore PR debug/51746 (Segfault in cselib_preserved_value_p)
Alexandre Oliva [Fri, 6 Jan 2012 20:20:55 +0000 (20:20 +0000)]
re PR debug/51746 (Segfault in cselib_preserved_value_p)

PR debug/51746
* cselib.c (cselib_hash_rtx): Hash incoming VALUEs too.

From-SVN: r182963

12 years agore PR lto/51774 (FAIL: gcc.dg/lto/trans-mem-* c_lto_trans-mem-1_0.o-c_lto_trans-mem...
Jakub Jelinek [Fri, 6 Jan 2012 16:48:52 +0000 (17:48 +0100)]
re PR lto/51774 (FAIL: gcc.dg/lto/trans-mem-* c_lto_trans-mem-1_0.o-c_lto_trans-mem-1_1.o link, -flto -fgnu-tm)

PR lto/51774
* lto-lang.c (handle_returns_twice_attribute): New function.
(lto_attribute_table): Add returns_twice attribute.

From-SVN: r182959

12 years ago[multiple changes]
Arnaud Charlet [Fri, 6 Jan 2012 14:48:05 +0000 (15:48 +0100)]
[multiple changes]

2012-01-06  Robert Dewar  <dewar@adacore.com>

* a-wichha.ads, a-wichun.ads, a-zchhan.ads, a-zchuni.ads,
s-utf_32.ads: Add pragma Pure
* s-utf_32.adb: Suppress warnings on non-static constants (now
that this is Pure).

2012-01-06  Bob Duff  <duff@adacore.com>

* s-rpc.ads (Read, Write): Add overriding indicators.

2012-01-06  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Add documentation for conventions
Ada_Pass_By_Copy and Ada_Pass_By_Reference.

2012-01-06  Gary Dismukes  <dismukes@adacore.com>

* a-tienio.adb (Put): Add exception message on
raise statements. Remove unneeded blocks and object declarations.

2012-01-06  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb: Minor reformatting.

2012-01-06  Ed Schonberg  <schonberg@adacore.com>

* sinfo.ads, sinfo.adb (Has_Prefixed_Call): New flag to indicate
that a selected component within a generic unit has been resolved
as a prefixed call with local references.
* sem_ch3.adb (Is_Visible_Component): In an instance body a selected
component is always visible.
* sem_ch4.adb (Analyze_Selected_Component): If the node is a
prefixed call in an instance, do not look for visible components
of the type.
* sem_ch12.adb (Reset_Entity): If a selected component has resolved
to a prefixed call, mark the node accordingly when prefix and
selector are local references.

From-SVN: r182954