platform/upstream/linaro-gcc.git
11 years ago2012-09-04 Christophe Lyon <christophe.lyon@linaro.org>
clyon [Tue, 4 Sep 2012 08:32:39 +0000 (08:32 +0000)]
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.

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

11 years ago2012-09-04 Janus Weil <janus@gcc.gnu.org>
janus [Tue, 4 Sep 2012 08:03:09 +0000 (08:03 +0000)]
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.

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

11 years ago PR target/51244
olegendo [Tue, 4 Sep 2012 08:03:01 +0000 (08:03 +0000)]
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.

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

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

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

11 years agoFix bootstrap-lto
ak [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.

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

11 years ago2012-09-03 Andrew Pinski <apinski@cavium.com>
pinskia [Mon, 3 Sep 2012 20:31:52 +0000 (20:31 +0000)]
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.

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

11 years ago2012-09-03 Marc Glisse <marc.glisse@inria.fr>
glisse [Mon, 3 Sep 2012 17:31:38 +0000 (17:31 +0000)]
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.

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

11 years ago PR tree-optimization/46590
matz [Mon, 3 Sep 2012 15:39:15 +0000 (15:39 +0000)]
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.

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

11 years ago2012-09-03 Sandra Loosemore <sandra@codesourcery.com>
sandra [Mon, 3 Sep 2012 15:29:22 +0000 (15:29 +0000)]
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.

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

11 years ago2012-09-03 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 3 Sep 2012 14:40:17 +0000 (14:40 +0000)]
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.

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

11 years ago2012-09-03 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 3 Sep 2012 14:06:27 +0000 (14:06 +0000)]
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.

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

11 years ago2012-09-03 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 3 Sep 2012 13:24:07 +0000 (13:24 +0000)]
2012-09-03  Richard Guenther  <rguenther@suse.de>

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

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

11 years ago * configure.ac (noconfigdirs,target=avr): Add target-libquadmath.
gjl [Mon, 3 Sep 2012 12:10:40 +0000 (12:10 +0000)]
* configure.ac (noconfigdirs,target=avr): Add target-libquadmath.
* configure: Regenerate.

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

11 years ago2012-09-03 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Mon, 3 Sep 2012 11:46:56 +0000 (11:46 +0000)]
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.

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

11 years ago PR debug/53923
jakub [Mon, 3 Sep 2012 11:42:31 +0000 (11:42 +0000)]
PR debug/53923
* valtrack.c (dead_debug_insert_temp): Drop non-reg uses
from the chain.

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

11 years ago * common.opt (--no-sysroot-suffix): New driver option.
jsm28 [Mon, 3 Sep 2012 11:34:22 +0000 (11:34 +0000)]
* 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.

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

11 years ago2012-09-03 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 3 Sep 2012 07:51:05 +0000 (07:51 +0000)]
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.

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

11 years ago2012-09-03 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 3 Sep 2012 06:45:35 +0000 (06:45 +0000)]
2012-09-03  Tobias Burnus  <burnus@net-b.de>

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

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

11 years ago2012-09-03 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
burnus [Mon, 3 Sep 2012 06:35:59 +0000 (06:35 +0000)]
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.

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

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

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

11 years ago PR target/33135
olegendo [Sun, 2 Sep 2012 23:18:08 +0000 (23:18 +0000)]
PR target/33135
* common/config/sh/sh-common.c: Update copyright years.
(sh_option_init_struct): Delete.
(TARGET_OPTION_INIT_STRUCT): Likewise.

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

11 years ago PR target/54418
olegendo [Sun, 2 Sep 2012 23:15:25 +0000 (23:15 +0000)]
PR target/54418
* config/sh/sh.md (cmpgeusi_t): Remove N alternative.
Check operands[1] in split condition instead of operands[0].
Add comments.

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

11 years agolibgcc/
gerald [Sun, 2 Sep 2012 14:13:21 +0000 (14:13 +0000)]
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.

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

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

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

11 years ago * config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
uros [Sun, 2 Sep 2012 11:08:33 +0000 (11:08 +0000)]
* config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
Improve insn output code.

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

11 years ago PR rtl-optimization/54369
ebotcazou [Sun, 2 Sep 2012 10:36:27 +0000 (10:36 +0000)]
PR rtl-optimization/54369
* config/mips/mips.c (mips_reorg): Invoke cleanup_barriers before
calling dbr_schedule.
* config/sparc/sparc.c (sparc_reorg): Likewise.

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

