platform/upstream/gcc.git
11 years agore PR target/45070 (Miscompiled c++ class with packed attribute on ARM with -Os optim...
Bin Cheng [Tue, 4 Sep 2012 09:36:44 +0000 (09:36 +0000)]
re PR target/45070 (Miscompiled c++ class with packed attribute on ARM with -Os optimizations (Qt 4.6.2))

PR target/45070
* config/arm/arm.c (thumb1_extra_regs_pushed): Handle return value of size
less than 4 bytes by using macro ARM_NUM_INTS.
(thumb1_unexpanded_epilogue): Use macro ARM_NUM_INTS.

From-SVN: r190919

11 years agore PR tree-optimization/54458 (ICE get_loop_body, at cfgloop.c:830)
Richard Guenther [Tue, 4 Sep 2012 09:28:58 +0000 (09:28 +0000)]
re PR tree-optimization/54458 (ICE get_loop_body, at cfgloop.c:830)

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

PR tree-optimization/54458
* tree-ssa-threadupdate.c (thread_through_loop_header): If we
turn the loop into one with multiple latches mark it so.

* gcc.dg/torture/pr54458.c: New testcase.

From-SVN: r190918

11 years agore PR target/54220 ([avr] Potential stack corruption in naked functions at -O0)
Senthil Kumar Selvaraj [Tue, 4 Sep 2012 09:08:50 +0000 (09:08 +0000)]
re PR target/54220 ([avr] Potential stack corruption in naked functions at -O0)

PR target/54220
* config/avr/avr.c (TARGET_ALLOCATE_STACK_SLOTS_FOR_ARGS): New
define to...
(avr_allocate_stack_slots_for_args): ...this new static function.

From-SVN: r190914

11 years agoarm.c (arm_expand_builtin): Replace gen_rtx_CONST_INT by GEN_INT.
Christophe Lyon [Tue, 4 Sep 2012 08:35:19 +0000 (08:35 +0000)]
arm.c (arm_expand_builtin): Replace gen_rtx_CONST_INT by GEN_INT.

2012-09-04  Christophe Lyon  <christophe.lyon@linaro.org>

* config/arm/arm.c (arm_expand_builtin): Replace gen_rtx_CONST_INT
by GEN_INT.
(arm_emit_coreregs_64bit_shift): Likewise.

From-SVN: r190912

11 years agoarm.c (arm_evpc_neon_vext): New function.
Christophe Lyon [Tue, 4 Sep 2012 08:32:39 +0000 (08:32 +0000)]
arm.c (arm_evpc_neon_vext): New function.

2012-09-04  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/
* config/arm/arm.c (arm_evpc_neon_vext): New
function.
(arm_expand_vec_perm_const_1): Add call to
arm_evpc_neon_vext.

gcc/testsuite/
* gcc.target/arm/neon-vext.c: New test.
* gcc.target/arm/neon-vext-execute.c: Ditto.

From-SVN: r190911

11 years agore PR fortran/54435 (ICE with SELECT TYPE on a non-CLASS object)
Janus Weil [Tue, 4 Sep 2012 08:03:09 +0000 (10:03 +0200)]
re PR fortran/54435 (ICE with SELECT TYPE on a non-CLASS object)

2012-09-04  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54435
PR fortran/54443
* match.c (gfc_match_select_type): Make sure to only access CLASS_DATA
for BT_CLASS.

2012-09-04  Janus Weil  <janus@gcc.gnu.org>

PR fortran/54243
PR fortran/54244
* gfortran.dg/select_type_29.f03: New.

From-SVN: r190910

11 years agore PR target/51244 ([SH] Inefficient conditional branch and code around T bit)
Oleg Endo [Tue, 4 Sep 2012 08:03:01 +0000 (08:03 +0000)]
re PR target/51244 ([SH] Inefficient conditional branch and code around T bit)

PR target/51244
* config/sh/sh.c (prepare_cbranch_operands): Pull out comparison
canonicalization code into...
* (sh_canonicalize_comparison): This new function.
* config/sh/sh-protos.h: Declare it.
* config/sh/sh.h: Use it in new macro CANONICALIZE_COMPARISON.
* config/sh/sh.md (cbranchsi4): Remove TARGET_CBRANCHDI4 check and
always invoke expand_cbranchsi4.

From-SVN: r190909

11 years agoDaily bump.
GCC Administrator [Tue, 4 Sep 2012 00:18:16 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r190908

11 years agoFix bootstrap-lto
Andi Kleen [Mon, 3 Sep 2012 22:00:13 +0000 (22:00 +0000)]
Fix bootstrap-lto

gcc/

2012-09-03  Andi Kleen <ak@linux.intel.com>

* tree-ssa-sccvn.c (vn_reference_fold_indirect): Initialize
addr_offset always.

From-SVN: r190905

11 years agore PR tree-optimization/53395 (The LAPACK functions i(d|s)amax are more than two...
Andrew Pinski [Mon, 3 Sep 2012 20:31:52 +0000 (20:31 +0000)]
re PR tree-optimization/53395 (The LAPACK functions i(d|s)amax are more than two times slower after revision 187183)

2012-09-03  Andrew Pinski  <apinski@cavium.com>

PR tree-opt/53395
* tree-if-conv.c (constant_or_ssa_name): New function.
(fold_build_cond_expr): New function.
(predicate_scalar_phi): Use fold_build_cond_expr instead of build3.
(predicate_mem_writes): Likewise.

From-SVN: r190904

11 years agofold-const.c (fold_ternary_loc): Constant-propagate after removing dead operands.
Marc Glisse [Mon, 3 Sep 2012 17:31:38 +0000 (19:31 +0200)]
fold-const.c (fold_ternary_loc): Constant-propagate after removing dead operands.

2012-09-03  Marc Glisse  <marc.glisse@inria.fr>

gcc/
* fold-const.c (fold_ternary_loc): Constant-propagate after
removing dead operands.

gcc/testsuite/
* gcc.dg/fold-perm.c: Improve test.

From-SVN: r190901

11 years agore PR tree-optimization/46590 (long compile time with -O2 and many loops)
Michael Matz [Mon, 3 Sep 2012 15:39:15 +0000 (15:39 +0000)]
re PR tree-optimization/46590 (long compile time with -O2 and many loops)

PR tree-optimization/46590
* tree-cfg.c (gimple_duplicate_sese_region): Don't update
SSA web here ...
* tree-ssa-loop-ch.c (copy_loop_headers): ... but here.

From-SVN: r190897

11 years agoinvoke.texi: Fix numerous typos and punctuation/grammatical errors throughout the...
Sandra Loosemore [Mon, 3 Sep 2012 15:29:22 +0000 (11:29 -0400)]
invoke.texi: Fix numerous typos and punctuation/grammatical errors throughout the file.

2012-09-03  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* doc/invoke.texi: Fix numerous typos and punctuation/grammatical
errors throughout the file.  Re-word some awkward sentences and
paragraphs.

From-SVN: r190896

11 years agore PR bootstrap/54138 (configuring --without-cloog but executable links against syste...
Richard Guenther [Mon, 3 Sep 2012 14:40:17 +0000 (14:40 +0000)]
re PR bootstrap/54138 (configuring --without-cloog but executable links against system cloog)

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

PR bootstrap/54138
* configure.ac: Re-organize ISL / CLOOG checks to allow
disabling with either --without-isl or --without-cloog.
* configure: Regenerated.
* config/cloog.m4: Adjust.
* config/isl.m4: Adjust.

From-SVN: r190895

11 years agore PR fortran/54467 (f951: internal compiler error: in gfc_add_component_ref, at...
Tobias Burnus [Mon, 3 Sep 2012 14:06:27 +0000 (16:06 +0200)]
re PR fortran/54467 (f951: internal compiler error: in gfc_add_component_ref, at fortran/class.c:213)

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

        PR fortran/54467
        * class.c (gfc_find_derived_vtab): Fix disabling of _final
        by continuing to generate normal type-bound procedures.

From-SVN: r190892

11 years agore PR middle-end/54362 (COND_EXPR not understood by either alias or ITM)
Richard Biener [Mon, 3 Sep 2012 13:24:07 +0000 (13:24 +0000)]
re PR middle-end/54362 (COND_EXPR not understood by either alias or ITM)

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

PR tree-optimization/54362
* tree-ssa-structalias.c (find_func_aliases): Handle COND_EXPR.

From-SVN: r190889

11 years agoconfigure.ac (noconfigdirs,target=avr): Add target-libquadmath.
Georg-Johann Lay [Mon, 3 Sep 2012 12:10:40 +0000 (12:10 +0000)]
configure.ac (noconfigdirs,target=avr): Add target-libquadmath.

* configure.ac (noconfigdirs,target=avr): Add target-libquadmath.
* configure: Regenerate.

From-SVN: r190887

11 years agos390.c (s390_loadrelative_operand_p): New function.
Andreas Krebbel [Mon, 3 Sep 2012 11:46:56 +0000 (11:46 +0000)]
s390.c (s390_loadrelative_operand_p): New function.

2012-09-03  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

* config/s390/s390.c (s390_loadrelative_operand_p): New function.
(s390_check_qrst_address, print_operand_address): Use
s390_loadrelative_operand_p instead of s390_symref_operand_p.
(s390_check_symref_alignment): Accept pointer size alignment for GOT slots.
(legitimize_pic_address): Use load relative on z10 or later.

From-SVN: r190884

11 years agore PR debug/53923 (ICE: RTL check: expected code 'reg', have 'debug_expr' in rhs_regn...
Jakub Jelinek [Mon, 3 Sep 2012 11:42:31 +0000 (13:42 +0200)]
re PR debug/53923 (ICE: RTL check: expected code 'reg', have 'debug_expr' in rhs_regno, at rtl.h:1091)

PR debug/53923
* valtrack.c (dead_debug_insert_temp): Drop non-reg uses
from the chain.

From-SVN: r190883

11 years agocommon.opt (--no-sysroot-suffix): New driver option.
Joseph Myers [Mon, 3 Sep 2012 11:34:22 +0000 (12:34 +0100)]
common.opt (--no-sysroot-suffix): New driver option.

* common.opt (--no-sysroot-suffix): New driver option.
* doc/invoke.texi (--no-sysroot-suffix): Document.
* gcc.c (driver_handle_option): Handle --no-sysroot-suffix as not
needing spec processing.
(main): Do not process sysroot suffixes if no_sysroot_suffix.

From-SVN: r190882

11 years agoclass.c (gfc_find_derived_vtab): Disable ABI-breaking generation of the "_final"...
Tobias Burnus [Mon, 3 Sep 2012 07:51:05 +0000 (09:51 +0200)]
class.c (gfc_find_derived_vtab): Disable ABI-breaking generation of the "_final" subroutine for now.

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

        * class.c (gfc_find_derived_vtab): Disable ABI-breaking
        generation of the "_final" subroutine for now.

From-SVN: r190872

11 years agoclass.c (finalize_component): Fixes to the comment.
Tobias Burnus [Mon, 3 Sep 2012 06:45:35 +0000 (08:45 +0200)]
class.c (finalize_component): Fixes to the comment.

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

        * class.c (finalize_component): Fixes to the comment.

From-SVN: r190870

11 years ago[multiple changes]
Tobias Burnus [Mon, 3 Sep 2012 06:35:59 +0000 (08:35 +0200)]
[multiple changes]

2012-09-03  Alessandro Fanfarillo  <fanfarillo.gcc@gmail.com>
            Tobias Burnus  <burnus@net-b.de>

        PR fortran/37336
        * gfortran.h (symbol_attribute): Add artificial.
        * module.c (mio_symbol_attribute): Handle attr.artificial
        * class.c (gfc_build_class_symbol): Defer creation of the vtab
        if the DT has finalizers, mark generated symbols as
        attr.artificial.
        (has_finalizer_component, finalize_component,
        finalization_scalarizer, generate_finalization_wrapper):
        New static functions.
        (gfc_find_derived_vtab): Add _final component and call
        generate_finalization_wrapper.
        * dump-parse-tree.c (show_f2k_derived): Use resolved
        proc_tree->n.sym rather than unresolved proc_sym.
        (show_attr): Handle attr.artificial.
        * resolve.c (gfc_resolve_finalizers): Ensure that the vtab
        * exists.
        (resolve_fl_derived): Resolve finalizers before
        generating the vtab.
        (resolve_symbol): Also allow assumed-rank arrays with CONTIGUOUS;
        skip artificial symbols.
        (resolve_fl_derived0): Skip artificial symbols.

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

        PR fortran/51632
        * gfortran.dg/coarray_class_1.f90: New.

From-SVN: r190869

11 years agoDaily bump.
GCC Administrator [Mon, 3 Sep 2012 00:17:29 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r190868

11 years agore PR target/33135 ([SH] -ffinite-math-only should not be on by default)
Oleg Endo [Sun, 2 Sep 2012 23:18:08 +0000 (23:18 +0000)]
re PR target/33135 ([SH] -ffinite-math-only should not be on by default)

PR target/33135
* common/config/sh/sh-common.c: Update copyright years.
(sh_option_init_struct): Delete.
(TARGET_OPTION_INIT_STRUCT): Likewise.

From-SVN: r190865

11 years agore PR target/54418 ([SH] Invalid operands for opcode)
Oleg Endo [Sun, 2 Sep 2012 23:15:25 +0000 (23:15 +0000)]
re PR target/54418 ([SH] Invalid operands for opcode)

PR target/54418
* config/sh/sh.md (cmpgeusi_t): Remove N alternative.
Check operands[1] in split condition instead of operands[0].
Add comments.

From-SVN: r190864

11 years agoconfig.host (x86_64-*-openbsd*): New target.
Mark Kettenis [Sun, 2 Sep 2012 14:13:21 +0000 (14:13 +0000)]
config.host (x86_64-*-openbsd*): New target.

libgcc/

* config.host (x86_64-*-openbsd*): New target.

gcc/

* config.gcc (x86_64-*-openbsd*): New target.
* config.host (*-*-openbsd*): New target.
* config/openbsd.h (TARGET_C99_FUNCTIONS): Define.
* config/i386/openbsdelf.h: Remove some superfluous defines and
group things together in a more logical fashion.
(DBX_REGISTER_NUMBER): Provide a
definition that works on both 32-bit and 64-bit targets.
(WCHAR_TYPE_SIZE): Hardcode as 32.
(NO_DOLLAR_IN_LABEL): Remove undef.
(TARGET_DEFAULT): Remove.
(SET_ASM_OP): Remove.
(DEFAULT_PCC_STRUCT_RETURN): Undef first to prevent warning.
(ASM_OUTPUT_MAX_SKIP_ALIGN): Synch with x86-64.h
(DWARF2_UNWIND_INFO): Remove define.
(HAVE_ENABLE_EXECUTE_STACK): Define.
* config/host-openbsd.c: New file.
* config/t-openbsd (USER_H): Add EXTRA_HEADERS.
* config/x-openbsd: New file.

From-SVN: r190863

11 years agosh.md (*extend<mode>si2_compact_mem_disp): Pass iterated mode to sh_legitimate_index_...
Oleg Endo [Sun, 2 Sep 2012 13:05:10 +0000 (13:05 +0000)]
sh.md (*extend<mode>si2_compact_mem_disp): Pass iterated mode to sh_legitimate_index_p instead of QImode.

* config/sh/sh.md (*extend<mode>si2_compact_mem_disp): Pass iterated
mode to sh_legitimate_index_p instead of QImode.

From-SVN: r190862

11 years agosync.md (atomic_compare_and_swap<dwi>_doubleword): Improve insn output code.
Uros Bizjak [Sun, 2 Sep 2012 11:08:33 +0000 (13:08 +0200)]
sync.md (atomic_compare_and_swap<dwi>_doubleword): Improve insn output code.

* config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
Improve insn output code.

From-SVN: r190861

11 years agore PR rtl-optimization/54369 (delayed-branch pass removes too many instructions)
Eric Botcazou [Sun, 2 Sep 2012 10:36:27 +0000 (10:36 +0000)]
re PR rtl-optimization/54369 (delayed-branch pass removes too many instructions)

PR rtl-optimization/54369
* config/mips/mips.c (mips_reorg): Invoke cleanup_barriers before
calling dbr_schedule.
* config/sparc/sparc.c (sparc_reorg): Likewise.

From-SVN: r190858

11 years agore PR target/49206 (RA failure in spill_failure, at reload1.c:2113)
Uros Bizjak [Sun, 2 Sep 2012 08:49:31 +0000 (10:49 +0200)]
re PR target/49206 (RA failure in spill_failure, at reload1.c:2113)

PR target/49206
* gcc.c-torture/compile/pr49206.c: New test.

From-SVN: r190857

11 years ago* gcc.c-torture/compile/pr44687.c: Fix whitespace.
Uros Bizjak [Sun, 2 Sep 2012 08:42:45 +0000 (10:42 +0200)]
* gcc.c-torture/compile/pr44687.c: Fix whitespace.

From-SVN: r190856

11 years agore PR target/36680 (ICE in spill_failure, reload1.c:1995)
Dominique d'Humieres [Sun, 2 Sep 2012 08:10:21 +0000 (10:10 +0200)]
re PR target/36680 (ICE in spill_failure, reload1.c:1995)

PR target/36680
* gfortran.dg/pr36680.f90: New test.

Co-Authored-By: Uros Bizjak <ubizjak@gmail.com>
From-SVN: r190855

11 years agore PR target/42295 (ICE: 'error: unable to find a register to spill in class "AREG...
Uros Bizjak [Sun, 2 Sep 2012 07:07:45 +0000 (09:07 +0200)]
re PR target/42295 (ICE: 'error: unable to find a register to spill in class "AREG"' with -fschedule-insns)

PR target/42295
* g++.dg/opt/pr42295.C: New test.

From-SVN: r190854

11 years agore PR fortran/54426 (FAIL: gfortran.dg/common_6.f90 -O (internal compiler error...
Tobias Burnus [Sun, 2 Sep 2012 06:40:27 +0000 (08:40 +0200)]
re PR fortran/54426 (FAIL: gfortran.dg/common_6.f90  -O  (internal compiler error) on powerpc-apple-darwin9)

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

        PR fortran/54426
        * symbol.c (find_common_symtree): New function.
        (gfc_undo_symbols): Use it; free common_head if needed.

From-SVN: r190853

11 years agoDaily bump.
GCC Administrator [Sun, 2 Sep 2012 00:17:49 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r190852

11 years agore PR target/54436 (Compiling some regular C++ code gives assembler '700415 shortened...
Jakub Jelinek [Sat, 1 Sep 2012 19:09:02 +0000 (21:09 +0200)]
re PR target/54436 (Compiling some regular C++ code gives assembler '700415 shortened to 255' warning)

PR target/54436
* config/i386/i386.md (*mov<mode>_insv_1_rex64, *movsi_insv_1): If
operands[1] is CONST_INT_P, convert it to QImode before printing.

* gcc.dg/torture/pr54436.c: New test.

From-SVN: r190849

11 years agosimplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>): A truncate of a memory...
Andrew Pinski [Sat, 1 Sep 2012 18:52:19 +0000 (18:52 +0000)]
simplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>): A truncate of a memory is just loading the low part of the memory.

2012-09-01  Andrew Pinski  <apinski@cavium.com>

* simplify-rtx.c (simplify_unary_operation_1 <case TRUNCATE>):
A truncate of a memory is just loading the low part of the memory.

2012-09-01  Andrew Pinski  <apinski@cavium.com>

        * gcc.target/mips/truncate-8.c: New testcase.

From-SVN: r190848

11 years agore PR target/46829 (ICE: in spill_failure, at reload1.c:2105 with -fschedule-insns...
Uros Bizjak [Sat, 1 Sep 2012 14:29:45 +0000 (16:29 +0200)]
re PR target/46829 (ICE: in spill_failure, at reload1.c:2105 with -fschedule-insns -fsched-pressure and variadic function)

PR target/46829
PR target/46843
* config/i386/i386.c (ix86_legitimate_combined_insn): New function.
(TARGET_LEGITIMATE_COMBINED_INSN): New macro.

testsuite/ChangeLog:

PR target/46829
PR target/46843
* gcc.target/i386/pr46829.c: New test.
* gcc.target/i386/pr46843.c: Ditto.

From-SVN: r190847

11 years agotarget.def (legitimate_combined_insn): New target hook.
Uros Bizjak [Sat, 1 Sep 2012 14:26:28 +0000 (16:26 +0200)]
target.def (legitimate_combined_insn): New target hook.

* target.def (legitimate_combined_insn): New target hook.
* doc/tm.texi.in (TARGET_LEGITIMATE_COMBINED_INSN): New hook.
* doc/tm.texi: Regenerated.
* combine.c (recog_for_combine): Call targetm.legitimate_combined_insn
to allow targets to reject combined insn.
* hooks.h (hook_bool_rtx_true): New.
* hooks.c (hook_bool_rtx_true): Ditto.

From-SVN: r190846

11 years agoDaily bump.
GCC Administrator [Sat, 1 Sep 2012 00:17:53 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r190845

11 years agore PR c++/18747 ("template<> int i;" accepted)
Paolo Carlini [Fri, 31 Aug 2012 21:35:33 +0000 (21:35 +0000)]
re PR c++/18747 ("template<> int i;" accepted)

PR c++/18747
* pt.c (check_template_variable): New.
(num_template_headers_for_class): Split out...
* decl.c (grokdeclarator): ...from here.
(start_decl): Remove redundant diagnostic.
* cp-tree.h: Declare them
* parser.c (cp_parser_single_declaration): Call check_template_variable.
.
Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r190842

11 years agoipa-inline-analysis.c (estimate_function_body_sizes): Allocate nonconstant_names...
Martin Jambor [Fri, 31 Aug 2012 19:16:21 +0000 (21:16 +0200)]
ipa-inline-analysis.c (estimate_function_body_sizes): Allocate nonconstant_names after calculate_dominance_info and loop_optimizer_init.

2012-08-31  Martin Jambor  <mjambor@suse.cz>

* ipa-inline-analysis.c (estimate_function_body_sizes): Allocate
nonconstant_names after calculate_dominance_info and
loop_optimizer_init.

From-SVN: r190841

11 years agore PR c/54428 (ICE in gimplify_expr, at gimplify.c:7591)
Jakub Jelinek [Fri, 31 Aug 2012 19:00:59 +0000 (21:00 +0200)]
re PR c/54428 (ICE in gimplify_expr, at gimplify.c:7591)

PR c/54428
* c-convert.c (convert): Don't call fold_convert_loc if
TYPE_MAIN_VARIANT of a COMPLEX_TYPE is the same, unless e
is a COMPLEX_EXPR.  Remove TYPE_MAIN_VARIANT check from
COMPLEX_TYPE -> COMPLEX_TYPE conversion.

* gcc.c-torture/compile/pr54428.c: New test.

From-SVN: r190840

11 years agoarm.c (arm_expand_epilogue): Remove unused variable floats_from_frame.
Greta Yorsh [Fri, 31 Aug 2012 16:42:21 +0000 (17:42 +0100)]
arm.c (arm_expand_epilogue): Remove unused variable floats_from_frame.

gcc/

2012-08-31  Greta Yorsh  <Greta.Yorsh@arm.com>

        * config/arm/arm.c (arm_expand_epilogue): Remove unused variable
        floats_from_frame.

From-SVN: r190838

11 years agore PR c++/54197 (Lifetime of reference not properly extended)
Ollie Wild [Fri, 31 Aug 2012 15:47:29 +0000 (15:47 +0000)]
re PR c++/54197 (Lifetime of reference not properly extended)

2012-08-31  Ollie Wild  <aaw@google.com>

PR c++/54197
* gcc/cp/call.c (extend_ref_init_temps_1): Handle COMPOUND_EXPR trees.
* gcc/testsuite/g++.dg/init/lifetime3.C: New test.

From-SVN: r190834

11 years agore PR middle-end/54409 (internal compiler error: in remap_predicate, at ipa-inline...
Martin Jambor [Fri, 31 Aug 2012 14:05:45 +0000 (16:05 +0200)]
re PR middle-end/54409 (internal compiler error: in remap_predicate, at ipa-inline-analysis.c:2710)

2012-08-31  Martin Jambor  <mjambor@suse.cz>

PR middle-end/54409
* ipa-inline-analysis.c (remap_predicate): Fix the offset_map
checking condition.

* gcc/testsuite/gcc.dg/torture/pr54409.c: New test.

From-SVN: r190833

11 years agoipa-inline-analysis.c (phi_result_unknown_predicate): New function.
Martin Jambor [Fri, 31 Aug 2012 13:48:37 +0000 (15:48 +0200)]
ipa-inline-analysis.c (phi_result_unknown_predicate): New function.

2012-08-31  Martin Jambor  <mjambor@suse.cz>

* ipa-inline-analysis.c (phi_result_unknown_predicate): New function.
(predicate_for_phi_result): Likewise.
(estimate_function_body_sizes): Use the above two functions.

* testsuite/gfortran.dg/pr48636.f90: Add dump scan checks.

From-SVN: r190832

11 years agore PR middle-end/54394 (fatigue2 -flto run time regression)
Martin Jambor [Fri, 31 Aug 2012 13:13:03 +0000 (15:13 +0200)]
re PR middle-end/54394 (fatigue2 -flto run time regression)

2012-08-31  Martin Jambor  <mjambor@suse.cz>

PR middle-end/54394
* ipa-inline-analysis.c (estimate_function_body_sizes): Compute
dominance info and loops whenever optimizing.

From-SVN: r190831

11 years agore PR c++/50545 ([C++0x][DR 1172] SFINAE does not handle an explicit type conversion...
Jason Merrill [Fri, 31 Aug 2012 02:50:28 +0000 (22:50 -0400)]
re PR c++/50545 ([C++0x][DR 1172] SFINAE does not handle an explicit type conversion (functional notation) with a braced-init-list well if target type is not dependent)

PR c++/50545
PR c++/51222
* pt.c (instantiation_dependent_r): New.
(instantiation_dependent_expression_p): New.
(value_dependent_expression_p): Use it.  SCOPE_REF is always dependent.
* semantics.c (finish_decltype_type): Use it.
* cp-tree.h: Declare it.

From-SVN: r190830

11 years agosemantics.c (finish_qualified_id_expr): Handle building up a non-dependent SCOPE_REF...
Jason Merrill [Fri, 31 Aug 2012 02:50:18 +0000 (22:50 -0400)]
semantics.c (finish_qualified_id_expr): Handle building up a non-dependent SCOPE_REF here.

* semantics.c (finish_qualified_id_expr): Handle building up a
non-dependent SCOPE_REF here.
(finish_id_expression): Not here.
* error.c (dump_decl) [SCOPE_REF]: Only pass TFF_UNQUALIFIED_NAME.

From-SVN: r190829

11 years agofriend.c (make_friend_class): Handle template template parameters.
Jason Merrill [Fri, 31 Aug 2012 02:50:08 +0000 (22:50 -0400)]
friend.c (make_friend_class): Handle template template parameters.

* friend.c (make_friend_class): Handle template template parameters.
* parser.c (cp_parser_template_declaration_after_export): Likewise.
* pt.c (tsubst_friend_class): Likewise.
(instantiate_class_template_1): Likewise
* decl.c (check_elaborated_type_specifier): Likewise.
(lookup_and_check_tag): Likewise.

From-SVN: r190828

11 years agopt.c (get_class_bindings): Call coerce_template_parms.
Jason Merrill [Fri, 31 Aug 2012 02:49:52 +0000 (22:49 -0400)]
pt.c (get_class_bindings): Call coerce_template_parms.

* pt.c (get_class_bindings): Call coerce_template_parms.  Add
main_tmpl parameter.
(more_specialized_class): Add main_tmpl parameter.
(most_specialized_class): Adjust calls.

From-SVN: r190827

11 years agodecl.c (cp_finish_decl): Check for invalid multiple initializers even if the initiali...
Jason Merrill [Fri, 31 Aug 2012 02:49:42 +0000 (22:49 -0400)]
decl.c (cp_finish_decl): Check for invalid multiple initializers even if the initializer is dependent.

* decl.c (cp_finish_decl): Check for invalid multiple initializers
even if the initializer is dependent.

From-SVN: r190826

11 years agopt.c (instantiate_template_1): Keep processing_template_decl set if there are depende...
Jason Merrill [Fri, 31 Aug 2012 02:49:33 +0000 (22:49 -0400)]
pt.c (instantiate_template_1): Keep processing_template_decl set if there are dependent args.

* pt.c (instantiate_template_1): Keep processing_template_decl set
if there are dependent args.

From-SVN: r190825

11 years agoDaily bump.
GCC Administrator [Fri, 31 Aug 2012 00:18:02 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r190822

11 years agoChangeLog fixup
Benjamin Kosnik [Thu, 30 Aug 2012 19:25:04 +0000 (19:25 +0000)]
ChangeLog fixup

From-SVN: r190811

11 years agoPR libstdc++/54005 continued
Benjamin Kosnik [Thu, 30 Aug 2012 19:24:58 +0000 (19:24 +0000)]
PR libstdc++/54005 continued

2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/54005 continued
* include/std/atomic: Use __atomic_lock_free with
* include/bits/atomic_base.h: Same.

From-SVN: r190810

11 years agorandom.h (random_device): Remove 'return' from constructor.
Ulrich Drepper [Thu, 30 Aug 2012 16:33:09 +0000 (16:33 +0000)]
random.h (random_device): Remove 'return' from constructor.

* include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
Remove 'return' from constructor.

From-SVN: r190806

11 years agotestsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.
Benjamin Kosnik [Thu, 30 Aug 2012 15:58:52 +0000 (15:58 +0000)]
testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.

2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.

From-SVN: r190805

11 years agore PR target/54252 (Bad alignment code generated for Neon loads)
Ramana Radhakrishnan [Thu, 30 Aug 2012 10:17:04 +0000 (10:17 +0000)]
re PR target/54252 (Bad alignment code generated for Neon loads)

Fix PR target/54252

2012-08-29  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
    Richard Earnshaw  <richard.earnshaw@arm.com>

PR target/54252
* config/arm/arm.c (neon_dereference_pointer): Adjust nelems by
element size. Use elem_type from the formal parameter. New parameter
fcode.
(neon_expand_args): Adjust call to neon_dereference_pointer.

Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
From-SVN: r190800

11 years agoMissing CL entry
Ulrich Drepper [Thu, 30 Aug 2012 02:21:12 +0000 (02:21 +0000)]
Missing CL entry

From-SVN: r190796

11 years agoDaily bump.
GCC Administrator [Thu, 30 Aug 2012 00:18:21 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r190793

11 years agorandom.h (random_device): Move implementation to...
Ulrich Drepper [Wed, 29 Aug 2012 22:05:41 +0000 (22:05 +0000)]
random.h (random_device): Move implementation to...

* include/bits/random.h (random_device): Move implementation to...
* src/c++11/random.cc: ...here.  New file.
* config/abi/pre/gnu.ver: Add new version GLIBCXX_3.4.18.  Export
std::random_device::* symbols.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Generated.
* src/c++11/Makefile.am (sources): Add random.cc.
* src/c++11/Makefile.in: Regenerated.

From-SVN: r190787

11 years ago* cfg.c (dump_bb_info): Print a newline if there were no edges to dump.
Steven Bosscher [Wed, 29 Aug 2012 20:40:53 +0000 (20:40 +0000)]
* cfg.c (dump_bb_info): Print a newline if there were no edges to dump.

From-SVN: r190786

11 years agorevert: t-linux64 (MULTILIB_OSDIRNAMES): Change to use mapping style, add ../lib...
Chung-Lin Tang [Wed, 29 Aug 2012 19:12:12 +0000 (19:12 +0000)]
revert: t-linux64 (MULTILIB_OSDIRNAMES): Change to use mapping style, add ../lib/mips16.

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

Revert:
* config/mips/t-linux64 (MULTILIB_OSDIRNAMES): Change to use
mapping style, add ../lib/mips16.
(MULTILIB_OPTIONS,MULTILIB_DIRNAMES): Add mips16.
(MULTILIB_EXCLUSIONS): Exclude mips16 when not -mabi=32.

From-SVN: r190785

11 years agomips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_synci if TARGET_SYNCI.
Richard Sandiford [Wed, 29 Aug 2012 18:57:49 +0000 (18:57 +0000)]
mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_synci if TARGET_SYNCI.

gcc/
* config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Define __mips_synci
if TARGET_SYNCI.

gcc/testsuite/
* gcc.target/mips/mips.exp: Work out default -msynci setting.

From-SVN: r190784

11 years agoAdd simd_fast_mersenne_twister_engine class.
Ulrich Drepper [Wed, 29 Aug 2012 18:43:08 +0000 (18:43 +0000)]
Add simd_fast_mersenne_twister_engine class.

* include/ext/random: New file.
* include/ext/random.tcc: New file.
* include/Makefile.am (ext_headers): Add random and random.tcc.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
operators/inequal.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
operators/equal.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
operators/serialize.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/seed2.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/default.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/seed_seq.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/copy.cc: New file.
* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
cons/seed1.cc: New file.

From-SVN: r190783

11 years agosh.opt (menable-tas): Rename to mtas.
Oleg Endo [Wed, 29 Aug 2012 18:41:52 +0000 (18:41 +0000)]
sh.opt (menable-tas): Rename to mtas.

* config/sh/sh.opt (menable-tas): Rename to mtas.
* doc/invoke.texi (SH options): Likewise.
* config/sh/sync.md: Update comments.

From-SVN: r190782

11 years agoiterators.md: New file.
Oleg Endo [Wed, 29 Aug 2012 18:40:09 +0000 (18:40 +0000)]
iterators.md: New file.

* config/sh/iterators.md: New file.
* config/sh/sync.md (I124, I12, i124suffix): Delete.  Replace usage with
new iterators QIHISI, QIHI, bw, bwl respectively throughout the file.
* config/sh/sh.md: Include new file iterators.md.
(zero_extendhisi2, zero_extendqisi2): Fold into zero_extend<mode>si2.
(*zero_extendhisi2_compact, *zero_extendqisi2_compact): Fold into
*zero_extend<mode>si2_compact.
(*zero_extendqisi2_disp_mem, zero_extendhisi2_disp_mem): Fold into
*zero_extend<mode>si2_disp_mem.
(extendhisi2, extendqisi2): Fold into extend<mode>si2.
(*extendqisi2_compact_reg, *extendhisi2_compact_reg): Fold into
*extend<mode>si2_compact_reg.
(*extendqisi2_compact_mem_disp, *extendhisi2_compact_mem_disp): Fold
into *extend<mode>si2_compact_mem_disp.
(*extendqisi2_compact_snd, *extendhisi2_compact_snd): Fold into
*extend<mode>si2_compact_snd.
(*movsi_index_disp, *movhi_index_disp): Fold with iterators and rename
to *movsi_index_disp_load, *movhi_index_disp_load,
*mov<mode>_index_disp_store.
(*movqi_reg_reg, *movhi_reg_reg): Fold into *mov<mode>_reg_reg.
(*movqi_store_mem_disp04, *movhi_store_mem_disp05): Fold into
*mov<mode>_store_mem_disp04.
(*movqi_store_mem_disp12, *movhi_store_mem_disp13): Fold into
*mov<mode>_store_mem_disp12.
(*movqi_load_mem_disp, *movhi_load_mem_disp): Fold into
*mov<mode>_load_mem_disp04 and *mov<mode>_load_mem_disp12.

From-SVN: r190781

11 years agoipa-inline.h (estimate_edge_hints): Call do_estimate_edge_hints, not do_estimate_edge...
Martin Jambor [Wed, 29 Aug 2012 12:16:11 +0000 (14:16 +0200)]
ipa-inline.h (estimate_edge_hints): Call do_estimate_edge_hints, not do_estimate_edge_time.

2012-08-29  Martin Jambor  <mjambor@suse.cz>

* ipa-inline.h (estimate_edge_hints): Call do_estimate_edge_hints, not
do_estimate_edge_time.

From-SVN: r190777

11 years agomips.h (CRT_CALL_STATIC_FUNCTION): Add nomips16 asm directives, remove #ifndef __mips...
Chung-Lin Tang [Wed, 29 Aug 2012 09:33:49 +0000 (09:33 +0000)]
mips.h (CRT_CALL_STATIC_FUNCTION): Add nomips16 asm directives, remove #ifndef __mips16 guards.

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

* config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Add nomips16 asm
directives, remove #ifndef __mips16 guards.
* config/mips/t-linux64 (MULTILIB_OSDIRNAMES): Change to use
mapping style, add ../lib/mips16.
(MULTILIB_OPTIONS,MULTILIB_DIRNAMES): Add mips16.
(MULTILIB_EXCLUSIONS): Exclude mips16 when not -mabi=32.

From-SVN: r190774

11 years agocrtfastmath.c (set_fast_math): Add 'nomips16' attribute.
Chung-Lin Tang [Wed, 29 Aug 2012 09:31:52 +0000 (09:31 +0000)]
crtfastmath.c (set_fast_math): Add 'nomips16' attribute.

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

libgcc/
* config/mips/crtfastmath.c (set_fast_math): Add 'nomips16'
attribute.

From-SVN: r190773

11 years agofutex.h (sys_futex0): Change to static function with noinline, nomips16 attributes...
Chung-Lin Tang [Wed, 29 Aug 2012 09:29:55 +0000 (09:29 +0000)]
futex.h (sys_futex0): Change to static function with noinline, nomips16 attributes under MIPS16.

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

libgomp/
* config/linux/mips/futex.h (sys_futex0): Change to static
function with noinline, nomips16 attributes under MIPS16. Adjust
asm statement to place 'li v0,SYS_futex' immediately before
syscall insn.

From-SVN: r190772

11 years agoPR libstdc++/54102, part 2
Benjamin Kosnik [Wed, 29 Aug 2012 04:44:10 +0000 (04:44 +0000)]
PR libstdc++/54102, part 2

2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/54102, part 2
* doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
* doc/Makefile.in: Regenerate.
* doc/html/*: Same.

From-SVN: r190771

11 years ago*: Regenerate.
Benjamin Kosnik [Wed, 29 Aug 2012 02:09:55 +0000 (02:09 +0000)]
*: Regenerate.

2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

* doc/html/*: Regenerate.

From-SVN: r190770

11 years agore PR libstdc++/54102 (generated html vs. utf8)
Benjamin Kosnik [Wed, 29 Aug 2012 01:37:16 +0000 (01:37 +0000)]
re PR libstdc++/54102 (generated html vs. utf8)

2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/54102
* doc/xsl/customization.xsl.in: New.
* configure.ac: Output local copy of customization xsl.
* doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
(stamp-html-docbook): Set stringparam to UTF-8.
* Makefile.in: Regenerated.
* configure: Same.
* doc/Makefile.in: Same.

From-SVN: r190768

11 years agoReplace malloc with xmalloc
H.J. Lu [Wed, 29 Aug 2012 01:03:21 +0000 (01:03 +0000)]
Replace malloc with xmalloc

* argv.c (dupargv): Replace malloc with xmalloc.  Don't check
xmalloc return.
(buildargv): Likewise.  Also replace strdup with xstrdup.
(expandargv): Don't check dupargv return.

From-SVN: r190767

11 years agoReplace alloca with xmalloc/free
H.J. Lu [Wed, 29 Aug 2012 00:46:36 +0000 (00:46 +0000)]
Replace alloca with xmalloc/free

PR binutils/14526
* argv.c (buildargv): Replace alloca with xmalloc/free.

From-SVN: r190766

11 years agoDaily bump.
GCC Administrator [Wed, 29 Aug 2012 00:18:57 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r190765

11 years agore PR fortran/54389 ([F2003/F2008 difference] PURE functions and pointer dummy argume...
Tobias Burnus [Tue, 28 Aug 2012 18:18:11 +0000 (20:18 +0200)]
re PR fortran/54389 ([F2003/F2008 difference] PURE functions and pointer dummy arguments / DECL_PURE_P issue)

2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54389
        * trans-decl.c (gfc_get_extern_function_decl,
        build_function_decl): Don't mark impure elemental
        functions as DECL_PURE_P and honour implicit_pure.

From-SVN: r190757

11 years agore PR fortran/54382 (gfortran show_locus: Invalid read of size 4)
Tobias Burnus [Tue, 28 Aug 2012 14:49:55 +0000 (16:49 +0200)]
re PR fortran/54382 (gfortran show_locus: Invalid read of size 4)

2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54382
        * error.c (show_locus): Avoid out of bound access.

From-SVN: r190752

11 years agore PR fortran/54384 (gfortran memory leaks)
Tobias Burnus [Tue, 28 Aug 2012 14:49:15 +0000 (16:49 +0200)]
re PR fortran/54384 (gfortran memory leaks)

2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * decl.c (match_data_constant): Add missing gfc_free_expr.
        (top_val_list): Remove always-true condition.
        * data.c (get_array_index, create_character_initializer):
        Free temporary expressions.
        (gfc_assign_data_value): Free expression when aborting.

From-SVN: r190751

11 years agossa-dom-thread-3.c: Add -fno-short-enums.
Joey Ye [Tue, 28 Aug 2012 09:51:11 +0000 (09:51 +0000)]
ssa-dom-thread-3.c: Add -fno-short-enums.

* gcc.dg/tree-ssa/ssa-dom-thread-3.c: Add -fno-short-enums.

From-SVN: r190745

11 years agoFix ChangeLog formatting.
Walter Lee [Tue, 28 Aug 2012 07:00:10 +0000 (07:00 +0000)]
Fix ChangeLog formatting.

From-SVN: r190741

11 years agoFix some typos and coding style violations.
Walter Lee [Tue, 28 Aug 2012 06:09:45 +0000 (06:09 +0000)]
Fix some typos and coding style violations.

* confg/tilegx/tilegx.md: Fix code style.
(*zero_extendsidi_truncdisi): Fix typo.
* config/tilegx/tilegx.c: Fix code style.
(tilegx_function_profiler): Fix typo.

From-SVN: r190739

11 years agore PR fortran/54384 (gfortran memory leaks)
Tobias Burnus [Tue, 28 Aug 2012 05:35:15 +0000 (07:35 +0200)]
re PR fortran/54384 (gfortran memory leaks)

2012-08-28  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * symbol.c (gfc_copy_formal_args): Set also sym->formal_ns.

From-SVN: r190738

11 years agoAdd support for the -mcmodel=MODEL flag on TILE-Gx.
Walter Lee [Tue, 28 Aug 2012 05:25:35 +0000 (05:25 +0000)]
Add support for the -mcmodel=MODEL flag on TILE-Gx.

Add support for the -mcmodel=MODEL flag on TILE-Gx.  The models
supported are small and large.  In the small model (default), distance
for direct calls is limited to 500M in either direction.  PC-relative
addresses are 32 bits.  Absolute addresses support the full address
range.  In the large model, there is no limiation on call distance,
pc-relative addresses, or absolute addresses.
* doc/invoke.texi: Document -mcmodel=small, -mcmodel=large.
* config/tilegx/tilegx.h: Include config/tilegx/tilegx-opts.h.
(CRT_CALL_STATIC_FUNCTION): Define.
* config/tilegx/predicates.md (const_last_symbolic_operand):
Handle UNSPEC_HW2_LAST_PCREL, UNSPEC_HW1_LAST_PLT_PCREL, and
UNSPEC_HW2_LAST_PLT_PCREL.
(const_symbolic_operand): Handle UNSPEC_HW1_PCREL,
UNSPEC_HW0_PLT_PCREL, and UNSPEC_HW1_PLT_PCREL.
* config/tilegx/tilegx.md (UNSPEC_MOV_LARGE_PCREL_STEP4): Define,
and renumber the constants that follow.
(UNSPEC_HW1_PCREL): Define, and renumber the constants that
follow.
(UNSPEC_HW0_PLT_PCREL): Define.
(UNSPEC_HW1_PLT_PCREL): Define.
(UNSPEC_HW1_LAST_PLT_PCREL): Define.
(UNSPEC_HW2_LAST_PLT_PCREL): Define.
(mov_large_pcrel_step1): Define.
(mov_large_pcrel_step2): Define.
(mov_large_pcrel_step3): Define.
(mov_large_pcrel_step4): Define.
(mov_plt_pcrel_step1): Define.
(mov_plt_pcrel_step2): Define.
(mov_plt_pcrel_step3): Define.
(mov_plt_pcrel_step1_32bit): Define.
(mov_plt_pcrel_step2_32bit): Define.
(call): Handle tilegx_cmodel == CM_LARGE, CM_LARGE_PIC.
(call_value): Ditto.
* config/tilegx/tilegx.opt: Include config/tilegx/tilegx-opts.h.
(mcmodel): New option.
(enum cmodel): Define.
(CM_SMALL): Define.
(CM_LARGE): Define.
* config/tilegx/tilegx-protos.h (tilegx_compute_pcrel_address):
Declare.
(tilegx_compute_pcrel_plt_address): Declare.
* config/tilegx/tilegx.c (tilegx_option_override): Handle
tilegx_cmodel.
(tilegx_function_ok_for_sibcall): Ditto.
(compute_pcrel_address): Rename to tilegx_compute_pcrel_address,
and don't declare static.  Handle tilegx_cmodel.
(tilegx_compute_pcrel_plt_address): Define.
(tilegx_legitimize_pic_address): Rename calls to
compute_pcrel_address.
(tilegx_delegitimize_address): Handle UNSPEC_HW1_PCREL,
UNSPEC_HW2_LAST_PCREL, UNSPEC_HW0_PLT_PCREL, UNSPEC_HW1_PLT_PCREL,
UNSPEC_HW1_LAST_PLT_PCREL, UNSPEC_HW2_LAST_PLT_PCREL.
(load_pic_register): Rename call to compute_pcrel_address.
(tilegx_print_operand): Handle UNSPEC_HW1_PCREL,
UNSPEC_HW2_LAST_PCREL, UNSPEC_HW0_PLT_PCREL, UNSPEC_HW1_PLT_PCREL,
UNSPEC_HW1_LAST_PLT_PCREL, UNSPEC_HW2_LAST_PLT_PCREL.

From-SVN: r190737

11 years agoDaily bump.
GCC Administrator [Tue, 28 Aug 2012 00:17:15 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r190736

11 years agosched-deps.c (add_dependence_list_and_free): Simplify.
Maxim Kuvyrkov [Mon, 27 Aug 2012 22:11:48 +0000 (22:11 +0000)]
sched-deps.c (add_dependence_list_and_free): Simplify.

* sched-deps.c (add_dependence_list_and_free): Simplify.
(flush_pending_list_and_free): Fix a hack that was fixing a hack.  Free
lists when add_dependence_list_and_free doesn't free them.

From-SVN: r190733

11 years agore PR target/46254 (ICE: in find_reloads, at reload.c:3806 (unable to generate reload...
Uros Bizjak [Mon, 27 Aug 2012 21:13:07 +0000 (23:13 +0200)]
re PR target/46254 (ICE: in find_reloads, at reload.c:3806 (unable to generate reloads) with -fPIC -mcmodel={medium|large} and __sync_val_compare_and_swap)

PR target/46254
* config/i386/predicates.md (cmpxchg8b_pic_memory_operand): Return
true for TARGET_64BIT or !flag_pic.
* config/i386/sync.md (*atomic_compare_and_swap_doubledi_pic): Remove.
(atomic_compare_and_swap_double<mode>): Change operand 2 predicate
to cmpxchg8b_pic_memory_operand.  Use DWIH mode iterator.
Add insn constraint.  Conditionally emit xchg asm insns.
(atomic_compare_and_swap<mode>): Update calls.  Check only
cmpxchg8b_pic_memory_operand in memory address fixup.
(DCASMODE): Remove.
(CASHMODE): Rename from DCASHMODE.
(doublemodesuffix): Update modes.
(regprefix): New mode attribute.

(unspecv) <UNSPECV_CMPXCHG_{1,2,3,4}>: Remove.
<UNSPECV_CMPXCHG>: New constant.
(atomic_compare_and_swap<mode>_1): Rename from
atomic_compare_and_swap_single<mode>.  Update calls and
unspec_volatile constants.
(atomic_compare_and_swap<mode>_doubleword): Rename from
atomic_compare_and_swap_double<mode>.  Update calls and
unspec_volatile constants.

testsuite/ChangeLog:

PR target/46254
* gcc.target/i386/pr46254.c: New test.

From-SVN: r190732

11 years agore PR fortran/54384 (gfortran memory leaks)
Tobias Burnus [Mon, 27 Aug 2012 20:51:52 +0000 (22:51 +0200)]
re PR fortran/54384 (gfortran memory leaks)

2012-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * resolve.c (gfc_resolve_character_operator): Free temporary
        variables.
        * trans-expr.c (gfc_conv_statement_function): Ditto.

From-SVN: r190731

11 years agoFix doc typo.
Walter Lee [Mon, 27 Aug 2012 18:51:07 +0000 (18:51 +0000)]
Fix doc typo.

* doc/md.texi (TILE-Gx): Fix typo.

From-SVN: r190729

11 years agore PR fortran/54384 (gfortran memory leaks)
Tobias Burnus [Mon, 27 Aug 2012 18:47:57 +0000 (20:47 +0200)]
re PR fortran/54384 (gfortran memory leaks)

2012-08-27  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54384
        * dependency.c (check_section_vs_section): Use gfc_free_expr
        instead of free.
        * trans-intrinsic.c (conv_generic_with_optional_char_arg): Use
        gfc_free_symbol instead of free.

From-SVN: r190728

11 years agoFix a typo in the mcount function_profiler.
Walter Lee [Mon, 27 Aug 2012 18:35:39 +0000 (18:35 +0000)]
Fix a typo in the mcount function_profiler.

* config/tilegx/tilegx.c (tilegx_function_profiler): Fix typo.
config/tilepro/tilepro.c (tilepro_function_profiler): Ditto.

From-SVN: r190726

11 years agoStop trying to represent the bfins instruction with the insv pattern,
Walter Lee [Mon, 27 Aug 2012 18:16:34 +0000 (18:16 +0000)]
Stop trying to represent the bfins instruction with the insv pattern,

because it causes an extra copy when bfins reuses one of its inputs.
* config/tilegx/tilegx.md (*bfins): Rename to insn_bfins.
(insn_bfins): Delete.

From-SVN: r190724

11 years agoProperly set the latency of atomic ops to the approximate latency of a remote memory...
Walter Lee [Mon, 27 Aug 2012 17:27:04 +0000 (17:27 +0000)]
Properly set the latency of atomic ops to the approximate latency of a remote memory operation.

Properly set the latency of atomic ops to the approximate latency of a
remote memory operation.
* config/tilegx/sync.md (atomic_compare_and_swap_bare<mode>,
atomic_exchange_bare<mode>,
atomic_fetch_<fetchop_name>_bare<mode>): Set type to X1_remote.
* config/tilegx/tilegx-generic.md (X1_remote): New
insn_reservation.
* config/tilegx/tilegx.md (type): Add X1_remove.
(insn_cmpexch<four_if_si>, insn_exch<four_if_si>,
insn_fetchadd<four_if_si>, insn_fetchaddgez<four_if_si>,
insn_fetchand<four_if_si>, insn_fetchor<four_if_si>): Set type to
X1_remote.

From-SVN: r190722

11 years ago* gdbinit.in: Fix syntax of skip command.
Andreas Schwab [Mon, 27 Aug 2012 16:35:05 +0000 (16:35 +0000)]
* gdbinit.in: Fix syntax of skip command.

From-SVN: r190721

11 years agoext_ins.c, [...]: Add NOMIPS16.
Richard Sandiford [Mon, 27 Aug 2012 16:31:46 +0000 (16:31 +0000)]
ext_ins.c, [...]: Add NOMIPS16.

gcc/testsuite/
* gcc.target/mips/ext_ins.c, gcc.target/mips/octeon-pop-2.c,
gcc.target/mips/pr54240.c, gcc.target/mips/stack-1.c,
gcc.target/mips/unaligned-1.c: Add NOMIPS16.

From-SVN: r190720

11 years ago20020620-1.c, [...]: Tighten regexps.
Richard Sandiford [Mon, 27 Aug 2012 16:31:29 +0000 (16:31 +0000)]
20020620-1.c, [...]: Tighten regexps.

gcc/testsuite/
* gcc.target/mips/20020620-1.c, gcc.target/mips/atomic-memory-2.c,
gcc.target/mips/branch-2.c, gcc.target/mips/branch-3.c,
gcc.target/mips/clear-cache-1.c, gcc.target/mips/const-anchor-1.c,
gcc.target/mips/const-anchor-2.c, gcc.target/mips/dspr2-MULT.c,
gcc.target/mips/dspr2-MULTU.c, gcc.target/mips/ext-1.c,
gcc.target/mips/ext-2.c, gcc.target/mips/ext-3.c,
gcc.target/mips/ext-4.c, gcc.target/mips/ext_ins.c,
gcc.target/mips/fpcmp-1.c, gcc.target/mips/fpcmp-2.c,
gcc.target/mips/mips16e-extends.c, gcc.target/mips/mips32-dsp.c,
gcc.target/mips/mips32-dsp-type.c, gcc.target/mips/mips32r2-mxhc1.c,
gcc.target/mips/mips-ps-5.c, gcc.target/mips/mips-ps-7.c,
gcc.target/mips/mips-ps-type-2.c, gcc.target/mips/mips-ps-type.c,
gcc.target/mips/movcc-1.c, gcc.target/mips/movcc-2.c,
gcc.target/mips/movcc-3.c, gcc.target/mips/neg-abs-1.c,
gcc.target/mips/neg-abs-2.c, gcc.target/mips/nmadd-1.c,
gcc.target/mips/nmadd-2.c, gcc.target/mips/nmadd-3.c,
gcc.target/mips/octeon-exts-7.c, gcc.target/mips/octeon-seq-4.c,
gcc.target/mips/rsqrt-1.c, gcc.target/mips/rsqrt-2.c,
gcc.target/mips/rsqrt-3.c, gcc.target/mips/sb1-1.c,
gcc.target/mips/scc-4.c, gcc.target/mips/stack-1.c,
gcc.target/mips/unaligned-1.c: Tighten regexps.

From-SVN: r190719