aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2014-12-22re PR target/55023 (hppa: wrong code generated with tail call optimisation)John David Anglin4-0/+53
PR target/55023 * dse.c (scan_insn): Treat sibling call as though it does a wild read. * testsuite/gcc.dg/pr55023.c: New file. From-SVN: r219037
2014-12-22* lib/ubsan-dg.exp: Add library path for libstdc++.Francois-Xavier Coudert2-0/+5
From-SVN: r219035
2014-12-22trans-intrinsic.c (gfc_conv_intrinsic_caf_get, [...]): Fix vector handling.Tobias Burnus2-8/+19
2014-12-22 Tobias Burnus <burnus@net-b.de> * trans-intrinsic.c (gfc_conv_intrinsic_caf_get, conv_caf_send): Fix vector handling. From-SVN: r219034
2014-12-22re PR target/58314 (SH4 error: 'asm' operand requires impossible reload)Oleg Endo3-4/+171
gcc/testsuite/ PR target/58314 * gcc.target/sh/torture/pr58314-2.c: New. * gcc.target/sh/torture/pr58314.c: Don't set -Os option. From-SVN: r219030
2014-12-22re PR fortran/63363 (No diagnostic for passing function as actual argument ↵Janus Weil4-3/+44
to KIND) 2014-12-22 Janus Weil <janus@gcc.gnu.org> PR fortran/63363 * check.c (gfc_check_kind): Reject polymorphic and non-data arguments. 2014-12-22 Janus Weil <janus@gcc.gnu.org> PR fortran/63363 * gfortran.dg/kind_1.f90: New. From-SVN: r219027
2014-12-22re PR target/52933 (SH Target: Use div0s for integer sign comparisons)Oleg Endo2-0/+33
gcc/testsuite/ PR target/52933 * gcc.target/sh/sh/pr52933-3.c: New. From-SVN: r219017
2014-12-22* gnat.dg/nan_max.adb: New test.Eric Botcazou1-0/+30
From-SVN: r219011
2014-12-22trans.c (Attribute_to_gnu): If the type is a floating-point type...Eric Botcazou4-10/+69
* gcc-interface/trans.c (Attribute_to_gnu) <Attr_{Min,Max}>: If the type is a floating-point type, implement the semantics of the C99 f{min,max} routines with regard to NaNs. (gnat_to_gnu): Call builtin_decl_implicit. * gcc-interface/utils2.c (compare_arrays): Adjust comments. From-SVN: r219010
2014-12-22decl.c (gnat_to_gnu_field): Post the error message for parent overlapping on ↵Eric Botcazou6-76/+122
the position instead of on the... * gcc-interface/decl.c (gnat_to_gnu_field): Post the error message for parent overlapping on the position instead of on the first bit. For a field that needs strict alignment, issue the error for the position first and, for the size, issue an error if it is too large only for the atomic and aliased cases. Issue a specific error if the size is not a multiple of a byte in the volatile and the stric alignment cases. From-SVN: r219009
2014-12-22re PR rtl-optimization/62151 (wrong code at -O2 and -O3 on x86_64-linux-gnu)Bin Cheng4-8/+89
PR rtl-optimization/62151 * combine.c (try_combine): New local variables local_elim_i1 and local_elim_i0. Set elim_i1 and elim_i0 using the local version variables. Distribute notes from i0notes or i1notes using the local variables. gcc/testsuite/ChangeLog PR rtl-optimization/62151 * gcc.c-torture/execute/pr62151.c: New test. From-SVN: r219008
2014-12-22decl.c (check_ok_for_atomic): Rename into...Eric Botcazou5-61/+86
* gcc-interface/decl.c (check_ok_for_atomic): Rename into... (check_ok_for_atomic_type): ...this. When checking the mode, also check that the type is sufficient aligned. Remove useless code and tidy up implementation. (gnat_to_gnu_entity): Adjust to above renaming. (gnat_to_gnu_component_type): Likewise. (gnat_to_gnu_field): Likewise. From-SVN: r219007
2014-12-22symbol_summary is used for inline_summary.Martin Liska13-142/+193
* lto-partition.c (add_symbol_to_partition_1): New inline_summaries is used. (undo_partition): Likewise. (lto_balanced_map): Likewise. * cgraphunit.c (symbol_table::process_new_functions): New inline_summaries is used. * ipa-cp.c (ipcp_cloning_candidate_p): Likewise. (devirtualization_time_bonus): Likewise. (estimate_local_effects): Likewise. (ipcp_propagate_stage): Likewise. * ipa-inline-analysis.c (evaluate_conditions_for_known_args): Likewise. (evaluate_properties_for_edge): Likewise. (inline_summary_alloc): Likewise. (reset_inline_summary): New inline_summary argument is introduced. (inline_summary_t::remove): New function. (inline_summary_t::duplicate): Likewise. (dump_inline_edge_summary): New inline_summaries is used. (dump_inline_summary): Likewise. (estimate_function_body_sizes): Likewise. (compute_inline_parameters): Likewise. (estimate_edge_devirt_benefit): Likewise. (estimate_node_size_and_time): Likewise. (inline_update_callee_summaries): Likewise. (inline_merge_summary): Likewise. (inline_update_overall_summary): Likewise. (simple_edge_hints): Likewise. (do_estimate_edge_time): Likewise. (estimate_time_after_inlining): Likewise. (estimate_size_after_inlining): Likewise. (do_estimate_growth): Likewise. (growth_likely_positive): Likewise. (inline_generate_summary): Likewise. (inline_read_section): Likewise. (inline_read_summary): Likewise. (inline_write_summary): Likewise. (inline_free_summary): Likewise. * ipa-inline-transform.c (clone_inlined_nodes): Likewise. (inline_call): Likewise. * ipa-inline.c (caller_growth_limits): Likewise. (can_inline_edge_p): Likewise. (want_early_inline_function_p): Likewise. (compute_uninlined_call_time): Likewise. (compute_inlined_call_time): Likewise. (big_speedup_p): Likewise. (want_inline_small_function_p): Likewise. (edge_badness): Likewise. (update_caller_keys): Likewise. (update_callee_keys): Likewise. (recursive_inlining): Likewise. (inline_small_functions): Likewise. (inline_to_all_callers): Likewise. (dump_overall_stats): Likewise. (early_inline_small_functions): Likewise. * ipa-inline.h: New class inline_summary_t replaces vec<inline_summary_t>. * ipa-split.c (execute_split_functions): New inline_summaries is used. * ipa.c (walk_polymorphic_call_targets): Likewise. * tree-sra.c (ipa_sra_preliminary_function_checks): Likewise. From-SVN: r219006
2014-12-22ipa-prop uses symbol_summary class.Martin Liska27-85/+136
* lto-partition.c: Include of symbol-summary.h is added. * lto-symtab.c: Likewise. * lto.c: Likewise. * auto-profile.c: Include of symbol-summary.h is added. * cgraph.c: Likewise. * cgraphbuild.c: Likewise. * cgraphclones.c: Likewise. * cgraphunit.c: Likewise. * ipa-cp.c: Likewise. * ipa-devirt.c: Likewise. * ipa-icf.c: Likewise. * ipa-inline-analysis.c (evaluate_properties_for_edge): New ipa_node_params_sum data structure is used. (inline_node_duplication_hook): Likewise. (estimate_function_body_sizes): Likewise. (remap_edge_change_prob): Likewise. (inline_merge_summary): Likewise. * ipa-inline-transform.c: Include of symbol-summary.h is added. * ipa-inline.c (early_inliner): New ipa_node_params_sum data structure is used. * ipa-polymorphic-call.c: Include of symbol-summary.h is added. * ipa-profile.c: Include of symbol-summary.h is added. * ipa-prop.c (ipa_propagate_indirect_call_infos): New ipa_node_params_sum data structure is used. (ipa_node_params::~ipa_node_params): New function. (ipa_free_all_node_params): Destruction is simplified. (ipa_node_removal_hook): Removed. (ipa_add_new_function): Renamed from ipa_node_duplication_hook. (ipa_node_params_t::duplicate): New function. (ipa_register_cgraph_hooks): Few hooks are removed. (ipa_unregister_cgraph_hooks): Likewise. (ipa_prop_write_jump_functions): New ipa_node_params_sum is used. * ipa-prop.h (struct ipa_node_params): Destructor introduced for the structure. (ipa_check_create_node_params): Vector for ipa_node_params is replaced with function_summary. * ipa-split.c: Include of symbol-summary.h is added. * ipa-utils.c: Include of symbol-summary.h is added. * ipa.c: Include of symbol-summary.h is added. * omp-low.c: Include of symbol-summary.h is added. * tree-inline.c: Include of symbol-summary.h is added. * tree-sra.c: Include of symbol-summary.h is added. * tree-ssa-pre.c: Include of symbol-summary.h is added. From-SVN: r219005
2014-12-22New symbol_summary class introduced.Martin Liska5-3/+301
* cgraph.h (symbol_table::allocate_cgraph_symbol): Summary UID is filled up. * symbol-summary.h: New file. * gengtype.c (open_base_files): Add symbol-summary.h. * toplev.c (general_init): Call constructor of symbol_table. From-SVN: r219004
2014-12-22Daily bump.GCC Administrator1-1/+1
From-SVN: r219002
2014-12-21re PR target/55212 ([SH] Switch to LRA)Oleg Endo2-3/+15
gcc/ PR target/55212 * config/sh/sh.md (*addsi3_compact): Add parentheses around && condition. Add comments. From-SVN: r218999
2014-12-21re PR target/17280 (-mrelax and -O cause .uses directives in assembler to ↵Oleg Endo2-0/+18
refer to non-existent local labels) gcc/testsuite/ PR target/17280 * gcc.target/sh/torture/pr17280.c: New. From-SVN: r218998
2014-12-21re PR c++/64359 (alias_template_specialization_p & template_args_equal show ↵Jason Merrill2-17/+41
up high in profile) PR c++/64359 * pt.c (iterative_hash_template_arg): Hash alias specializations differently from their TYPE_CANONICAL. (alias_template_specialization_p): Optimize. (template_args_equal): Optimize alias handling. (dependent_alias_template_spec_p): Only check innermost args. From-SVN: r218995
2014-12-21Daily bump.GCC Administrator1-1/+1
From-SVN: r218994
2014-12-20re PR target/64358 (Wrong code for __int128 operations in powerpc64le)Segher Boessenkool3-6/+20
PR target/64358 * config/rs6000/rs6000.c (rs6000_split_logical_inner): Swap the input operands if only the second is inverted. * config/rs6000/rs6000.md (*boolc<mode>3_internal1 for BOOL_128): Swap BOOL_REGS_OP1 and BOOL_REGS_OP2. Correct arguments to rs6000_split_logical. (*boolc<mode>3_internal2 for TI2): Swap operands[1] and operands[2]. From-SVN: r218989
2014-12-19* g++.dg/cpp1y/lambda-generic-variadic2.C: Fix.Jason Merrill1-3/+4
From-SVN: r218987
2014-12-20c-cppbuiltin.c (__cpp_sized_deallocation): Uncomment and move macro.Edward Smith-Rowland8-9/+44
c-family/ 2014-12-20 Edward Smith-Rowland <3dw4rd@verizon.net> * c-cppbuiltin.c (__cpp_sized_deallocation): Uncomment and move macro. Control macro with flag_sized_deallocation. testsuite/ 2014-12-20 Edward Smith-Rowland <3dw4rd@verizon.net> * g++.dg/cpp1y/feat-cxx98-neg.C: Enable __cpp_sized_deallocation test. * g++.dg/cpp1y/feat-cxx14.C: Ditto. * g++.dg/cpp1y/feat-cxx11-neg.C: Ditto and move tests for consistent order. * g++.dg/cpp1y/feat-sized-dealloc-neg.C: New. * g++.dg/cpp1y/feat-sized-dealloc.C: New. From-SVN: r218986
2014-12-20invoke.texi: Document -Wdiscarded-array-qualifiers.Martin Uecker15-148/+568
2014-12-20 Martin Uecker <uecker@eecs.berkeley.edu> * doc/invoke.texi: Document -Wdiscarded-array-qualifiers. * doc/extend.texi: Document new behavior for pointers to arrays with qualifiers. c/ * c-typeck.c: New behavious for pointers to arrays with qualifiers (common-pointer-type): For pointers to arrays take qualifiers from element type. (build_conditional_expr): Add warnings for lost qualifiers. (comp-target-types): Allow pointers to arrays with different qualifiers. (convert-for-assignment): Adapt warnings for discarded qualifiers. Add WARNING_FOR_QUALIFIERS macro and rename WARN_FOR_QUALIFIERS to PEDWARN_FOR_QUALIFIERS. c-family/ * c.opt (Wdiscarded-array-qualifiers): New option. testsuite/ * gcc.dg/Wwrite-strings-1.c: Change dg-warning. * gcc.dg/array-quals-1.c: Use -Wno-discarded-array-qualifiers. * gcc.dg/array-quals-2.c: Change dg-options, dg-warning. * gcc.dg/pointer-array-atomic.c: New test. * gcc.dg/pointer-array-quals-1.c: New test. * gcc.dg/pointer-array-quals-2.c: New test (-pedantic-errors). * gcc.dg/qual-component-1.c: Change dg-options, dg-warnings. From-SVN: r218985
2014-12-20Daily bump.GCC Administrator1-1/+1
From-SVN: r218983
2014-12-19compiler: Add temporaries required in cases of interface conversion.Ian Lance Taylor2-16/+45
From-SVN: r218979
2014-12-19Fix casting non-"int" to bool.David Malcolm4-1/+52
gcc/jit/ChangeLog: * jit-playback.c (gcc::jit::playback::context::build_cast): In case BOOLEAN_TYPE, don't assume that the source expression is of type "int". gcc/testsuite/ChangeLog: * jit.dg/test-expressions.c (make_tests_of_casts): Add tests of casting between "long" and "bool". (verify_casts): Verify these new test cases. From-SVN: r218977
2014-12-19hash-table.h (struct pointer_hash): Fix formating.Jan Hubicka3-112/+79
* hash-table.h (struct pointer_hash): Fix formating. (hash_table_higher_prime_index): Declare pure. (hash_table_mod2, hash_table_mod1, mul_mod): Move inline; assume that uint64_t always exists. (hash_table<Descriptor, Allocator, false>): Use gcc_checking_assert. (hash_table<Descriptor, Allocator, false>::expand ()): Fix formating. (hash_table<Descriptor, Allocator, false>::clear_slot (value_type **slot)): Use checking assert. * hash-table.c: Remove #if 0 code. (hash_table_higher_prime_index): Use gcc_assert. (mul_mod, hash-table_mod1, hash_table_mod2): move to hash-table.h From-SVN: r218976
2014-12-19MIPSR6: mips-img-elf mips-img-linux-gnu triplets and vendor updatesMatthew Fortune7-2/+101
gcc/ * config.gcc: Support mips*-img-linux* and mips*-img-elf*. * config/mips/mti-linux.h: Support mips32r6 as being the default arch. * config/mips/t-img-elf: New. * config/mips/t-img-linux: New. gcc/testsuite/ * gcc.target/mips/pr37362.c: Skip for mips-img-elf. From-SVN: r218975
2014-12-19go-gcc.cc (array_constructor_expression): Don't construct arrays of ↵Chris Manghane2-2/+24
zero-sized values. * go-gcc.cc (array_constructor_expression): Don't construct arrays of zero-sized values. From-SVN: r218974
2014-12-19MIPS32R6 and MIPS64R6 supportMatthew Fortune39-397/+1081
gcc/ * config.gcc: Add mipsisa64r6 and mipsisa32r6 cpu support. * config/mips/constraints.md (ZD): Add r6 restrictions. * config/mips/gnu-user.h (DRIVER_SELF_SPECS): Add MIPS_ISA_LEVEL_SPEC. * config/mips/loongson.md (<u>div<mode>3, <u>mod<mode>3): Move to mips.md. * config/mips/mips-cpus.def (mips32r6, mips64r6): Define. * config/mips/mips-modes.def (CCF): New mode. * config/mips/mips-protos.h (mips_9bit_offset_address_p): New prototype. * config/mips/mips-tables.opt: Regenerate. * config/mips/mips.c (MIPS_JR): Use JALR $, <reg> for R6. (mips_rtx_cost_data): Add pseudo-processors W32 and W64. (mips_9bit_offset_address_p): New function. (mips_rtx_costs): Account for R6 multiply and FMA instructions. (mips_emit_compare): Implement R6 FPU comparisons. (mips_expand_conditional_move): Implement R6 selects. (mips_expand_conditional_trap): Account for removed trap immediate. (mips_expand_block_move): Disable inline move when LWL/LWR are removed. (mips_print_float_branch_condition): Update for R6 FPU branches. (mips_print_operand): Handle CCF mode compares. (mips_interrupt_extra_call_saved_reg_p): Do not attempt to callee-save MD_REGS for R6. (mips_hard_regno_mode_ok_p): Support CCF mode. (mips_mode_ok_for_mov_fmt_p): Likewise. (mips_secondary_reload_class): CCFmode can be loaded directly. (mips_set_fast_mult_zero_zero_p): Account for R6 multiply instructions. (mips_option_override): Ensure R6 is used with fp64. Set default mips_nan modes. Check for mips_nan support. Prevent DSP with R6. (mips_conditional_register_usage): Disable MD_REGS for R6. Disable FPSW for R6. (mips_mulsidi3_gen_fn): Support R6 multiply instructions. * config/mips/mips.h (ISA_MIPS32R6, ISA_MIPS64R6): Define. (TARGET_CPU_CPP_BUILTINS): Rework for mips32/mips64. (ISA_HAS_JR): New macro. (ISA_HAS_HILO): New macro. (ISA_HAS_R6MUL): Likewise. (ISA_HAS_R6DMUL): Likewise. (ISA_HAS_R6DIV): Likewise. (ISA_HAS_R6DDIV): Likewise. (ISA_HAS_CCF): Likewise. (ISA_HAS_SEL): Likewise. (ISA_HAS_COND_TRAPI): Likewise. (ISA_HAS_FP_MADDF_MSUBF): Likewise. (ISA_HAS_LWL_LWR): Likewise. (ISA_HAS_IEEE_754_LEGACY): Likewise. (ISA_HAS_IEEE_754_2008): Likewise. (ISA_HAS_PREFETCH_9BIT): Likewise. (MIPSR6_9BIT_OFFSET_P): New macro. (BASE_DRIVER_SELF_SPECS): Use MIPS_ISA_DRIVER_SELF_SPECS. (DRIVER_SELF_SPECS): Use MIPS_ISA_LEVEL_SPEC. (MULTILIB_ISA_DEFAULT): Handle mips32r6 and mips64r6. (MIPS_ISA_LEVEL_SPEC): Likewise. (MIPS_ISA_SYNCI_SPEC): Likewise. (ISA_HAS_64BIT_REGS): Likewise. (ISA_HAS_BRANCHLIKELY): Likewise. (ISA_HAS_MUL3): Likewise. (ISA_HAS_DMULT): Likewise. (ISA_HAS_DDIV): Likewise. (ISA_HAS_DIV): Likewise. (ISA_HAS_MULT): Likewise. (ISA_HAS_FP_CONDMOVE): Likewise. (ISA_HAS_8CC): Likewise. (ISA_HAS_FP4): Likewise. (ISA_HAS_PAIRED_SINGLE): Likewise. (ISA_HAS_MADD_MSUB): Likewise. (ISA_HAS_FP_RECIP_RSQRT): Likewise. * config/mips/mips.md (processor): Add w32 and w64. (FPCC): New mode iterator. (reg): Add CCF mode. (fpcmp): New mode attribute. (fcond): Add ordered, ltgt and ne codes. (fcond): Update code attribute. (sel): New code attribute. (selinv): Likewise. (ctrap<mode>4): Update condition. (*conditional_trap_reg<mode>): New define_insn. (*conditional_trap<mode>): Update condition. (mul<mode>3): Expand R6 multiply instructions. (<su>mulsi3_highpart): Likewise. (<su>muldi3_highpart): Likewise. (mul<mode>3_mul3_loongson): Rename... (mul<mode>3_mul3_hilo): To this. Add R6 mul instruction. (<u>mulsidi3_32bit_r6): New expander. (<u>mulsidi3_32bit): Restrict to pre-r6 multiplies. (<u>mulsidi3_32bit_r4000): Likewise. (<u>mulsidi3_64bit): Likewise. (<su>mulsi3_highpart_internal): Likewise. (mulsidi3_64bit_r6dmul): New instruction. (<su>mulsi3_highpart_r6): Likewise. (<su>muldi3_highpart_r6): Likewise. (fma<mode>4): Likewise. (movccf): Likewise. (*sel<code><GPR:mode>_using_<GPR2:mode>): Likewise. (*sel<mode>): Likewise. (<u>div<mode>3): Moved from loongson.md. Add R6 instructions. (<u>mod<mode>3): Likewise. (extvmisalign<mode>): Require ISA_HAS_LWL_LWR. (extzvmisalign<mode>): Likewise. (insvmisalign<mode>): Likewise. (mips_cache): Account for R6 displacement field sizes. (*branch_fp): Rename... (*branch_fp_<mode>): To this. Add CCFmode support. (*branch_fp_inverted): Rename... (*branch_fp_inverted_<mode>): To this. Add CCFmode support. (s<code>_<mode>): Rename... (s<code>_<SCALARF:mode>_using_<FPCC:mode>): To this. Add FCCmode condition support. (s<code>_<mode> swapped): Rename... (s<code>_<SCALARF:mode>_using_<FPCC:mode> swapped): To this. Add CCFmode condition support. (mov<mode>cc GPR): Expand R6 selects. (mov<mode>cc FPR): Expand R6 selects. (*tls_get_tp_<mode>_split): Do not .set push for >= mips32r2. * config/mips/netbsd.h (TARGET_CPU_CPP_BUILTINS): Update similarly to mips.h. (ASM_SPEC): Add mips32r6, mips64r6. * config/mips/t-isa3264 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES): Update for mips32r6/mips64r6. * doc/invoke.texi: Document -mips32r6,-mips64r6. * doc/md.texi: Update comment for ZD constraint. libgcc/ * config.host: Support mipsisa32r6 and mipsisa64r6. * config/mips/mips16.S: Do not build for R6. gcc/testsuite/ * gcc.dg/torture/mips-hilo-2.c: Unconditionally pass for R6 onwards. * gcc.dg/torture/pr19683-1.c: Likewise. * gcc.target/mips/branch-cost-2.c: Require MOVN. * gcc.target/mips/movcc-1.c: Likewise. * gcc.target/mips/movcc-2.c: Likewise. * gcc.target/mips/movcc-3.c: Likewise. * gcc.target/mips/call-saved-4.c: Require LDC. * gcc.target/mips/dmult-1.c: Require R5 or earlier. * gcc.target/mips/fpcmp-1.c: Likewise. * gcc.target/mips/fpcmp-2.c: Likewise. * gcc.target/mips/neg-abs-2.c: Likewise. * gcc.target/mips/timode-1.c: Likewise. * gcc.target/mips/unaligned-1.c: Likewise. * gcc.target/mips/madd-3.c: Require MADD. * gcc.target/mips/madd-9.c: Likewise. * gcc.target/mips/maddu-3.c: Likewise. * gcc.target/mips/msub-3.c: Likewise. * gcc.target/mips/msubu-3.c: Likewise. * gcc.target/mips/mult-1.c: Require INS and not DMUL. * gcc.target/mips/mips-ps-type-2.c: Require MADD.PS. * gcc.target/mips/mips.exp (mips_option_groups): Add ins, dmul, ldc, movn, madd, maddps. (mips-dg-options): INS available from R2. LDC available from MIPS II, DMUL is present in octeon. Describe all features removed from R6. Co-Authored-By: Steve Ellcey <sellcey@imgtec.com> From-SVN: r218973
2014-12-19Fix issue with string options and nested gcc_jit_contextsDavid Malcolm2-5/+14
gcc/jit/ChangeLog: * jit-recording.c (gcc::jit::recording::context::context): When copying string options from a parent context, take a copy of the underlying buffers, rather than simply copying the pointer. From-SVN: r218972
2014-12-19re PR target/64268 (bootstrap failure (ICE in wide_int_to_tree, at ↵Segher Boessenkool2-0/+11
tree.c:1438) on powerpc in libgcc, stage2) PR target/64268 * combine.c (try_combine): Immediately return if any of I0,I1,I2 are the same insn. From-SVN: r218971
2014-12-19Handle NULL in gcc_jit_context_set_str_optionDavid Malcolm2-1/+6
gcc/jit/ChangeLog: * jit-recording.c (gcc::jit::recording::context::set_str_option): Handle NULL. From-SVN: r218969
2014-12-19re PR fortran/64209 ([OOP] runtime segfault with CLASS(*), INTENT(OUT) dummy ↵Janus Weil4-0/+91
argument) 2014-12-19 Janus Weil <janus@gcc.gnu.org> PR fortran/64209 * trans-expr.c (gfc_trans_class_array_init_assign): Check if _def_init component is non-NULL. (gfc_trans_class_init_assign): Ditto. 2014-12-19 Janus Weil <janus@gcc.gnu.org> PR fortran/64209 * gfortran.dg/unlimited_polymorphic_19.f90: New. From-SVN: r218968
2014-12-192014-12-19 Paolo Carlini <paolo.carlini@oracle.com>Paolo Carlini2-6/+6
* Tweak ChangeLog. From-SVN: r218963
2014-12-19using30.C: Move ...Kai Tietz2-1/+6
* g++.dg/template/using30.C: Move ... * g++.dg/cpp0x/alias-decl-45.C: ... here. From-SVN: r218962
2014-12-19[AArch64 3/3] Fix XOR_one_cmpl pattern; add SIMD-reg variants for BIC,ORN,EONAlan Lawrence5-7/+84
gcc/: * config/aarch64/aarch64.c (<LOGICAL:optab>_one_cmpl<mode>3): Reparameterize to... (<NLOGICAL:optab>_one_cmpl<mode>3): with extra SIMD-register variant. (xor_one_cmpl<mode>3): New define_insn_and_split. * config/aarch64/iterators.md (NLOGICAL): New define_code_iterator. gcc/testsuite/: * gcc.target/aarch64/eon_1.c: New test. From-SVN: r218961
2014-12-19[AArch64 2/3] Add SIMD-reg variants of logical operators and/ior/xor/notAlan Lawrence3-10/+24
* config/aarch64/aarch64.md (<optab><mode>3, one_cmpl<mode>2): Add SIMD-register variant. * config/aarch64/iterators.md (Vbtype): Add value for SI. From-SVN: r218960
2014-12-19using30.C: Move...Paolo Carlini1-2/+2
2014-12-19 Paolo Carlini <paolo.carlini@oracle.com> * g++.dg/template/using30.C: Move... * g++.dg/cpp0x/alias-decl-45.C: ... here. From-SVN: r218959
2014-12-19[AArch64 1/3] Don't disparage add/sub in SIMD registersAlan Lawrence2-6/+11
* config/aarch64/aarch64.md (subdi3, adddi3_aarch64): Don't penalize SIMD reg variant. From-SVN: r218958
2014-12-19re PR c++/60493 (g++ throws segmentation fault on simple code)Paolo Carlini2-0/+23
2014-12-19 Paolo Carlini <paolo.carlini@oracle.com> PR c++/60493 * g++.dg/template/crash120.C: New. From-SVN: r218957
2014-12-19re PR c++/61198 (Crash when selecting specializations through aliases.)Kai Tietz2-0/+29
PR c++/61198 * g++.dg/template/using30.C: New file. From-SVN: r218956
2014-12-19re PR c++/61198 (Crash when selecting specializations through aliases.)Kai Tietz2-0/+6
PR c++/61198 * pt.c (most_general_template): Don't break for template-alias. From-SVN: r218955
2014-12-19compiler: More cases that need a temporary for interface conversion.Ian Lance Taylor3-22/+74
From-SVN: r218952
2014-12-19re PR ipa/63569 (Wrong code with volatile and ICF)Martin Liska4-0/+46
Fix for PR ipa/63569. PR ipa/63569 * gcc.dg/ipa/pr63569.c: New test. PR ipa/63569 * ipa-icf-gimple.c (func_checker::compare_operand): Add missing comparison for volatile flag. From-SVN: r218949
2014-12-19re PR preprocessor/63831 (r217292 causes segfaults with -MM)Jakub Jelinek8-44/+160
PR preprocessor/63831 * c-cppbuiltin.c (c_cpp_builtins): Don't define __has_attribute and __has_cpp_attribute here. * c-ppoutput.c (init_pp_output): Set cb->has_attribute to c_common_has_attribute. * c-common.h (c_common_has_attribute): New prototype. * c-lex.c (init_c_lex): Set cb->has_attribute to c_common_has_attribute instead of cb_has_attribute. (get_token_no_padding): New function. (cb_has_attribute): Renamed to ... (c_common_has_attribute): ... this. No longer static. Use get_token_no_padding, require ()s, don't build TREE_LIST unnecessarily, fix up formatting, adjust diagnostics, call init_attributes. * directives.c (lex_macro_node): Remove __has_attribute__ handling. * internal.h (struct spec_node): Remove n__has_attribute__ field. (struct lexer_state): Remove in__has_attribute__ field. * macro.c (_cpp_builtin_macro_text): Handle BT_HAS_ATTRIBUTE. * identifiers.c (_cpp_init_hashtable): Remove __has_attribute__ handling. * init.c (builtin_array): Add __has_attribute and __has_cpp_attribute. (cpp_init_special_builtins): Don't initialize __has_attribute or __has_cpp_attribute if CLK_ASM or pfile->cb.has_attribute is NULL. * traditional.c (enum ls): Remove ls_has_attribute, ls_has_attribute_close. (_cpp_scan_out_logical_line): Remove __has_attribute__ handling. * include/cpplib.h (enum cpp_builtin_type): Add BT_HAS_ATTRIBUTE. * pch.c (cpp_read_state): Remove __has_attribute__ handling. * expr.c (eval_token): Likewise. (parse_has_attribute): Removed. * c-c++-common/cpp/pr63831-1.c: New test. * c-c++-common/cpp/pr63831-2.c: New test. From-SVN: r218948
2014-12-19[ARM][doc] Remove mention of Advanced RISC MachinesKyrylo Tkachov2-2/+6
* doc/invoke.texi (ARM options): Remove mention of Advanced RISC Machines. From-SVN: r218897
2014-12-19Fix ChangeLog typo in 218895James Greenhalgh1-1/+1
From-SVN: r218896
2014-12-19[PATCH][ARM] Fix reservation pattern in cortex-a9-neon.mdXingxing Pan2-1/+6
gcc/ * config/arm/cortex-a9-neon.md (cortex_a9_neon_vmov): Change reservation to cortex_a9_neon_dp. From-SVN: r218895
2014-12-19* [SH] Split QI/HImode load/store via r0 when LRA is enabled.Kaz Kojima2-0/+37
From-SVN: r218892