11 years ago PR target/49206
uros [Sun, 2 Sep 2012 08:49:31 +0000 (08:49 +0000)]
PR target/49206
* gcc.c-torture/compile/pr49206.c: New test.

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

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

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

11 years ago PR target/36680
uros [Sun, 2 Sep 2012 08:10:21 +0000 (08:10 +0000)]
PR target/36680
* gfortran.dg/pr36680.f90: New test.

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

11 years ago PR target/42295
uros [Sun, 2 Sep 2012 07:07:45 +0000 (07:07 +0000)]
PR target/42295
* g++.dg/opt/pr42295.C: New test.

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

11 years ago2012-09-02 Tobias Burnus <burnus@net-b.de>
burnus [Sun, 2 Sep 2012 06:40:27 +0000 (06:40 +0000)]
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.

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

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

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

11 years ago PR target/54436
jakub [Sat, 1 Sep 2012 19:09:02 +0000 (19:09 +0000)]
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.

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

11 years ago2012-09-01 Andrew Pinski <apinski@cavium.com>
pinskia [Sat, 1 Sep 2012 18:52:19 +0000 (18:52 +0000)]
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.

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

11 years ago PR target/46829
uros [Sat, 1 Sep 2012 14:29:45 +0000 (14:29 +0000)]
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.

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

11 years ago * target.def (legitimate_combined_insn): New target hook.
uros [Sat, 1 Sep 2012 14:26:28 +0000 (14:26 +0000)]
* 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.

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

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

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

11 years ago PR c++/18747
jason [Fri, 31 Aug 2012 21:35:33 +0000 (21:35 +0000)]
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.
.

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

11 years ago2012-08-31 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 31 Aug 2012 19:16:21 +0000 (19:16 +0000)]
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.

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

11 years ago PR c/54428
jakub [Fri, 31 Aug 2012 19:00:59 +0000 (19:00 +0000)]
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.

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

11 years agogcc/
gretay [Fri, 31 Aug 2012 16:42:21 +0000 (16:42 +0000)]
gcc/

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

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

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

11 years ago2012-08-31 Ollie Wild <aaw@google.com>
aaw [Fri, 31 Aug 2012 15:47:29 +0000 (15:47 +0000)]
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.

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

11 years ago2012-08-31 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 31 Aug 2012 14:05:45 +0000 (14:05 +0000)]
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.

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

11 years ago2012-08-31 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 31 Aug 2012 13:48:37 +0000 (13:48 +0000)]
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.

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

11 years ago2012-08-31 Martin Jambor <mjambor@suse.cz>
jamborm [Fri, 31 Aug 2012 13:13:03 +0000 (13:13 +0000)]
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.

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

11 years ago PR c++/50545
jason [Fri, 31 Aug 2012 02:50:28 +0000 (02:50 +0000)]
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.

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

11 years ago * semantics.c (finish_qualified_id_expr): Handle building up a
jason [Fri, 31 Aug 2012 02:50:18 +0000 (02:50 +0000)]
* 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.

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

11 years ago * friend.c (make_friend_class): Handle template template parameters.
jason [Fri, 31 Aug 2012 02:50:08 +0000 (02:50 +0000)]
* 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.

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

11 years ago * pt.c (get_class_bindings): Call coerce_template_parms. Add
jason [Fri, 31 Aug 2012 02:49:52 +0000 (02:49 +0000)]
* 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.

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

11 years ago * decl.c (cp_finish_decl): Check for invalid multiple initializers
jason [Fri, 31 Aug 2012 02:49:42 +0000 (02:49 +0000)]
* decl.c (cp_finish_decl): Check for invalid multiple initializers
even if the initializer is dependent.

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

11 years ago * pt.c (instantiate_template_1): Keep processing_template_decl set
jason [Fri, 31 Aug 2012 02:49:33 +0000 (02:49 +0000)]
* pt.c (instantiate_template_1): Keep processing_template_decl set
if there are dependent args.

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

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

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

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

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

11 years ago2012-08-30 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Thu, 30 Aug 2012 19:24:58 +0000 (19:24 +0000)]
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.

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

11 years ago * include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
drepper [Thu, 30 Aug 2012 16:33:09 +0000 (16:33 +0000)]
* include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
Remove 'return' from constructor.

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

11 years ago2012-08-30 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Thu, 30 Aug 2012 15:58:52 +0000 (15:58 +0000)]
2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>

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

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

11 years agoFix PR target/54252
ramana [Thu, 30 Aug 2012 10:17:04 +0000 (10:17 +0000)]
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.

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

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

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

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

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

