aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2013-10-29expr.h: Revert change and include tree-core.h.Andrew MacLeod3-1/+8
* expr.h: Revert change and include tree-core.h. * rtl.h: Revert change and don't include tree-core.h. From-SVN: r204167
2013-10-29darwin.c: Include gimple.h.Andrew MacLeod3-0/+7
* config/darwin.c: Include gimple.h. * config/i386/winnt.c: Likewise. From-SVN: r204166
2013-10-29re PR c++/58888 ([c++11] Rejects-valid: static member with auto and initializer)Paolo Carlini5-22/+24
/cp 2013-10-29 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58888 * decl2.c (grokfield): Handle auto like NSDMI. /testsuite 2013-10-29 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58888 * g++.dg/cpp0x/auto40.C: New. * g++.dg/other/warning1.C: Adjust. From-SVN: r204164
2013-10-29restrict-2.c: New testcase.Richard Biener5-0/+111
2013-10-29 Richard Biener <rguenther@suse.de> * gcc.dg/torture/restrict-2.c: New testcase. * gcc.dg/torture/restrict-3.c: Likewise. * gcc.dg/torture/restrict-4.c: Likewise. * gcc.dg/torture/restrict-5.c: Likewise. From-SVN: r204162
2013-10-29re PR tree-optimization/19831 (Missing DSE/malloc/free optimization)Marc Glisse4-0/+32
2013-10-29 Marc Glisse <marc.glisse@inria.fr> PR tree-optimization/19831 gcc/ * tree-ssa-alias.c (stmt_kills_ref_p_1): Handle BUILT_IN_FREE. gcc/testsuite/ * gcc.dg/tree-ssa/alias-25.c: New file. From-SVN: r204160
2013-10-29tree-outof-ssa.h: Remove include files.Andrew MacLeod39-15/+77
* tree-outof-ssa.h: Remove include files. * tree-outof-ssa.c: Add required include files from tree-outof-ssa.h. * expr.c: Likewise. * tree-ssa-coalesce.c: Likewise. * cfgexpand.c: Likewise. * tree-ssa-ter.c: Likewise. * ipa-prop.h: Remove gimple.h and tree-core.h from include list. * lto-streamer.h: Likewise. * cgraphbuild.c: Add gimple.h to include list. * data-streamer-in.c: Likewise. * ipa-cp.c: Likewise. * tree-streamer.c: Likewise. * lto-compress.c: Likewise. * ipa-reference.c: Likewise. * data-streamer-out.c: Likewise. * lto-cgraph.c: Likewise. * cgraphclones.c: Likewise. * ipa-utils.c: Likewise. * data-streamer.c: Likewise. * ipa-split.c: Likewise. * lto-section-in.c: Likewise. * tree-streamer-out.c: Likewise. * ipa-prop.c: Likewise. * tree-streamer-in.c: Likewise. * symtab.c: Likewise. * opts-global.c: Likewise. * lto-opts.c: Likewise. * lto-section-out.c: Likewise. * lto-streamer.c: Likewise. * rtl.h: Add tree-core.h to include list. * expr.h: Remove tree-core.h from include list. * gimple.h: Likewise. * ipa-utils.h: Likewise. * streamer-hooks.h: Likewise. * streamer-hooks.c: Include input.h. * lto/lto-object.c: Add gimple.h to include list. * lto/lto-partition.c: Likewise. From-SVN: r204158
2013-10-29arm.c (cortexa7_extra_costs): New table.Kyrylo Tkachov3-1/+124
2013-10-29 Kyrylo Tkachov <kyrylo.tkachov@arm.com> * config/arm/arm.c (cortexa7_extra_costs): New table. (arm_cortex_a7_tune): New. * config/arm/arm-cores.def: Use cortex_a7 tuning for cortex-a7. From-SVN: r204157
2013-10-29Fix typo.Eric Botcazou1-1/+1
From-SVN: r204156
2013-10-29* expr.c (expand_expr_real_1) <case MEM>: Eliminate small redundancy.Eric Botcazou2-1/+5
From-SVN: r204155
2013-10-29slp-pr56812.cc: Adjust with respect to -fvect-cost-model changes.Richard Biener19-19/+41
2013-10-29 Richard Biener <rguenther@suse.de> * g++.dg/vect/slp-pr56812.cc: Adjust with respect to -fvect-cost-model changes. * gcc.dg/vect/bb-slp-32.c: Likewise. * gcc.dg/vect/costmodel/i386/i386-costmodel-vect.exp: Likewise. * gcc.dg/vect/costmodel/ppc/ppc-costmodel-vect.exp: Likewise. * gcc.dg/vect/costmodel/spu/spu-costmodel-vect.exp: Likewise. * gcc.dg/vect/costmodel/x86_64/x86_64-costmodel-vect.exp: Likewise. * gcc.target/powerpc/crypto-builtin-1.c: Likewise. * gcc.target/powerpc/p8vector-builtin-1.c: Likewise. * gcc.target/powerpc/p8vector-builtin-2.c: Likewise. * gcc.target/powerpc/p8vector-builtin-3.c: Likewise. * gcc.target/powerpc/p8vector-builtin-4.c: Likewise. * gcc.target/powerpc/p8vector-builtin-5.c: Likewise. * gcc.target/powerpc/p8vector-vectorize-1.c: Likewise. * gcc.target/powerpc/p8vector-vectorize-2.c: Likewise. * gcc.target/powerpc/p8vector-vectorize-3.c: Likewise. * gcc.target/powerpc/p8vector-vectorize-4.c: Likewise. * gcc.target/powerpc/p8vector-vectorize-5.c: Likewise. * gfortran.dg/vect/vect.exp: Likewise. From-SVN: r204152
2013-10-29Make gengtype more robust against user errorDavid Malcolm5-29/+137
* doc/gty.texi ("Inheritance and GTY"): Make it clear that to use autogenerated markers for a class-hierarchy, every class must have a GTY marker. * gengtype.h (struct type): Add linked list of subclasses to the "s" member of the union. (add_subclass): New decl. * gengtype-state.c (read_state_struct_type): Set up subclass linked list. * gengtype.c (get_ultimate_base_class): New. (add_subclass): New. (new_structure): Set up subclass linked list. (set_gc_used_type): Propagate usage information to subclasses. (output_mangled_typename): Use get_ultimate_base_class. (walk_subclasses): Use the subclass linked list, avoiding an O(N^2) when writing out all types. (walk_type): Issue an error if the base class is missing a tag, rather than generating bogus C code. Add a gcc_unreachable default case, in case people omit tags from concrete subclasses, or get the values wrong. (write_func_for_structure): Issue an error for subclasses for which the base doesn't have a "desc", since otherwise the autogenerated routines for the base would silently fail to visit any subclass fields. (write_root): Use get_ultimate_base_class, tweaking constness of tp to match that function's signature. From-SVN: r204148
2013-10-29Add documentation about gengtype and inheritanceDavid Malcolm2-0/+58
* doc/gty.texi (GTY Options): Add note about inheritance to description of desc and tag. (Inheritance and GTY): New. From-SVN: r204147
2013-10-29Handle simple inheritance in gengtypeDavid Malcolm4-7/+133
* gengtype-parse.c (opts_have): Drop "static" so that we can use this from gengtype.c. * gengtype.c (set_gc_used_type): Mark any base class as used; update field traversal to visit inherited fields. (output_mangled_typename): Convert references to classes within an inheritance hierarchy to reference the ultimate base class, since only it will have gt_ functions. (get_string_option): New. (walk_subclasses): New. (walk_type): Treat GTY structs that have a "desc" as being the root of an inheritance hierarchy. Generate a switch on it within the marking function which walks all subclasses, adding cases for them via walk_subclasses. For subclasses, visit all fields of the type (including inherited ones). (write_func_for_structure): Don't write fns for subclasses, only for the ultimate base class within an inheritance hierarchy. Subclasses-marking will be handled by the base class marking functions. (write_types): Likewise. (write_local_func_for_structure): Likewise. (USED_BY_TYPED_GC_P): Emit allocators for subclasses that have a "tag" option (and are thus concrete subclasses). (write_root): Use the marker function for the ultimate base class. * gengtype.h (FOR_ALL_INHERITED_FIELDS): New. (opts_have): Add declaration. From-SVN: r204146
2013-10-29Daily bump.GCC Administrator1-1/+1
From-SVN: r204145
2013-10-28lra-spills.c (lra_final_code_change): Remove useless move insns originated ↵Vladimir Makarov2-1/+28
from moves of pseudos. 2013-10-28 Vladimir Makarov <vmakarov@redhat.com> * lra-spills.c (lra_final_code_change): Remove useless move insns originated from moves of pseudos. From-SVN: r204140
2013-10-28* lower-subreg.c (resolve_simple_move): Fix comment typo.Jeff Law2-1/+5
From-SVN: r204139
2013-10-28gcc-bug-i.c: Add little endian variant.Bill Schmidt3-0/+27
2013-10-28 Bill Schmidt <wschmidt@linux.vnet.ibm.com> * gcc.dg/vmx/gcc-bug-i.c: Add little endian variant. * gcc.dg/vmx/eg-5.c: Likewise. From-SVN: r204138
2013-10-28df-scan.c (df_collection_rec): Adjust.Trevor Saunders14-413/+260
* df-scan.c (df_collection_rec): Adjust. (copy_defs): New constant. (copy_uses): Likewise. (copy_eq_uses): Likewise. (copy_mw): Likewise. (copy_all): Likewise. (df_insn_rescan): Adjust. (df_notes_rescan): Likewise. (df_swap_refs): Likewise. (df_sort_and_compress_refs): Likewise. (df_sort_and_compress_mws): Likewise. (df_install_refs): Likewise. (df_install_mws): Likewise. (df_refs_add_to_chains): Add flags parameter controlling which vectors are coppied. (df_bb_refs_record): Adjust. (df_record_entry_block_defs): Likewise. (df_record_exit_block_defs): Likewise. (df_refs_verify): Likewise. (df_mws_verify): Likewise. (df_insn_refs_verify): Likewise. (df_bb_verify): Likewise. * ipa-pure-const.c (finish_state): Remove. (propagate): Adjust. * tree-data-ref.c tree-ssa-alias.c tree-ssa-loop-ivcanon.c tree-ssa-threadedge.c tree-vect-loop-manip.c tree-vect-slp.c var-tracking.c: Adjust. * vec.c (stack_vecs): Remove. (register_stack_vec): Likewise. (stack_vec_register_index): Likewise. (unregister_stack_vec): Likewise. * vec.h (struct va_stack): Remove. (struct vec<T, A, vl_ptr>): Specialize as struct vec<T, va_heap, vl_ptr> instead since va_heap is the only allocation strategy compatable with the vl_ptr layout. (struct vec<T, va_gc, vl_ptr>): Remove because it now gets an empty specialization anyway. (class stack_vec): New class. (vec_stack_alloc): Remove. (vec<T, va_heap, vl_ptr>::using_auto_storage): New method. * gcc-interface/decl.c (components_to_record): Adjust. From-SVN: r204137
2013-10-28i386.md (prefetch): Allow TARGET_AVX512PF.Alexander Ivchenko3-2/+66
* config/i386/i386.md (prefetch): Allow TARGET_AVX512PF. (*prefetch_avx512pf_<mode>): New. * config/i386/sse.md (avx512f_vmcmp<mode>3): Ditto. (avx512f_maskcmp<mode>3): Ditto. (vashrv16si3): Ditto. Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com> Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com> Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com> Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com> Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com> Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com> Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com> Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com> From-SVN: r204130
2013-10-28i386.md (any_truncate): New.Alexander Ivchenko4-6/+1057
* config/i386/i386.md (any_truncate): New. (trunsuffix): Ditto. * config/i386/predicates.md (const_8_to_9_operand): New. (const_10_to_11_operand): Ditto. (const_12_to_13_operand): Ditto. (const_14_to_15_operand): Ditto. (const_16_to_19_operand): Ditto. (const_20_to_23_operand): Ditto. (const_24_to_27_operand): Ditto. (const_28_to_31_operand): Ditto. * config/i386/sse.md (unspec): Add UNSPEC_UNSIGNED_FIX_NOTRUNC. (cvtusi2<ssescalarmodesuffix>32): New. (cvtusi2<ssescalarmodesuffix>64): Ditto. (ufloatv16siv16sf2): Ditto. (avx512f_fix_notruncv16sfv16si): Ditto. (avx512f_ufix_notruncv16sfv16si): Ditto. (avx512f_vcvtss2usi): Ditto. (avx512f_vcvtss2usiq): Ditto. (avx512f_vcvttss2usi): Ditto. (avx512f_vcvttss2usiq): Ditto. (avx512f_vcvtsd2usi): Ditto. (avx512f_vcvtsd2usiq): Ditto. (avx512f_vcvttsd2usi): Ditto. (avx512f_vcvttsd2usiq): Ditto. (ufloatv8siv8df): Ditto. (avx512f_cvtdq2pd512_2): Ditto. (avx512f_cvtpd2dq512): Ditto. (avx512f_ufix_notruncv8dfv8si): Ditto. (avx512f_cvtpd2ps512): Ditto. (vec_unpacks_lo_v16sf): Ditto. (vec_unpacks_hi_v16sf): Ditto. (vec_unpacks_float_hi_v16si): Ditto. (vec_unpacks_float_lo_v16si): Ditto. (avx512f_unpckhps512): Ditto. (avx512f_unpcklps512): Ditto. (avx512f_movshdup512): Ditto. (avx512f_movsldup512): Ditto. (vec_extract_lo_v32hi): Ditto. (vec_extract_hi_v32hi): Ditto. (vec_extract_lo_v64qi): Ditto. (vec_extract_hi_v64qi): Ditto. (avx512f_unpckhpd512): Ditto. (avx512f_movddup512): Ditto. (avx512f_unpcklpd512): Ditto. (*avx512f_unpcklpd512): Ditto. (avx512f_shufps512_1): Ditto. (avx512f_shufpd512_1): Ditto. (avx512f_interleave_highv8di): Ditto. (avx512f_interleave_lowv8di): Ditto. (PMOV_DST_MODE): Ditto. (pmov_src_mode): Ditto. (pmov_src_lower): Ditto. (pmov_suff): Ditto. (*avx512f_<code><pmov_src_lower><mode>2): Ditto. (*avx512f_<code>v8div16qi2): Ditto. (*avx512f_<code>v8div16qi2_store): Ditto. (vec_widen_umult_even_v16si): Ditto. (*vec_widen_umult_even_v16si): Ditto. (vec_widen_smult_even_v16si): Ditto. (*vec_widen_smult_even_v16si): Ditto. (avx512f_interleave_highv16si): Ditto. (avx512f_interleave_lowv16si): Ditto. (avx512f_<code>v16qiv16si2): Ditto. (avx512f_<code>v16hiv16si2): Ditto. (avx512f_<code>v8qiv8di2): Ditto. (avx512f_<code>v8hiv8di2): Ditto. (avx512f_<code>v8siv8di2): Ditto. (avx512cd_maskb_vec_dupv8di): Ditto. (avx512cd_maskw_vec_dupv16si): Ditto. (avx512f_vcvtph2ps512): Ditto. (avx512f_vcvtps2ph512): Ditto. (VEC_EXTRACT_MODE): Extened with wider modes. (VEC_PERM_AVX2): Ditto. (VEC_PERM_CONST): Ditto. Co-Authored-By: Andrey Turetskiy <andrey.turetskiy@intel.com> Co-Authored-By: Anna Tikhonova <anna.tikhonova@intel.com> Co-Authored-By: Ilya Tocar <ilya.tocar@intel.com> Co-Authored-By: Ilya Verbin <ilya.verbin@intel.com> Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com> Co-Authored-By: Maxim Kuznetsov <maxim.kuznetsov@intel.com> Co-Authored-By: Michael Zolotukhin <michael.v.zolotukhin@intel.com> Co-Authored-By: Sergey Lega <sergey.s.lega@intel.com> From-SVN: r204128
2013-10-28jump-around-jump.c: New test.Joern Rennecke4-0/+135
gcc/testsuite: 2013-10-28 Claudiu Zissulescu <claziss@synopsys.com> Joern Rennecke <joern.rennecke@embecosm.com> * gcc.target/arc/jump-around-jump.c: New test. gcc: 2013-10-28 Joern Rennecke <joern.rennecke@embecosm.com> * config/arc/arc.c (arc_ccfsm_post_advance): Add comment about TYPE_RETURN. From-SVN: r204123
2013-10-28Move require-pic-register-loc.c to correct directoryTom de Vries1-0/+29
From-SVN: r204119
2013-10-28tree-ssa-loop-ivopts.c (strip_offset_1): Change parameter type.Bin Cheng2-15/+37
* tree-ssa-loop-ivopts.c (strip_offset_1): Change parameter type. Count DECL_FIELD_BIT_OFFSET for COMPONENT_REF. (strip_offset): Convert offset to unsigned number. From-SVN: r204116
2013-10-28Daily bump.GCC Administrator1-1/+1
From-SVN: r204115
2013-10-27Fix line number data for PIC register setup code.Tom de Vries3-4/+17
2013-10-27 Tom de Vries <tom@codesourcery.com> * cfgexpand.c (gimple_expand_cfg): Remove test for parm_birth_insn. Don't commit insertions after NOTE_INSN_FUNCTION_BEG. * gcc.target/arm/require-pic-register-loc.c: New test. From-SVN: r204112
2013-10-27Fix change log entry.Oleg Endo1-2/+2
From-SVN: r204111
2013-10-27sh.c (MSW, LSW): Move and rename macros to...Oleg Endo4-26/+38
* config/sh/sh.c (MSW, LSW): Move and rename macros to... * config/sh/sh.h (SH_REG_MSW_OFFSET, SH_REG_LSW_OFFSET): ... here. (TARGET_BIG_ENDIAN): New macro. * config/sh/sh.md: Use it instead of !TARGET_LITTLE_ENDIAN. Use SH_REG_MSW_OFFSET and SH_REG_LSW_OFFSET. * config/sh/sh.c: Likewise. * config/sh/sh.h: Likewise. From-SVN: r204110
2013-10-27re PR rtl-optimization/58679 (ICE in create_pre_exit, at ↵Uros Bizjak3-4/+28
mode-switching.c:421 with -mavx after r202915) PR target/58679 * gcc.target/i386/pr58679-1.c: New test. * gcc.target/i386/pr58679-2.c: Ditto. From-SVN: r204109
2013-10-27c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend.Richard Sandiford2-2/+4
gcc/c-family/ * c-lex.c (interpret_integer): Remove call to cpp_num_sign_extend. From-SVN: r204108
2013-10-27cris.c (cris_emit_trap_for_misalignment): Replace the removed PRED_MUDFLAP ↵Hans-Peter Nilsson2-5/+7
with PRED_NORETURN. * config/cris/cris.c (cris_emit_trap_for_misalignment): Replace the removed PRED_MUDFLAP with PRED_NORETURN. Correct file-path in comment. From-SVN: r204106
2013-10-27re PR other/33426 (Support of #pragma ivdep)Tobias Burnus4-10/+72
2013-10-27 Tobias Burnus <burnus@net-b.de> gcc/c/ PR other/33426 * c-parser.c (c_parser_while_statement, * c_parser_while_statement, c_parser_pragma): Add GCC ivdep support to 'do' and 'while'. (c_parser_statement_after_labels): Update calls. gcc/testsuite/ PR other/33426 * gcc.dg/vect/vect-ivdep-2.c: New. From-SVN: r204102
2013-10-27Daily bump.GCC Administrator1-1/+1
From-SVN: r204101
2013-10-26sh.md (movmemsi): Remove empty constraints and predicates.Oleg Endo2-20/+30
* config/sh/sh.md (movmemsi): Remove empty constraints and predicates. Fix formatting. (cmpstr_t, cmpstrsi): Fix formatting. From-SVN: r204098
2013-10-26re PR target/52483 (SH Target: Loads from volatile memory leave redundant ↵Oleg Endo7-24/+156
sign/zero extensions) PR target/52483 * config/sh/predicates.md (general_movdst_operand): Allow reg+reg addressing, do not use general_operand for memory operands. PR target/52483 * gcc.target/sh/pr52483-1.c: Add tests for memory stores. * gcc.target/sh/pr52483-2.c: Likewise. * gcc.target/sh/pr52483-3.c: Likewise. * gcc.target/sh/pr52483-4.c: Likewise. From-SVN: r204097
2013-10-26revert: lra-spills.c (lra_final_code_change): Remove useless move insns.Vladimir Makarov2-15/+7
2013-10-26 Vladimir Makarov <vmakarov@redhat.com> Revert: 2013-10-25 Vladimir Makarov <vmakarov@redhat.com> * lra-spills.c (lra_final_code_change): Remove useless move insns. From-SVN: r204094
2013-10-26predict.c (PRED_MUDFLAP): Remove.Jeff Law3-8/+3
* predict.c (PRED_MUDFLAP): Remove. * targhooks.c (build_va_arg_indirect_ref): Remove mudflap support. From-SVN: r204091
2013-10-26Makefile.def (target_modules): Remove libmudflapJeff Law27-1903/+57
* Makefile.def (target_modules): Remove libmudflap (languages): Remove check-target-libmudflap). * Makefile.in: Rebuilt. * Makefile.tpl (check-target-libmudflap-c++): Remove. * configure.ac (target_libraries): Remove target-libmudflap. Remove checks which disabled libmudflap on some systems. * configure: Rebuilt. * libmudflap: Directory removed. * Makefile.in (C_COMMON_OBJS): Remove tree-mudflap. (OBJS): Remove tree-nomudflap.o (GTFILES): Remove tree-mudflap.c * builtins.c (expand_builtin_alloc): Remove mudflap support. * gcc.c (MFWRAP_SPEC, MFLIB_SPEC): Likewise. (mfwrap_spec, mflib_spec): Likewise. (cpp_unique_options, cc1_options, static_specs): Likewise. * gimplify (gimplify_vla_decl, build_va_arg_indirect_ref): Likewise. * passes.def: Likewise. * toplev.c (compile_file, process_options): Likewise. * tree-inline.c (copy_tree_r): Likewise. * tree-pass.,h (make_pass_mudflap_1, make_pass_mudflap_2): Likewise. * varasm.c (make_decl_rtl, make_decl_rtl_for_debug): Likewise. (build_constant_desc, output_constant_def_contents): Likewise. (categorize_decl_for_section): Likewise. * tree-mudflap.c: Removed. * tree-mudflap.h: Removed. * tree-nomudflap.c: Removed. * bfin/uclinux.h (MFWRAP_SPEC): Remove. * moxie/uclinux.h (MFWRAP_SPEC): Likewise. * rs6000/aix.h (MFWRAP_SPEC, MFLIB_SPEC): Likewise. * config/sol2.h (MFLIB_SPEC): Likewise. * doc/install.texi: Remove mudflap references. * doc/passes.texi: Similarly. * doc/sourcebuild.texi: Similarly. * doc/invoke.texi: Remove mudlfap related options. * c-family/c-common.c (c_define_builtins): Remove mudflap support. * c-family/c.opt: Ignore and warn for mudflap options. * g++.dg/torture/pr49309.C: Removed. * gcc.dg/dfp/pr35739.c: Removed. From-SVN: r204090
2013-10-26Daily bump.GCC Administrator1-1/+1
From-SVN: r204083
2013-10-25re PR rtl-optimization/58759 (wrong code (segfaults) at -O2 on ↵Vladimir Makarov4-13/+52
x86_64-linux-gnu in 32-bit mode) 2013-10-25 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/58759 * lra-constraints.c (lra_constraints): Remove wrong condition to remove insn setting up an equivalent pseudo. 2013-10-25 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/58759 * gcc.target/i386/pr58759.c: New. From-SVN: r204080
2013-10-252013-10-25 Vladimir Makarov <vmakarov@redhat.com>Vladimir Makarov6-7/+159
* config/rs6000/rs6000-protos.h (rs6000_secondary_memory_needed_mode): New prototype. * config/rs6000/rs6000.c: Include ira.h. (TARGET_LRA_P): Redefine. (rs6000_legitimate_offset_address_p): Call legitimate_constant_pool_address_p in strict mode for LRA. (rs6000_legitimate_address_p): Ditto. (legitimate_lo_sum_address_p): Add code for LRA. Use lra_in_progress. (rs6000_emit_move): Add LRA version of code to generate load/store of SDmode values. (rs6000_secondary_memory_needed_mode): New. (rs6000_alloc_sdmode_stack_slot): Do nothing for LRA. (rs6000_secondary_reload_class): Return NO_REGS for LRA for constants, memory, and FP registers. (rs6000_lra_p): New. * config/rs6000/rs6000.h (SECONDARY_MEMORY_NEEDED_MODE): New macro. * config/rs6000/rs6000.opt (mlra): New option. * lra-spills.c (lra_final_code_change): Remove useless move insns. From-SVN: r204079
2013-10-25pr33426-ivdep.cc: Use dg-options.Tobias Burnus4-9/+15
2013-10-25 Tobias Burnus <burnus@net-b.de> * g++.dg/vect/pr33426-ivdep.cc: Use dg-options. * gfortran.dg/vect/vect-do-concurrent-1.f90: Ditto. * testsuite/gcc.dg/vect/vect-ivdep-1.c: Ditto. From-SVN: r204074
2013-10-25tree-ssa-math-opts.c (convert_plusminus_to_widen): Call has_single_use () ↵Yufeng Zhang4-5/+39
and not do the conversion if... gcc/ * tree-ssa-math-opts.c (convert_plusminus_to_widen): Call has_single_use () and not do the conversion if has_single_use () returns false for the multiplication result. gcc/testsuite/ * gcc.dg/wmul-1.c: New test. From-SVN: r204072
2013-10-25re PR c++/58878 (Template parameter name can be hidden in a template member ↵Paolo Carlini4-1/+74
function defined inside the class specifier) /cp 2013-10-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58878 * pt.c (check_template_shadow): Don't skip declarations in inline member templates. /testsuite 2013-10-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58878 * g++.dg/template/pr58878.C: New. From-SVN: r204071
2013-10-25Fix names of various macro parameters in tree.hDavid Malcolm2-39/+57
* tree.h (EXCEPTIONAL_CLASS_P): Rename parameter from "CODE" to "NODE", since this works on a "tree", not an "enum tree_code". (CONSTANT_CLASS_P): Likewise. (TYPE_P): Likewise. (DECL_P): Likewise. (INDIRECT_REF_P): Likewise. (REFERENCE_CLASS_P): Likewise. (COMPARISON_CLASS_P): Likewise. (UNARY_CLASS_P): Likewise. (BINARY_CLASS_P): Likewise. (STATEMENT_CLASS_P): Likewise. (VL_EXP_CLASS_P): Likewise. (EXPRESSION_CLASS_P): Likewise. (IS_TYPE_OR_DECL_P): Likewise. From-SVN: r204070
2013-10-25tree-ssa-alias.c (ao_ref_init_from_ptr_and_size): Look for an ADDR_EXPR in ↵Marc Glisse4-0/+35
the defining statement. 2013-10-25 Marc Glisse <marc.glisse@inria.fr> gcc/ * tree-ssa-alias.c (ao_ref_init_from_ptr_and_size): Look for an ADDR_EXPR in the defining statement. gcc/testsuite/ * gcc.dg/tree-ssa/alias-23.c: New file. From-SVN: r204065
2013-10-25re PR tree-optimization/58626 (possible array wrong code bug)Richard Biener4-160/+287
2013-10-25 Richard Biener <rguenther@suse.de> PR tree-optimization/58626 * tree-loop-distribution.c (enum rdg_dep_type): Remove anti_dd, output_dd and input_dd. (struct rdg_edge): Remove level and relation members. (RDGE_LEVEL, RDGE_RELATION): Remove. (dot_rdg_1): Adjust. (create_rdg_edge_for_ddr): Remove. (create_rdg_edges_for_scalar): Adjust. (create_edge_for_control_dependence): Likewise. (create_rdg_edges): Split into ... (create_rdg_flow_edges): ... this (create_rdg_cd_edges): ... and this. (free_rdg): Adjust. (build_rdg): Likewise, do not compute data dependences or add edges for them. (pg_add_dependence_edges): New function. (pgcmp): Likewise. (distribute_loop): First apply all non-dependence based partition mergings. Then compute dependences between partitions and merge and order partitions according to them. * gcc.dg/torture/pr58626.c: New testcase. From-SVN: r204062
2013-10-25re PR c++/54812 ([C++11] Delete expression doesn't respect access of ↵Paolo Carlini2-0/+21
defaulted destructor) 2013-10-25 Paolo Carlini <paolo.carlini@oracle.com> PR c++/54812 * g++.dg/cpp0x/defaulted47.C: New. From-SVN: r204057
2013-10-25re PR rtl-optimization/58831 (wrong code at -O2 and -O3 on x86_64-linux-gnu ↵Eric Botcazou4-11/+58
in 64-bit mode) PR rtl-optimization/58831 * alias.c (init_alias_analysis): At the beginning of each iteration, set the reg_seen[N] bit if static_reg_base_value[N] is non-null. From-SVN: r204055
2013-10-25pr57793.c: Add expected error messages for targets with small integers.Nick Clifton13-8/+39
* c-c++-common/pr57793.c: Add expected error messages for targets with small integers. * gcc.dg/c99-stdint-1.c: Only run on 32-bit plus targets. * gcc.dg/c99-stdint-2.c: Likewise. * gcc.dg/cdce1.c: Likewise. * gcc.dg/fold-overflow-1.c: Likewise. * gcc.dg/utf-cvt.c: Likewise. * gcc.dg/ftrapv-1.c: Only run on targets that support trapping arithmetic. * gcc.dg/ftrapv-2.c: Likewise. * gcc.dg/pr30286.c: Likewise. * gcc.dg/pr19340.c: Only run on targets that support scheduling. * lib/target-supports.exp (check_effective_target_trapping): New proc. Returns true if the target supports trapping arithmetic. From-SVN: r204053
2013-10-25recog.c (search_ofs): New static variable moved from...Eric Botcazou2-3/+11
* recog.c (search_ofs): New static variable moved from... (peep2_find_free_register): ...here. (peephole2_optimize): Initialize it. From-SVN: r204050