11 years ago * include/bits/random.h (random_device): Move implementation to...
drepper [Wed, 29 Aug 2012 22:05:41 +0000 (22:05 +0000)]
* 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.

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

11 years ago * cfg.c (dump_bb_info): Print a newline if there were no edges to dump.
steven [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.

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

11 years ago2012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Wed, 29 Aug 2012 19:12:12 +0000 (19:12 +0000)]
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.

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

11 years agogcc/
rsandifo [Wed, 29 Aug 2012 18:57:49 +0000 (18:57 +0000)]
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.

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

11 years ago Add simd_fast_mersenne_twister_engine class.
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.

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

11 years ago * config/sh/sh.opt (menable-tas): Rename to mtas.
olegendo [Wed, 29 Aug 2012 18:41:52 +0000 (18:41 +0000)]
* config/sh/sh.opt (menable-tas): Rename to mtas.
* doc/invoke.texi (SH options): Likewise.
* config/sh/sync.md: Update comments.

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

11 years ago * config/sh/iterators.md: New file.
olegendo [Wed, 29 Aug 2012 18:40:09 +0000 (18:40 +0000)]
* 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.

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

11 years ago2012-08-29 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 29 Aug 2012 12:16:11 +0000 (12:16 +0000)]
2012-08-29  Martin Jambor  <mjambor@suse.cz>

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

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

11 years ago2012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Wed, 29 Aug 2012 09:33:49 +0000 (09:33 +0000)]
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.

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

11 years ago2012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Wed, 29 Aug 2012 09:31:52 +0000 (09:31 +0000)]
2012-08-29  Chung-Lin Tang  <cltang@codesourcery.com>

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

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

11 years ago2012-08-29 Chung-Lin Tang <cltang@codesourcery.com>
cltang [Wed, 29 Aug 2012 09:29:55 +0000 (09:29 +0000)]
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.

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

11 years ago2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 29 Aug 2012 04:44:10 +0000 (04:44 +0000)]
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.

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

11 years ago2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 29 Aug 2012 02:09:55 +0000 (02:09 +0000)]
2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

* doc/html/*: Regenerate.

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

11 years ago2012-08-28 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Wed, 29 Aug 2012 01:37:16 +0000 (01:37 +0000)]
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.

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

11 years agoReplace malloc with xmalloc
hjl [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.

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

11 years agoReplace alloca with xmalloc/free
hjl [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.

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

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

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

11 years ago2012-08-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 Aug 2012 18:18:11 +0000 (18:18 +0000)]
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.

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

11 years ago2012-08-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 Aug 2012 14:49:55 +0000 (14:49 +0000)]
2012-08-28  Tobias Burnus  <burnus@net-b.de>

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

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

11 years ago2012-08-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 Aug 2012 14:49:15 +0000 (14:49 +0000)]
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.

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

11 years ago * gcc.dg/tree-ssa/ssa-dom-thread-3.c: Add -fno-short-enums.
jye2 [Tue, 28 Aug 2012 09:51:11 +0000 (09:51 +0000)]
* gcc.dg/tree-ssa/ssa-dom-thread-3.c: Add -fno-short-enums.

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

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

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

11 years agoFix some typos and coding style violations.
walt [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.

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

11 years ago2012-08-28 Tobias Burnus <burnus@net-b.de>
burnus [Tue, 28 Aug 2012 05:35:15 +0000 (05:35 +0000)]
2012-08-28  Tobias Burnus  <burnus@net-b.de>

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

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

11 years agoAdd support for the -mcmodel=MODEL flag on TILE-Gx. The models
walt [Tue, 28 Aug 2012 05:25:35 +0000 (05:25 +0000)]
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.

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

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

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

11 years ago * sched-deps.c (add_dependence_list_and_free): Simplify.
mkuvyrkov [Mon, 27 Aug 2012 22:11:48 +0000 (22:11 +0000)]
* 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.

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

11 years ago PR target/46254
uros [Mon, 27 Aug 2012 21:13:07 +0000 (21:13 +0000)]
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.

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

11 years ago2012-08-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 Aug 2012 20:51:52 +0000 (20:51 +0000)]
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.

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

11 years agoFix doc typo.
walt [Mon, 27 Aug 2012 18:51:07 +0000 (18:51 +0000)]
Fix doc typo.
* doc/md.texi (TILE-Gx): Fix typo.

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

11 years ago2012-08-27 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 27 Aug 2012 18:47:57 +0000 (18:47 +0000)]
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.

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

11 years agoFix a typo in the mcount function_profiler.
walt [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.

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

11 years agoStop trying to represent the bfins instruction with the insv pattern,
walt [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.

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

11 years agoProperly set the latency of atomic ops to the approximate latency of a
walt [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.
* 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.

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

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

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

11 years agogcc/testsuite/
rsandifo [Mon, 27 Aug 2012 16:31:46 +0000 (16:31 +0000)]
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.

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

11 years agogcc/testsuite/
rsandifo [Mon, 27 Aug 2012 16:31:29 +0000 (16:31 +0000)]
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.

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

11 years agogcc/testsuite/
rsandifo [Mon, 27 Aug 2012 16:27:50 +0000 (16:27 +0000)]
gcc/testsuite/
* gcc.target/mips/mips.exp: Use gcc-dg-runtest rather than dg-runtest.
(mips_option_groups): Remove optimization.  Add various -f options.
(mips-dg-options): Make -funroll-loops imply -funroll-all-loops
and -pg imply -fno-omit-frame-pointer.
* gcc.target/mips/abi-eabi32-long32.c: Remove optimization flag.
* gcc.target/mips/abi-eabi32-long64.c: Likewise.
* gcc.target/mips/abi-eabi64-long32.c: Likewise.
* gcc.target/mips/abi-eabi64-long64.c: Likewise.
* gcc.target/mips/abi-n32-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-n32-long32-pic.c: Likewise.
* gcc.target/mips/abi-n32-long32.c: Likewise.
* gcc.target/mips/abi-n32-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-n32-long64-pic.c: Likewise.
* gcc.target/mips/abi-n32-long64.c: Likewise.
* gcc.target/mips/abi-n64-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-n64-long32-pic.c: Likewise.
* gcc.target/mips/abi-n64-long32.c: Likewise.
* gcc.target/mips/abi-n64-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-n64-long64-pic.c: Likewise.
* gcc.target/mips/abi-n64-long64.c: Likewise.
* gcc.target/mips/abi-o32-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-o32-long32-pic.c: Likewise.
* gcc.target/mips/abi-o32-long32.c: Likewise.
* gcc.target/mips/abi-o32-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-o32-long64-pic.c: Likewise.
* gcc.target/mips/abi-o32-long64.c: Likewise.
* gcc.target/mips/abi-o64-long32-no-shared.c: Likewise.
* gcc.target/mips/abi-o64-long32-pic.c: Likewise.
* gcc.target/mips/abi-o64-long32.c: Likewise.
* gcc.target/mips/abi-o64-long64-no-shared.c: Likewise.
* gcc.target/mips/abi-o64-long64-pic.c: Likewise.
* gcc.target/mips/abi-o64-long64.c: Likewise.
* gcc.target/mips/asm-1.c: Likewise.
* gcc.target/mips/branch-1.c: Likewise.
* gcc.target/mips/call-3.c: Likewise.
* gcc.target/mips/call-saved-3.c: Likewise.
* gcc.target/mips/clear-cache-1.c: Likewise.
* gcc.target/mips/div-1.c: Likewise.
* gcc.target/mips/div-2.c: Likewise.
* gcc.target/mips/div-3.c: Likewise.
* gcc.target/mips/div-4.c: Likewise.
* gcc.target/mips/div-5.c: Likewise.
* gcc.target/mips/div-6.c: Likewise.
* gcc.target/mips/div-7.c: Likewise.
* gcc.target/mips/div-8.c: Likewise.
* gcc.target/mips/div-9.c: Likewise.
* gcc.target/mips/div-10.c: Likewise.
* gcc.target/mips/div-11.c: Likewise.
* gcc.target/mips/div-12.c: Likewise.
* gcc.target/mips/dsp-ctrl.c: Likewise.
* gcc.target/mips/dsp-no-lhx.c: Likewise.
* gcc.target/mips/ext-8.c: Likewise.
* gcc.target/mips/extend-2.c: Likewise.
* gcc.target/mips/fix-r10000-1.c: Likewise.
* gcc.target/mips/fix-r10000-2.c: Likewise.
* gcc.target/mips/fix-r10000-3.c: Likewise.
* gcc.target/mips/fix-r10000-4.c: Likewise.
* gcc.target/mips/fix-r10000-5.c: Likewise.
* gcc.target/mips/fix-r10000-6.c: Likewise.
* gcc.target/mips/fix-r10000-7.c: Likewise.
* gcc.target/mips/fix-r10000-8.c: Likewise.
* gcc.target/mips/fix-r10000-9.c: Likewise.
* gcc.target/mips/fix-r10000-10.c: Likewise.
* gcc.target/mips/fix-r10000-11.c: Likewise.
* gcc.target/mips/fix-r10000-12.c: Likewise.
* gcc.target/mips/fix-r10000-13.c: Likewise.
* gcc.target/mips/fix-r10000-14.c: Likewise.
* gcc.target/mips/fix-r10000-15.c: Likewise.
* gcc.target/mips/fpcmp-1.c: Likewise.
* gcc.target/mips/fpcmp-2.c: Likewise.
* gcc.target/mips/fpr-moves-7.c: Likewise.
* gcc.target/mips/fpr-moves-8.c: Likewise.
* gcc.target/mips/int-moves-1.c: Likewise.
* gcc.target/mips/int-moves-2.c: Likewise.
* gcc.target/mips/long-calls-pg.c: Likewise.
* gcc.target/mips/loongson-muldiv-1.c: Likewise.
* gcc.target/mips/loongson-muldiv-2.c: Likewise.
* gcc.target/mips/loongson-shift-count-truncated-1.c: Likewise.
* gcc.target/mips/loongson3a-muldiv-1.c: Likewise.
* gcc.target/mips/loongson3a-muldiv-2.c: Likewise.
* gcc.target/mips/mips-3d-1.c: Likewise.
* gcc.target/mips/mips-3d-2.c: Likewise.
* gcc.target/mips/mips-3d-3.c: Likewise.
* gcc.target/mips/mips-3d-4.c: Likewise.
* gcc.target/mips/mips-3d-5.c: Likewise.
* gcc.target/mips/mips-3d-6.c: Likewise.
* gcc.target/mips/mips-3d-7.c: Likewise.
* gcc.target/mips/mips-3d-8.c: Likewise.
* gcc.target/mips/mips-3d-9.c: Likewise.
* gcc.target/mips/mips-ps-1.c: Likewise.
* gcc.target/mips/mips-ps-2.c: Likewise.
* gcc.target/mips/mips-ps-3.c: Likewise.
* gcc.target/mips/mips-ps-4.c: Likewise.
* gcc.target/mips/mips-ps-6.c: Likewise.
* gcc.target/mips/mips32-dspr2.c: Likewise.
* gcc.target/mips/mmcount-ra-address-1.c: Likewise.
* gcc.target/mips/neg-abs-1.c: Likewise.
* gcc.target/mips/neg-abs-2.c: Likewise.
* gcc.target/mips/nmadd-3.c: Likewise.
* gcc.target/mips/no-smartmips-lwxs.c: Likewise.
* gcc.target/mips/no-smartmips-ror-1.c: Likewise.
* gcc.target/mips/octeon-pop-1.c: Likewise.
* gcc.target/mips/pr26765.c: Likewise.
* gcc.target/mips/pr33256.c: Likewise.
* gcc.target/mips/pr33635-1.c: Likewise.
* gcc.target/mips/pr33755.c: Likewise.
* gcc.target/mips/pr35802.c: Likewise.
* gcc.target/mips/pr45074.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-1.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-2.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-3.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-4.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-5.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-6.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-7.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-8.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-9.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-11.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-12.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-13.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-14.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-15.c: Likewise.
* gcc.target/mips/save-restore-1.c: Likewise.
* gcc.target/mips/save-restore-3.c: Likewise.
* gcc.target/mips/save-restore-5.c: Likewise.
* gcc.target/mips/smartmips-ror-1.c: Likewise.
* gcc.target/mips/smartmips-ror-2.c: Likewise.
* gcc.target/mips/smartmips-ror-3.c: Likewise.
* gcc.target/mips/smartmips-ror-4.c: Likewise.
* gcc.target/mips/stack-1.c: Likewise.

* gcc.target/mips/clear-cache-2.c: Remove optimization flag.
Tighten regexps.

* gcc.target/mips/branch-8.c: Arrange for the delay slot of the
branch under test to be filled with preceding rather than
following instructions.
* gcc.target/mips/branch-10.c: Likewise.
* gcc.target/mips/branch-11.c: Likewise.
* gcc.target/mips/branch-12.c: Likewise.
* gcc.target/mips/branch-13.c: Likewise.
* gcc.target/mips/branch-9.c: Likewise.  Allow the frame pointer
to be eliminated.  Tighten $28 scan-assembler-not test.

* gcc.target/mips/call-2.c: Remove optimization flag.  Move second
function to...
* gcc.target/mips/call-4.c: ...this new test.

* gcc.target/mips/code-readable-2.c: Rework to make a jump table
more likely.
* gcc.target/mips/code-readable-3.c: Likewise.
* gcc.target/mips/code-readable-1.c: Likewise.  Remove optimization
flag but skip for -O0.
* gcc.target/mips/code-readable-4.c: Likewise.

* gcc.target/mips/mips32-dsp-run.c: Prevent compile-time reduction
of operations under test.
* gcc.target/mips/mips32-dsp.c: Likewise.  Remove optimization flag.

* gcc.target/mips/near-far-3.c: Remove optimization flag.
Don't require sibling-call optimization.
* gcc.target/mips/near-far-4.c: Likewise.

* gcc.target/mips/no-dsp-1.c: Require -ffat-lto-objects.
Make sure that the register variable is used.
* gcc.target/mips/soft-float-1.c: Likewise.

* gcc.target/mips/sdata-1.c: Make static data volatile.
* gcc.target/mips/sdata-2.c: Likewise.
* gcc.target/mips/sdata-3.c: Likewise.
* gcc.target/mips/sdata-4.c: Likewise.

* gcc.target/mips/20020620-1.c: Remove optimization flag but
skip for -O0.
* gcc.target/mips/atomic-memory-2.c: Likewise.
* gcc.target/mips/branch-cost-1.c: Likewise.
* gcc.target/mips/branch-cost-2.c: Likewise.
* gcc.target/mips/cache-1.c: Likewise.
* gcc.target/mips/call-1.c: Likewise.
* gcc.target/mips/call-saved-2.c: Likewise.
* gcc.target/mips/const-anchor-1.c: Likewise.
* gcc.target/mips/const-anchor-2.c: Likewise.
* gcc.target/mips/dse-1.c: Likewise.
* gcc.target/mips/dsp-lhx.c: Likewise.
* gcc.target/mips/dspr2-MULTU.c: Likewise.
* gcc.target/mips/ext-1.c: Likewise.
* gcc.target/mips/ext-2.c: Likewise.
* gcc.target/mips/ext-3.c: Likewise.
* gcc.target/mips/ext-4.c: Likewise.
* gcc.target/mips/ext-5.c: Likewise.
* gcc.target/mips/ext-6.c: Likewise.
* gcc.target/mips/ext-7.c: Likewise.
* gcc.target/mips/extend-1.c: Likewise.
* gcc.target/mips/fix-r4000-1.c: Likewise.
* gcc.target/mips/fix-r4000-3.c: Likewise.
* gcc.target/mips/fix-r4000-5.c: Likewise.
* gcc.target/mips/fix-r4000-6.c: Likewise.
* gcc.target/mips/fix-r4000-8.c: Likewise.
* gcc.target/mips/fix-r4000-10.c: Likewise.
* gcc.target/mips/fixed-scalar-type.c: Likewise.
* gcc.target/mips/fixed-vector-type.c: Likewise.
* gcc.target/mips/fpr-moves-1.c: Likewise.
* gcc.target/mips/fpr-moves-2.c: Likewise.
* gcc.target/mips/fpr-moves-3.c: Likewise.
* gcc.target/mips/fpr-moves-4.c: Likewise.
* gcc.target/mips/fpr-moves-5.c: Likewise.
* gcc.target/mips/fpr-moves-6.c: Likewise.
* gcc.target/mips/ins-1.c: Likewise.
* gcc.target/mips/ins-2.c: Likewise.
* gcc.target/mips/interrupt_handler-2.c: Likewise.
* gcc.target/mips/interrupt_handler-3.c: Likewise.
* gcc.target/mips/lazy-binding-1.c: Likewise.
* gcc.target/mips/madd-3.c: Likewise.
* gcc.target/mips/madd-5.c: Likewise.
* gcc.target/mips/madd-6.c: Likewise.
* gcc.target/mips/madd-8.c: Likewise.
* gcc.target/mips/madd-9.c: Likewise.
* gcc.target/mips/memcpy-1.c: Likewise.
* gcc.target/mips/mips-ps-type.c: Likewise.
* gcc.target/mips/mips-ps-type-2.c: Likewise.
* gcc.target/mips/mips-sched-madd.c: Likewise.
* gcc.target/mips/mips16e-extends.c: Likewise.
* gcc.target/mips/mips32r2-mxhc1.c: Likewise.
* gcc.target/mips/mips64-dsp-ldx.c: Likewise.
* gcc.target/mips/movcc-1.c: Likewise.
* gcc.target/mips/movcc-2.c: Likewise.
* gcc.target/mips/movcc-3.c: Likewise.
* gcc.target/mips/msub-5.c: Likewise.
* gcc.target/mips/msub-6.c: Likewise.
* gcc.target/mips/msub-8.c: Likewise.
* gcc.target/mips/mult-2.c: Likewise.
* gcc.target/mips/mult-3.c: Likewise.
* gcc.target/mips/mult-5.c: Likewise.
* gcc.target/mips/mult-6.c: Likewise.
* gcc.target/mips/mult-7.c: Likewise.
* gcc.target/mips/mult-12.c: Likewise.
* gcc.target/mips/mult-13.c: Likewise.
* gcc.target/mips/mult-14.c: Likewise.
* gcc.target/mips/mult-15.c: Likewise.
* gcc.target/mips/mult-17.c: Likewise.
* gcc.target/mips/mult-18.c: Likewise.
* gcc.target/mips/mult-19.c: Likewise.
* gcc.target/mips/nmadd-1.c: Likewise.
* gcc.target/mips/nmadd-2.c: Likewise.
* gcc.target/mips/octeon-baddu-1.c: Likewise.
* gcc.target/mips/octeon-cins-1.c: Likewise.
* gcc.target/mips/octeon-cins-2.c: Likewise.
* gcc.target/mips/octeon-dmul-3.c: Likewise.
* gcc.target/mips/octeon-exts-2.c: Likewise.
* gcc.target/mips/octeon-exts-3.c: Likewise.
* gcc.target/mips/octeon-exts-4.c: Likewise.
* gcc.target/mips/octeon-exts-5.c: Likewise.
* gcc.target/mips/octeon-exts-6.c: Likewise.
* gcc.target/mips/octeon-exts-7.c: Likewise.
* gcc.target/mips/octeon-pop-2.c: Likewise.
* gcc.target/mips/octeon-seq-3.c: Likewise.
* gcc.target/mips/octeon-seq-4.c: Likewise.
* gcc.target/mips/octeon2-lx-1.c: Likewise.
* gcc.target/mips/octeon2-lx-2.c: Likewise.
* gcc.target/mips/octeon2-lx-3.c: Likewise.
* gcc.target/mips/pr54240.c: Likewise.
* gcc.target/mips/rsqrt-1.c: Likewise.
* gcc.target/mips/rsqrt-2.c: Likewise.
* gcc.target/mips/rsqrt-3.c: Likewise.
* gcc.target/mips/rsqrt-4.c: Likewise.
* gcc.target/mips/save-restore-2.c: Likewise.
* gcc.target/mips/save-restore-4.c: Likewise.
* gcc.target/mips/sb1-1.c: Likewise.
* gcc.target/mips/scc-1.c: Likewise.
* gcc.target/mips/scc-2.c: Likewise.
* gcc.target/mips/scc-3.c: Likewise.
* gcc.target/mips/scc-4.c: Likewise.
* gcc.target/mips/smartmips-lwxs.c: Likewise.
* gcc.target/mips/truncate-1.c: Likewise.
* gcc.target/mips/truncate-2.c: Likewise.
* gcc.target/mips/truncate-3.c: Likewise.
* gcc.target/mips/truncate-4.c: Likewise.
* gcc.target/mips/truncate-5.c: Likewise.
* gcc.target/mips/truncate-6.c: Likewise.
* gcc.target/mips/unaligned-1.c: Likewise.

* gcc.target/mips/dpaq_sa_l_w.c: Remove optimization flag but
skip for -O0.  Require -fexpensive-optimizations.
* gcc.target/mips/dpsq_sa_l_w.c: Likewise.
* gcc.target/mips/dspr2-MULT.c: Likewise.
* gcc.target/mips/fix-r4000-2.c: Likewise.
* gcc.target/mips/fix-r4000-4.c: Likewise.
* gcc.target/mips/fix-r4000-7.c: Likewise.
* gcc.target/mips/fix-r4000-9.c: Likewise.
* gcc.target/mips/madd-1.c: Likewise.
* gcc.target/mips/madd-2.c: Likewise.
* gcc.target/mips/madd-4.c: Likewise.
* gcc.target/mips/maddu-1.c: Likewise.
* gcc.target/mips/maddu-2.c: Likewise.
* gcc.target/mips/maddu-3.c: Likewise.
* gcc.target/mips/maddu-4.c: Likewise.
* gcc.target/mips/msub-1.c: Likewise.
* gcc.target/mips/msub-2.c: Likewise.
* gcc.target/mips/msub-3.c: Likewise.
* gcc.target/mips/msub-4.c: Likewise.
* gcc.target/mips/msubu-1.c: Likewise.
* gcc.target/mips/msubu-2.c: Likewise.
* gcc.target/mips/msubu-3.c: Likewise.
* gcc.target/mips/msubu-4.c: Likewise.
* gcc.target/mips/mult-1.c: Likewise.
* gcc.target/mips/mult-4.c: Likewise.
* gcc.target/mips/mult-8.c: Likewise.
* gcc.target/mips/mult-9.c: Likewise.
* gcc.target/mips/mult-10.c: Likewise.
* gcc.target/mips/mult-11.c: Likewise.
* gcc.target/mips/mult-16.c: Likewise.

* gcc.target/mips/fix-r4000-11.c: Remove optimization flag but
skip for -O0 and -Os.
* gcc.target/mips/fix-r4000-12.c: Likewise.
* gcc.target/mips/madd-7.c: Likewise.
* gcc.target/mips/mips-ps-5.c: Likewise.
* gcc.target/mips/mips-ps-7.c: Likewise.
* gcc.target/mips/msub-7.c: Likewise.

* gcc.target/mips/mmcount-ra-address-2.c: Remove optimization flag but
skip for -O0.  Require -mno-abicalls.
* gcc.target/mips/mmcount-ra-address-3.c: Likewise.

* gcc.target/mips/octeon-bbit-1.c: Remove optimization flag but
skip for -O0.  Require a total number of BBIT instructions and
at least one of each kind.

* gcc.target/mips/octeon-bbit-2.c: Remove optimization flag but
skip for -O0.  Require -fno-unroll-loops.

* gcc.target/mips/octeon-bbit-3.c: Remove optimization flag but
skip for -O0.  Allow BLTZ as well as BGEZ.

* gcc.target/mips/octeon-dmul-2.c: Skip for -Os.

* gcc.target/mips/octeon-pipe-1.c: Remove optimization flag but
skip for -O0.  Require -fschedule-insns2.
* gcc.target/mips/octeon2-pipe-1.c: Likewise.

* gcc.target/mips/r10k-cache-barrier-10.c: Remove optimization flag
but skip for -O0.  Make a branch-likely more likely.

* gcc.target/mips/timode-2.c: Split each test into its own function.
* gcc.target/mips/timode-1.c: Likewise.  Skip for -Os.

* gcc.target/mips/vr-mult-1.c: Remove optimization flag but
skip for -O0.  Require -fpeephole2.
* gcc.target/mips/vr-mult-2.c: Likewise.

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

11 years agogcc/
rsandifo [Mon, 27 Aug 2012 16:25:47 +0000 (16:25 +0000)]
gcc/
* config/mips/mips.c (mips_pic_call_symbol_from_set): Check for
SYMBOL_REF SET_SRCs.

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

11 years agogcc/
rsandifo [Mon, 27 Aug 2012 16:25:12 +0000 (16:25 +0000)]
gcc/
* config/mips/mips.c (vr4130_align_insns): Don't simulate
ghost instructions.  Assert that the required instructions exist.

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

11 years agoPR preprocessor/53469 - argument tokens of _Pragma miss virtual location
dodji [Mon, 27 Aug 2012 15:41:38 +0000 (15:41 +0000)]
PR preprocessor/53469 - argument tokens of _Pragma miss virtual location

Consider this short test snippet:

-------------------------8-------------------
    #define STRINGIFY(x) #x
    #define TEST(x) \
      _Pragma(STRINGIFY(GCC diagnostic ignored "-Wunused-local-typedefs")) \
      typedef int myint;

    void bar ()
    {
      TEST(myint)
    }
-------------------------8-------------------

The _Pragma is effectively ignored, and compiling with
-Wunused-local-typedefs warns on the local typedef, even though the
pragma should have prevented the warning to be emitted.

This is because when the preprocessor sees the _Pragma operator and
then goes to handle the first token ('GCC' here) that makes up its
operands, it retains the spelling location of that token, not its
virtual location.

Later when diagnostic_report_diagnostic is called to emit the warning
(or ignore it because of the pragma), it compares the location of the
first operand of the pragma with the location of the unused location,
(by calling linemap_location_before_p) and that comparison fails
because in this case, both locations should be virtual.

This patch fixes the issue by teaching the pragma handling to use
virtual locations.

Bootstrapped and tested on x86_64-unknown-linux-gnu against trunk.

libcpp/

PR preprocessor/53469
* directives.c (do_pragma): Use the virtual location for the
pragma token, instead of its spelling location.

gcc/testsuite/

PR preprocessor/53469
* gcc.dg/cpp/_Pragma7.c: New test case.

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