Richard Sandiford [Mon, 9 Sep 2013 13:07:10 +0000 (13:07 +0000)]
asan.c (asan_emit_stack_protection): Use gen_int_mode instead of GEN_INT.
gcc/
* asan.c (asan_emit_stack_protection): Use gen_int_mode instead of
GEN_INT.
* builtins.c (expand_errno_check): Likewise.
* dwarf2cfi.c (init_return_column_size): Likewise.
* except.c (sjlj_mark_call_sites): Likewise.
* expr.c (move_by_pieces_1, store_by_pieces_2): Likewise.
* lra-constraints.c (emit_inc): Likewise.
* ree.c (combine_set_extension): Likewise.
* regmove.c (fixup_match_2): Likewise.
* reload1.c (inc_for_reload): Likewise.
From-SVN: r202394
Richard Sandiford [Mon, 9 Sep 2013 13:07:02 +0000 (13:07 +0000)]
gcc/
* combine.c (simplify_set, expand_field_assignment, extract_left_shift)
(force_to_mode, simplify_shift_const_1, simplify_comparison):
Use gen_int_mode with the mode of the associated simplify_* call.
* explow.c (probe_stack_range, anti_adjust_stack_and_probe): Likewise.
* expmed.c (expand_shift_1): Likewise.
* function.c (instantiate_virtual_regs_in_insn): Likewise.
* loop-iv.c (iv_number_of_iterations): Likewise.
* loop-unroll.c (unroll_loop_runtime_iterations): Likewise.
* simplify-rtx.c (simplify_binary_operation_1): Likewise.
From-SVN: r202393
Richard Sandiford [Mon, 9 Sep 2013 13:06:53 +0000 (13:06 +0000)]
asan.c (asan_clear_shadow): Use gen_int_mode with the mode of the associated expand_* call.
gcc/
* asan.c (asan_clear_shadow): Use gen_int_mode with the mode
of the associated expand_* call.
(asan_emit_stack_protection): Likewise.
* builtins.c (round_trampoline_addr): Likewise.
* explow.c (allocate_dynamic_stack_space, probe_stack_range): Likewise.
* expmed.c (expand_smod_pow2, expand_sdiv_pow2, expand_divmod)
(emit_store_flag): Likewise.
* expr.c (emit_move_resolve_push, push_block, emit_single_push_insn_1)
(emit_push_insn, optimize_bitfield_assignment_op, expand_expr_real_1):
Likewise.
* function.c (instantiate_virtual_regs_in_insn): Likewise.
* ifcvt.c (noce_try_store_flag_constants): Likewise.
* loop-unroll.c (unroll_loop_runtime_iterations): Likewise.
* modulo-sched.c (generate_prolog_epilog): Likewise.
* optabs.c (expand_binop, widen_leading, expand_doubleword_clz)
(expand_ctz, expand_ffs, expand_unop): Likewise.
From-SVN: r202392
Richard Sandiford [Mon, 9 Sep 2013 13:06:43 +0000 (13:06 +0000)]
alias.c (addr_side_effect_eval): Use gen_int_mode with the mode of the associated gen_rtx_* call.
gcc/
* alias.c (addr_side_effect_eval): Use gen_int_mode with the mode
of the associated gen_rtx_* call.
* caller-save.c (init_caller_save): Likewise.
* combine.c (find_split_point, make_extraction): Likewise.
(make_compound_operation): Likewise.
* dwarf2out.c (mem_loc_descriptor): Likewise.
* explow.c (plus_constant, probe_stack_range): Likewise.
* expmed.c (expand_mult_const): Likewise.
* expr.c (emit_single_push_insn_1, do_tablejump): Likewise.
* reload1.c (init_reload): Likewise.
* valtrack.c (cleanup_auto_inc_dec): Likewise.
* var-tracking.c (adjust_mems): Likewise.
* modulo-sched.c (sms_schedule): Likewise, but use gen_rtx_GT
rather than gen_rtx_fmt_ee.
From-SVN: r202391
Jan Hubicka [Mon, 9 Sep 2013 12:09:50 +0000 (14:09 +0200)]
re PR tree-optimization/58294 (ice in update_ssa_across_abnormal_edges, at tree-inline.c:1892)
PR middle-end/58294
* value-prof.c (gimple_ic): Copy also abnormal edges.
* g++.dg/torture/PR58294.C: New testcase.
From-SVN: r202389
Richard Sandiford [Mon, 9 Sep 2013 09:23:54 +0000 (09:23 +0000)]
asan.c (asan_shadow_cst): Use gen_int_mode.
gcc/
* asan.c (asan_shadow_cst): Use gen_int_mode.
From-SVN: r202384
Jan Hubicka [Mon, 9 Sep 2013 07:37:53 +0000 (09:37 +0200)]
ipa-profile.c: Add toplevel comment.
* ipa-profile.c: Add toplevel comment.
(ipa_propagate_frequency_1): Be more conservative when profile is read.
(contains_hot_call_p): New function.
(ipa_propagate_frequency): Set frequencies based on counts when
profile is read.
* predict.c (compute_function_frequency): Use PROFILE_READ gueard for
profile; do not tamper with profile after inlining if it is read.
From-SVN: r202382
Jan Hubicka [Mon, 9 Sep 2013 06:13:24 +0000 (08:13 +0200)]
ipa-prop.c (try_make_edge_direct_simple_call): Do not special case speculative edges.
* ipa-prop.c (try_make_edge_direct_simple_call): Do not special case
speculative edges.
From-SVN: r202381
Jan Hubicka [Mon, 9 Sep 2013 06:12:21 +0000 (08:12 +0200)]
ipa.c (walk_polymorphic_call_targets): Fix redirection before IPA summary generation.
* ipa.c (walk_polymorphic_call_targets): Fix redirection before IPA
summary generation.
From-SVN: r202380
Jeff Law [Mon, 9 Sep 2013 03:07:28 +0000 (21:07 -0600)]
tree-ssa-threadedge.c (thread_across_edge): Fix initialization of 'found'.
* tree-ssa-threadedge.c (thread_across_edge): Fix initialization
of 'found'.
* gcc.c-torture/compile/pr58340.c: New test.
From-SVN: r202379
GCC Administrator [Mon, 9 Sep 2013 00:16:52 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r202377
Andi Kleen [Sun, 8 Sep 2013 23:41:38 +0000 (23:41 +0000)]
Fix handling of very long asm statements in inliner
An auto generated program with a 6.4mio line asm statement gave
with 4.7 and 4.8:
xxx.c:
6400017:1: internal compiler error: in account_size_time, at
ipa-inline-analysis.c:601
The problem is that the inliner counts the number of lines in the asm
statement and multiplies that with a weight. With the weight this
overflows 32bit signed int, and triggers an assert for negative time.
Fix this by limiting the number of lines to 1000 for asm cost
estimation. The RTL backend also does similar multiplications for
jump shortening. I haven't tried to address this, but presumably
it's less likely to result in a failure.
gcc/:
2013-09-08 Andi Kleen <ak@linux.intel.com>
* tree-inline.c (estimate_num_insns): Limit asm cost to 1000.
From-SVN: r202374
Caroline Tice [Sun, 8 Sep 2013 23:35:14 +0000 (16:35 -0700)]
Update libvtv testsuite so that most of the tests now run under
the dejagnu test harness.
From-SVN: r202373
Caroline Tice [Sun, 8 Sep 2013 21:58:07 +0000 (14:58 -0700)]
Fix PR 58300...
Fix PR 58300: Re-order events with -fvtable-verify=preinit
flag, so constructor init function is not written to assembly
file until after call to cgraph_process_new_functions.
From-SVN: r202371
Jan Hubicka [Sun, 8 Sep 2013 20:32:46 +0000 (22:32 +0200)]
* ipa.c (walk_polymorphic_call_targets): Fix inliner summary update.
From-SVN: r202370
Richard Sandiford [Sun, 8 Sep 2013 18:15:49 +0000 (18:15 +0000)]
ira.c (update_equiv_regs): Only call set_paradoxical_subreg for non-debug insns.
gcc/
* ira.c (update_equiv_regs): Only call set_paradoxical_subreg
for non-debug insns.
* lra.c (new_insn_reg): Take the containing insn as a parameter.
Only modify lra_reg_info[].biggest_mode if it's non-debug insn.
(collect_non_operand_hard_regs, add_regs_to_insn_regno_info): Update
accordingly.
gcc/testsuite/
* g++.dg/debug/ra1.C: New test.
From-SVN: r202369
Jan Hubicka [Sun, 8 Sep 2013 16:42:21 +0000 (18:42 +0200)]
devirt-11.C: Update template.
* testsuite/g++.dg/ipa/devirt-11.C: Update template.
* testsuite/g++.dg/ipa/devirt-16.C: New testcase.
* testsuite/g++.dg/ipa/devirt-17.C: New testcase.
* testsuite/g++.dg/ipa/devirt-18.C: New testcase.
* cgraphunit.c (walk_polymorphic_call_targets): Permit 0 possible
targets and devirtualize to BUILT_IN_UNREACHABLE.
* timevar.def (TV_IPA_UNREACHABLE): New timevar.
* ipa.c (walk_polymorphic_call_targets): New function.
(symtab_remove_unreachable_nodes): Use it; do not keep all virtual
functions; use the new timevar.
* ipa-devirt.c (maybe_record_node): Do not insert static nodes that
was removed from the program.
(record_binfo): If BINFO corresponds to an anonymous namespace, we may
not consider it in the walk when its vtable is dead.
(possible_polymorphic_call_targets_1): Pass anonymous flag to
record_binfo.
(devirt_variable_node_removal_hook): New function.
(possible_polymorphic_call_targets): Also register
devirt_variable_node_removal_hook.
(ipa_devirt): Do not do non-speculative devirtualization.
(gate_ipa_devirt): One execute if devirtualizing speculatively.
From-SVN: r202368
Jan Hubicka [Sun, 8 Sep 2013 16:18:04 +0000 (18:18 +0200)]
cgraph.h (varpool_node_hook, [...]): Declare.
* cgraph.h (varpool_node_hook, varpool_node_hook_list,
varpool_add_node_removal_hook, varpool_add_variable_insertion_hook,
varpool_remove_variable_insertion_hook): Declare.
* varpool.c (varpool_node_hook_list): New structure.
(first_varpool_node_removal_hook,
first_varpool_variable_insertion_hook): New variables.
(varpool_add_node_removal_hook, varpool_remove_node_removal_hook,
varpool_call_node_removal_hooks, varpool_add_variable_insertion_hook,
varpool_remove_variable_insertion_hook,
varpool_call_variable_insertion_hooks): New functions.
(varpool_remove_node): Use it.
From-SVN: r202367
Paolo Carlini [Sun, 8 Sep 2013 14:30:27 +0000 (14:30 +0000)]
re PR c++/54941 (do not print line/column numbers for <built-in>:0:0)
2013-09-08 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54941
* diagnostic.c (diagnostic_build_prefix): When s.file is
"<built-in>" don't output line and column numbers.
/testsuite
2013-09-08 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54941
* g++.dg/overload/new1.C: Adjust.
From-SVN: r202366
Tom de Vries [Sun, 8 Sep 2013 08:17:47 +0000 (08:17 +0000)]
Add missing ChangeLog entry for r199969.
From-SVN: r202365
Joern Rennecke [Sun, 8 Sep 2013 06:16:24 +0000 (06:16 +0000)]
c-common.c (same_scalar_type_ignoring_signedness): Delete.
gcc/c-family:
* c-common.c (same_scalar_type_ignoring_signedness): Delete.
(vector_types_compatible_elements_p): New function.
* c-common.h: (same_scalar_type_ignoring_signedness): Delete
declaration.
(vector_types_compatible_elements_p): Declare.
gcc/c:
* c-typeck.c (build_binary_op): Use vector_types_compatible_elements_p.
gcc/cp:
* typeck.c (cp_build_binary_op): Use vector_types_compatible_elements_p.
gcc/testsuite:
* c-c++-common/opaque-vector.c: New test.
From-SVN: r202364
GCC Administrator [Sun, 8 Sep 2013 00:16:31 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r202363
Tom de Vries [Sat, 7 Sep 2013 23:31:58 +0000 (23:31 +0000)]
Testcase for PR58282
2013-09-08 Tom de Vries <tom@codesourcery.com>
PR c++/58282
* g++.dg/tm/noexcept-6.C: New test.
From-SVN: r202360
Tom de Vries [Sat, 7 Sep 2013 23:31:48 +0000 (23:31 +0000)]
Handle noexcept on transactions with -fno-exceptions
2013-09-08 Tom de Vries <tom@codesourcery.com>
PR c++/58282
* except.c (build_must_not_throw_expr): Handle
flag_exceptions.
From-SVN: r202359
Paolo Carlini [Sat, 7 Sep 2013 22:57:49 +0000 (22:57 +0000)]
re PR libstdc++/58341 (Doc conflicts with standard on forbidden range of `result` in copy_backward())
2013-09-07 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/58341
* include/bits/stl_algobase.h (copy_backward): Fix documentation
per DR 1206.
From-SVN: r202357
Paolo Carlini [Sat, 7 Sep 2013 21:35:38 +0000 (21:35 +0000)]
Makefile.am: Remove #if ENABLE_VTABLE_VERIFY check around definition of check-am:.
2013-09-07 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/Makefile.am: Remove #if ENABLE_VTABLE_VERIFY check around
definition of check-am:.
* testsuite/Makefile.in: Regenerate.
From-SVN: r202356
Jan Hubicka [Sat, 7 Sep 2013 07:48:59 +0000 (09:48 +0200)]
cgraphunit.c (expand_thunk): Get body before touching arguments.
* cgraphunit.c (expand_thunk): Get body before touching arguments.
* lto-streamer-out.c: Stream thunks, too.
* lto-streamer-in.c (input_function): Pop cfun here
(lto_read_body): Instead of here.
From-SVN: r202352
GCC Administrator [Sat, 7 Sep 2013 00:16:36 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r202350
Caroline Tice [Fri, 6 Sep 2013 17:56:35 +0000 (10:56 -0700)]
Add documentation for the options --enable-vtable-verify,
--disable-vtable-verify and --disable-libvtv. Also
update configure and make files in libvtv not to use
--enable-vtable-verify.
From-SVN: r202346
Jeff Law [Fri, 6 Sep 2013 17:41:48 +0000 (11:41 -0600)]
tree-ssa-dom.c (cprop_into_successor_phis): Also propagate edge implied equivalences into successor phis.
* tree-ssa-dom.c (cprop_into_successor_phis): Also propagate
edge implied equivalences into successor phis.
From-SVN: r202345
Joern Rennecke [Fri, 6 Sep 2013 17:37:50 +0000 (18:37 +0100)]
resource.c (mark_referenced_resources): Handle COND_EXEC.
gcc:
* resource.c (mark_referenced_resources): Handle COND_EXEC.
gcc/testsuite:
* gcc.target/arc/cond-set-use.c: New test.
From-SVN: r202344
Claudiu Zissulescu [Fri, 6 Sep 2013 17:27:54 +0000 (19:27 +0200)]
resource.c (mark_target_live_regs): Compute resources taking into account if a call is predicated or not.
2013-09-06 Claudiu Zissulescu <claziss@synopsys.com>
* resource.c (mark_target_live_regs): Compute resources taking
into account if a call is predicated or not.
From-SVN: r202343
Eric Botcazou [Fri, 6 Sep 2013 15:28:02 +0000 (15:28 +0000)]
toplev.c (output_stack_usage): Be prepared for suffixes created by the compiler in the function names.
* toplev.c (output_stack_usage): Be prepared for suffixes created by
the compiler in the function names.
From-SVN: r202339
Jan Hubicka [Fri, 6 Sep 2013 15:02:03 +0000 (17:02 +0200)]
re PR middle-end/58094 (IPA devirt testsuite errors)
PR middle-end/58094
* ipa-inline.c (has_caller_p): New function.
(want_inline_function_to_all_callers_p): Use it.
(sum_callers, inline_to_all_callers): Break out from ...
(ipa_inline): ... here.
From-SVN: r202337
Jan Hubicka [Fri, 6 Sep 2013 14:39:17 +0000 (16:39 +0200)]
i386.c (ix86_hard_regno_mode_ok): AVX modes are valid only when AVX is enabled.
* i386.c (ix86_hard_regno_mode_ok): AVX modes are valid only when
AVX is enabled.
From-SVN: r202335
James Greenhalgh [Fri, 6 Sep 2013 13:59:47 +0000 (13:59 +0000)]
[AArch64] Use neon_<ldm,stm>_2 where appropriate as "type".
gcc/
* config/aarch64/aarch64.md
(*movtf_aarch64): Use neon_<ls>dm_2 as type where v8type
is fpsimd_<load/store>2.
(load_pair<mode>): Likewise.
(store_pair<mode>): Likewise.
From-SVN: r202334
James Greenhalgh [Fri, 6 Sep 2013 13:58:09 +0000 (13:58 +0000)]
[AArch64, ARM] Introduce "mrs" type attribute.
gcc/
* config/arm/types.md (type): Add "mrs" type.
* config/aarch64/aarch64.md
(aarch64_load_tp_hard): Make type "mrs".
* config/arm/arm.md
(load_tp_hard): Make type "mrs".
* config/arm/cortex-a15.md: Update with new attributes.
* config/arm/cortex-a5.md: Update with new attributes.
* config/arm/cortex-a53.md: Update with new attributes.
* config/arm/cortex-a7.md: Update with new attributes.
* config/arm/cortex-a8.md: Update with new attributes.
* config/arm/cortex-a9.md: Update with new attributes.
* config/arm/cortex-m4.md: Update with new attributes.
* config/arm/cortex-r4.md: Update with new attributes.
* config/arm/fa526.md: Update with new attributes.
* config/arm/fa606te.md: Update with new attributes.
* config/arm/fa626te.md: Update with new attributes.
* config/arm/fa726te.md: Update with new attributes.
From-SVN: r202333
James Greenhalgh [Fri, 6 Sep 2013 13:56:01 +0000 (13:56 +0000)]
[AArch64, ARM] Use "multiple" for type, where more than one instruction is used for a move
gcc/
* config/aarch64/aarch64.md
(*movti_aarch64): Use "multiple" for type where v8type is "move2".
(*movtf_aarch64): Likewise.
* config/arm/arm.md
(thumb1_movdi_insn): Use "multiple" for type where more than one
instruction is used for a move.
(*arm32_movhf): Likewise.
(*thumb_movdf_insn): Likewise.
From-SVN: r202332
James Greenhalgh [Fri, 6 Sep 2013 13:53:51 +0000 (13:53 +0000)]
[AArch64, ARM] Rename the FCPYS type to FMOV
gcc/
* config/arm/types.md (type): Rename fcpys to fmov.
* config/arm/vfp.md
(*arm_movsi_vfp): Rename type fcpys as fmov.
(*thumb2_movsi_vfp): Likewise
(*movhf_vfp_neon): Likewise
(*movhf_vfp): Likewise
(*movsf_vfp): Likewise
(*thumb2_movsf_vfp): Likewise
(*movsfcc_vfp): Likewise
(*thumb2_movsfcc_vfp): Likewise
* config/aarch64/aarch64-simd.md
(move_lo_quad_<mode>): Replace type mov_reg with fmovs.
* config/aarch64/aarch64.md
(*movsi_aarch64): Replace type mov_reg with fmovs.
(*movdi_aarch64): Likewise
(*movsf_aarch64): Likewise
(*movdf_aarch64): Likewise
* config/arm/arm.c
(cortexa7_older_only): Rename TYPE_FCPYS to TYPE_FMOV.
* config/arm/iwmmxt.md
(*iwmmxt_movsi_insn): Rename type fcpys as fmov.
* config/arm/arm1020e.md: Update with new attributes.
* config/arm/cortex-a15-neon.md: Update with new attributes.
* config/arm/cortex-a5.md: Update with new attributes.
* config/arm/cortex-a53.md: Update with new attributes.
* config/arm/cortex-a7.md: Update with new attributes.
* config/arm/cortex-a8-neon.md: Update with new attributes.
* config/arm/cortex-a9.md: Update with new attributes.
* config/arm/cortex-m4-fpu.md: Update with new attributes.
* config/arm/cortex-r4f.md: Update with new attributes.
* config/arm/marvell-pj4.md: Update with new attributes.
* config/arm/vfp11.md: Update with new attributes.
From-SVN: r202331
James Greenhalgh [Fri, 6 Sep 2013 13:42:12 +0000 (13:42 +0000)]
[Patch AArch64] Fix types for some multiply instructions.
gcc/
* config/aarch64/aarch64.md
(*madd<mode>): Fix type attribute.
(*maddsi_uxtw): Likewise.
(*msub<mode>): Likewise.
(*msubsi_uxtw): Likewise.
(<su_optab>maddsidi4): Likewise.
(<su_optab>msubsidi4): Likewise.
From-SVN: r202330
James Greenhalgh [Fri, 6 Sep 2013 13:39:57 +0000 (13:39 +0000)]
[Patch ARM AARCH64] Split "type" attributes: fdiv
gcc/
* config/arm/types.md: Split fdiv<sd> as fsqrt<sd>, fdiv<sd>.
* config/arm/arm.md (core_cycles): Remove fdiv.
* config/arm/vfp.md:
(*sqrtsf2_vfp): Update for attribute changes.
(*sqrtdf2_vfp): Likewise.
* config/aarch64/aarch64.md:
(sqrt<mode>2): Update for attribute changes.
* config/arm/arm1020e.md: Update with new attributes.
* config/arm/cortex-a15-neon.md: Update with new attributes.
* config/arm/cortex-a5.md: Update with new attributes.
* config/arm/cortex-a53.md: Update with new attributes.
* config/arm/cortex-a7.md: Update with new attributes.
* config/arm/cortex-a8-neon.md: Update with new attributes.
* config/arm/cortex-a9.md: Update with new attributes.
* config/arm/cortex-m4-fpu.md: Update with new attributes.
* config/arm/cortex-r4f.md: Update with new attributes.
* config/arm/marvell-pj4.md: Update with new attributes.
* config/arm/vfp11.md: Update with new attributes.
From-SVN: r202329
James Greenhalgh [Fri, 6 Sep 2013 13:37:56 +0000 (13:37 +0000)]
[ARM,AARCH64] Insn type reclassification. Split f_cvt type.
gcc/
* config/arm/types.md
(type): Split f_cvt as f_cvt, f_cvtf2i, f_cvti2f.
* config/aarch64/aarch64.md
(l<fcvt_pattern><su_optab><GPF:mode><GPI:mode>2): Update with
new attributes.
(fix_trunc<GPF:mode><GPI:mode>2): Likewise.
(fixuns_trunc<GPF:mode><GPI:mode>2): Likewise.
(float<GPI:mode><GPF:mode>2): Likewise.
* config/arm/vfp.md
(*truncsisf2_vfp): Update with new attributes.
(*truncsidf2_vfp): Likewise.
(fixuns_truncsfsi2): Likewise.
(fixuns_truncdfsi2): Likewise.
(*floatsisf2_vfp): Likewise.
(*floatsidf2_vfp): Likewise.
(floatunssisf2): Likewise.
(floatunssidf2): Likewise.
(*combine_vcvt_f32_<FCVTI32typename>): Likewise.
(*combine_vcvt_f64_<FCVTI32typename>): Likewise.
* config/arm/arm1020e.md: Update with new attributes.
* config/arm/cortex-a15-neon.md: Update with new attributes.
* config/arm/cortex-a5.md: Update with new attributes.
* config/arm/cortex-a53.md: Update with new attributes.
* config/arm/cortex-a7.md: Update with new attributes.
* config/arm/cortex-a8-neon.md: Update with new attributes.
* config/arm/cortex-a9.md: Update with new attributes.
* config/arm/cortex-m4-fpu.md: Update with new attributes.
* config/arm/cortex-r4f.md: Update with new attributes.
* config/arm/marvell-pj4.md: Update with new attributes.
* config/arm/vfp11.md: Update with new attributes.
From-SVN: r202328
James Greenhalgh [Fri, 6 Sep 2013 13:34:41 +0000 (13:34 +0000)]
[AArch64] Fix types of second parameter to qtbl/qtbx intrinsics
gcc/
* config/aarch64/arm_neon.h
(vqtbl<1,2,3,4><q>_s8): Fix control vector parameter type.
(vqtbx<1,2,3,4><q>_s8): Likewise.
gcc/testsuite/
* gcc.target/aarch64/table-intrinsics.c
(qtbl_tests8_< ,2,3,4>): Fix control vector parameter type.
(qtb_tests8_< ,2,3,4>): Likewise.
(qtblq_tests8_< ,2,3,4>): Likewise.
(qtbxq_tests8_< ,2,3,4>): Likewise.
From-SVN: r202327
James Greenhalgh [Fri, 6 Sep 2013 13:21:38 +0000 (13:21 +0000)]
[Patch ARM] Add "type" attribute to Everything!
gcc/
* config/arm/types.md: Add "no_insn", "multiple" and "untyped"
types.
* config/arm/arm-fixed.md: Add type attribute to all insn
patterns.
* config/arm/vfp.md: Add type attribute to all insn patterns.
* config/arm/arm.md: Add type attribute to all insn patterns.
* config/arm/thumb2.md: Add type attribute to all insn patterns.
* config/arm/arm1020e.md: Update with new attributes.
* config/arm/arm1026ejs.md: Update with new attributes.
* config/arm/arm1136jfs.md: Update with new attributes.
* config/arm/arm926ejs.md: Update with new attributes.
* config/arm/cortex-a15.md: Update with new attributes.
* config/arm/cortex-a5.md: Update with new attributes.
* config/arm/cortex-a53.md: Update with new attributes.
* config/arm/cortex-a7.md: Update with new attributes.
* config/arm/cortex-a8.md: Update with new attributes.
* config/arm/cortex-a9.md: Update with new attributes.
* config/arm/cortex-m4.md: Update with new attributes.
* config/arm/cortex-r4.md: Update with new attributes.
* config/arm/fa526.md: Update with new attributes.
* config/arm/fa606te.md: Update with new attributes.
* config/arm/fa626te.md: Update with new attributes.
* config/arm/fa726te.md: Update with new attributes.
From-SVN: r202323
James Greenhalgh [Fri, 6 Sep 2013 11:02:52 +0000 (11:02 +0000)]
[Patch AArch64] Fix register constraints for lane intrinsics.
gcc/
* config/aarch64/aarch64-simd.md
(aarch64_sqdml<SBINQOPS:as>l_n<mode>_internal): Use
<vwx> iterator to ensure correct register choice.
(aarch64_sqdml<SBINQOPS:as>l2_n<mode>_internal): Likewise.
(aarch64_sqdmull_n<mode>): Likewise.
(aarch64_sqdmull2_n<mode>_internal): Likewise.
* config/aarch64/arm_neon.h
(vml<as><q>_lane<q>_<su>16): Use 'x' constraint for element vector.
(vml<as><q>_n_<su>16): Likewise.
(vml<as>l_high_lane<q>_<su>16): Likewise.
(vml<as>l_high_n_<su>16): Likewise.
(vml<as>l_lane<q>_<su>16): Likewise.
(vml<as>l_n_<su>16): Likewise.
(vmul<q>_lane<q>_<su>16): Likewise.
(vmul<q>_n_<su>16): Likewise.
(vmull_lane<q>_<su>16): Likewise.
(vmull_n_<su>16): Likewise.
(vmull_high_lane<q>_<su>16): Likewise.
(vmull_high_n_<su>16): Likewise.
(vqrdmulh<q>_n_s16): Likewise.
From-SVN: r202322
Tejas Belagod [Fri, 6 Sep 2013 10:57:14 +0000 (11:57 +0100)]
arm_neon.h: Fix all vdup<bhsd_lane<q> intrinsics to have the correct lane parameter.
2013-09-06 Tejas Belagod <tejas.belagod@arm.com>
gcc/
* config/aarch64/arm_neon.h: Fix all vdup<bhsd_lane<q> intrinsics to
have the correct lane parameter.
From-SVN: r202321
Richard Biener [Fri, 6 Sep 2013 10:38:08 +0000 (10:38 +0000)]
cfganal.c (control_dependences::~control_dependences): Properly free all of the vector.
2013-09-06 Richard Biener <rguenther@suse.de>
* cfganal.c (control_dependences::~control_dependences):
Properly free all of the vector.
From-SVN: r202320
Jan Hubicka [Fri, 6 Sep 2013 10:36:44 +0000 (10:36 +0000)]
Makefile.in (tree-sra.o): Update dependencies.
* Makefile.in (tree-sra.o): Update dependencies.
* tree-sra.c: Include ipa-utils.h
(scan_function): Use recursive_call_p.
(has_caller_p): New function.
(cgraph_for_node_and_aliases): Count also callers of aliases.
From-SVN: r202319
Kirill Yukhin [Fri, 6 Sep 2013 10:36:30 +0000 (10:36 +0000)]
re PR target/58269 (ICE when building libobjc on x86_64-apple-darwin* after revision 201915)
PR target/58269
* config/i386/i386.c (ix86_conditional_register_usage):
Proper initialize extended SSE registers.
From-SVN: r202318
Jan Hubicka [Fri, 6 Sep 2013 10:33:48 +0000 (12:33 +0200)]
re PR tree-optimization/58311 (ICE: SIGSEGV in hash_table::find_slot_with_hash() with -fdevirtualize)
PR tree-optimization/58311
* ipa-devirt.c (gate_ipa_devirt): Only execute when optimizing.
From-SVN: r202317
Jan Hubicka [Fri, 6 Sep 2013 10:13:37 +0000 (12:13 +0200)]
re PR middle-end/58094 (IPA devirt testsuite errors)
PR middle-end/58094
* cgraph.h (symtab_semantically_equivalent_p): Declare.
* tree-tailcall.c: Include ipa-utils.h.
(find_tail_calls): Use it.
* ipa-pure-const.c (check_call): Likewise.
* ipa-utils.c (recursive_call_p): New function.
* ipa-utils.h (recursive_call_p): Dclare.
* symtab.c (symtab_nonoverwritable_alias): Fix formatting.
(symtab_semantically_equivalent_p): New function.
* Makefile.in (tree-tailcall.o): Update dependencies.
From-SVN: r202316
Eric Botcazou [Fri, 6 Sep 2013 09:35:23 +0000 (09:35 +0000)]
ipa-split.c (split_function): Set DECL_NO_INLINE_WARNING_P on the non-inlinable part.
* ipa-split.c (split_function): Set DECL_NO_INLINE_WARNING_P on the
non-inlinable part.
From-SVN: r202315
Joern Rennecke [Fri, 6 Sep 2013 09:31:12 +0000 (09:31 +0000)]
ipa-pta-14.c (scan-ipa-dump): Don't expect NULL in foo.result set.
* gcc.dg/ipa/ipa-pta-14.c (scan-ipa-dump) [keeps_null_pointer_checks]:
Don't expect NULL in foo.result set.
* gcc.dg/tree-ssa/pta-escape-1.c (scan-tree-dump): Don't expect NULL
in ESCAPED set.
* gcc.dg/tree-ssa/pta-escape-2.c: Likewise.
* gcc.dg/tree-ssa/pta-escape-3.c: Likewise.
From-SVN: r202314
Richard Biener [Fri, 6 Sep 2013 09:06:25 +0000 (09:06 +0000)]
lto-streamer.h (lto_global_var_decls): Remove.
2013-09-06 Richard Biener <rguenther@suse.de>
* lto-streamer.h (lto_global_var_decls): Remove.
* Makefile.in (OBJS): Remove lto-symtab.o.
(lto-symtab.o): Remove.
(GTFILES): Remove lto-symtab.c
* lto-symtab.c: Move to lto/
lto/
* lto-symtab.c: Move from gcc/
* lto.h: Include vec.h.
(lto_global_var_decls): Declare.
* lto.c (lto_global_var_decls): Move definition here.
* Make-lang.in (LTO_OBJS): Add lto-symtab.o.
(lto-symtab.o): Add.
* config-lang.in (gtfiles): Add lto.h.
From-SVN: r202313
Andreas Krebbel [Fri, 6 Sep 2013 07:55:35 +0000 (07:55 +0000)]
2013-09-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.md (UNSPEC_FPINT_FLOOR, UNSPEC_FPINT_BTRUNC)
(UNSPEC_FPINT_ROUND, UNSPEC_FPINT_CEIL, UNSPEC_FPINT_NEARBYINT)
(UNSPEC_FPINT_RINT): New constant definitions.
(FPINT, fpint_name, fpint_roundingmode): New integer iterator
definition with 2 attributes.
("<FPINT:fpint_name><BFP:mode>2", "rint<BFP:mode>2")
("<FPINT:fpint_name><DFP:mode>2", "rint<DFP:mode>2"): New pattern
definitions.
2013-09-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gcc.target/s390/nearestint-1.c: New testcase.
From-SVN: r202312
Andreas Krebbel [Fri, 6 Sep 2013 07:54:05 +0000 (07:54 +0000)]
s390.md: Add "bcr_flush" value to mnemonic attribute.
2013-09-06 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* config/s390/s390.md: Add "bcr_flush" value to mnemonic
attribute.
("mem_thread_fence_1"): Use bcr 14,0 for z196 and later.
Set the mnemonic attribute to "bcr_flush". Set the "z196prop"
attribute to "z196_alone".
* config/s390/2827.md: Add "bcr_flush" to "ooo_groupalone" and
"zEC12_simple".
From-SVN: r202311
Richard Biener [Fri, 6 Sep 2013 07:24:11 +0000 (07:24 +0000)]
basic-block.h (class control_dependences): New.
2013-09-06 Richard Biener <rguenther@suse.de>
* basic-block.h (class control_dependences): New.
* tree-ssa-dce.c (control_dependence_map): Remove.
(cd): New global.
(EXECUTE_IF_CONTROL_DEPENDENT): Remove.
(set_control_dependence_map_bit, clear_control_dependence_bitmap,
find_pdom, find_control_dependence, find_all_control_dependences):
Move to cfganal.c.
(mark_control_dependent_edges_necessary, find_obviously_necessary_stmts,
propagate_necessity, tree_dce_init, tree_dce_done,
perform_tree_ssa_dce): Adjust.
* cfganal.c (set_control_dependence_map_bit,
clear_control_dependence_bitmap, find_pdom, find_control_dependence,
find_all_control_dependences): Move from tree-ssa-dce.c and
implement as methods of control_dependences class.
(control_dependences::control_dependences): New.
(control_dependences::~control_dependences): Likewise.
(control_dependences::get_edges_dependent_on): Likewise.
(control_dependences::get_edge): Likewise.
From-SVN: r202309
GCC Administrator [Fri, 6 Sep 2013 00:16:51 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r202305
Jan Hubicka [Thu, 5 Sep 2013 23:25:48 +0000 (01:25 +0200)]
tree.c (types_same_for_odr): Drop overactive check.
* tree.c (types_same_for_odr): Drop overactive check.
* ipa-devirt.c (hash_type_name): Likewise.
From-SVN: r202302
Joern Rennecke [Thu, 5 Sep 2013 23:23:53 +0000 (23:23 +0000)]
20101011-1.c [__arc__] (DO_TEST): Define as 0.
* gcc.c-torture/execute/
20101011-1.c [__arc__] (DO_TEST): Define as 0.
* testsuite/gcc.target/arc: New directory.
* gcc.dg/torture/pr37868.c: Also skip for arc*-*-*.
* gcc.dg/stack-usage-1.c [__arc__] (SIZE): Define.
* testsuite/gcc.dg/torture/stackalign/builtin-apply-2.c
[__arc__] (STACK_ARGUMENTS_SIZE): Set to 0.
* testsuite/gcc.dg/builtin-apply2.c
[__arc__] (STACK_ARGUMENTS_SIZE): Set to 0.
Co-Authored-By: Vineet Gupta <Vineet.Gupta@synopsys.com>
From-SVN: r202301
Jan Hubicka [Thu, 5 Sep 2013 23:06:10 +0000 (01:06 +0200)]
cgraphunit.c (walk_polymorphic_call_targets): Break out from ...
* cgraphunit.c (walk_polymorphic_call_targets): Break out from ...
(analyze_functions): ... here.
From-SVN: r202299
Jan Hubicka [Thu, 5 Sep 2013 23:04:11 +0000 (01:04 +0200)]
re PR c++/58201 (Undefined reference to `B::B(void const**)')
PR middle-end/58201
* cgraphunit.c (analyze_functions): Clear AUX fields
after processing; initialize assembler name has.
* g++.dg/torture/pr58201_0.C: New testcase.
* g++.dg/torture/pr58201_1.C: New testcase.
* g++.dg/torture/pr58201.h: New testcase.
From-SVN: r202298
Jan Hubicka [Thu, 5 Sep 2013 22:48:48 +0000 (00:48 +0200)]
* gcc.dg/autopar/pr49960.c: Disable partial inlining
From-SVN: r202297
Jeff Law [Thu, 5 Sep 2013 20:28:36 +0000 (14:28 -0600)]
tree-ssa-threadedge.c (thread_around_empty_blocks): Renamed from thread_around_empty_block.
* tree-ssa-threadedge.c (thread_around_empty_blocks): Renamed
from thread_around_empty_block. Record threading path into PATH.
Recurse if threading through the initial block is successful.
(thread_across_edge): Corresponding changes to slightly simplify.
From-SVN: r202296
James Greenhalgh [Thu, 5 Sep 2013 15:53:37 +0000 (15:53 +0000)]
[AArch64] Fix categorisation of the frecp* insns.
gcc/
* config/aarch64/aarch64.md
(type): Remove frecpe, frecps, frecpx.
(aarch64_frecp<FRECP:frecp_suffix><mode>): Move to aarch64-simd.md,
fix to be a TARGET_SIMD instruction.
(aarch64_frecps): Remove.
* config/aarch64/aarch64-simd.md
(aarch64_frecp<FRECP:frecp_suffix><mode>): New, moved from aarch64.md
(aarch64_frecps<mode>): Handle all float/vector of float modes.
From-SVN: r202292
James Greenhalgh [Thu, 5 Sep 2013 15:49:15 +0000 (15:49 +0000)]
[AARCH64][Insn classification unification 3/N] ALU/shift types
2013-09-05 James Greenhalgh <james.greenhalgh@arm.com>
Sofiane Naci <sofiane.naci@arm.com>
* config/arm/types.md (define_attr "type"):
Expand "arlo_imm"
into "adr", "alu_imm", "alus_imm", "logic_imm", "logics_imm".
Expand "arlo_reg"
into "adc_reg", "adc_imm", "adcs_reg", "adcs_imm", "alu_ext",
"alu_reg", "alus_ext", "alus_reg", "bfm", "csel", "logic_reg",
"logics_reg", "rev".
Expand "arlo_shift"
into "alu_shift_imm", "alus_shift_imm", "logic_shift_imm",
"logics_shift_imm".
Expand "arlo_shift_reg"
into "alu_shift_reg", "alus_shift_reg", "logic_shift_reg",
"logics_shift_reg".
Expand "clz" into "clz, "rbit".
Rename "shift" to "shift_imm".
* config/arm/arm.md (define_attr "core_cycles"): Update for attribute
changes.
Update for attribute changes all occurrences of arlo_* and
shift* types.
* config/arm/arm-fixed.md: Update for attribute changes
all occurrences of arlo_* types.
* config/arm/thumb2.md: Update for attribute changes all occurrences
of arlo_* types.
* config/arm/arm.c (xscale_sched_adjust_cost): (rtx insn, rtx
(cortexa7_older_only): Likewise.
(cortexa7_younger): Likewise.
* config/arm/arm1020e.md (1020alu_op): Update for attribute changes.
(1020alu_shift_op): Likewise.
(1020alu_shift_reg_op): Likewise.
* config/arm/arm1026ejs.md (alu_op): Update for attribute changes.
(alu_shift_op): Likewise.
(alu_shift_reg_op): Likewise.
* config/arm/arm1136jfs.md (11_alu_op): Update for
attribute changes.
(11_alu_shift_op): Likewise.
(11_alu_shift_reg_op): Likewise.
* config/arm/arm926ejs.md (9_alu_op): Update for attribute changes.
(9_alu_shift_reg_op): Likewise.
* config/arm/cortex-a15.md (cortex_a15_alu): Update for
attribute changes.
(cortex_a15_alu_shift): Likewise.
(cortex_a15_alu_shift_reg): Likewise.
* config/arm/cortex-a5.md (cortex_a5_alu): Update for
attribute changes.
(cortex_a5_alu_shift): Likewise.
* config/arm/cortex-a53.md
(cortex_a53_alu): Update for attribute changes.
(cortex_a53_alu_shift): Likewise.
* config/arm/cortex-a7.md
(cortex_a7_alu_imm): Update for attribute changes.
(cortex_a7_alu_reg): Likewise.
(cortex_a7_alu_shift): Likewise.
* config/arm/cortex-a8.md
(cortex_a8_alu): Update for attribute changes.
(cortex_a8_alu_shift): Likewise.
(cortex_a8_alu_shift_reg): Likewise.
* config/arm/cortex-a9.md
(cortex_a9_dp): Update for attribute changes.
(cortex_a9_dp_shift): Likewise.
* config/arm/cortex-m4.md
(cortex_m4_alu): Update for attribute changes.
* config/arm/cortex-r4.md
(cortex_r4_alu): Update for attribute changes.
(cortex_r4_mov): Likewise.
(cortex_r4_alu_shift_reg): Likewise.
* config/arm/fa526.md
(526_alu_op): Update for attribute changes.
(526_alu_shift_op): Likewise.
* config/arm/fa606te.md
(606te_alu_op): Update for attribute changes.
* config/arm/fa626te.md
(626te_alu_op): Update for attribute changes.
(626te_alu_shift_op): Likewise.
* config/arm/fa726te.md
(726te_alu_op): Update for attribute changes.
(726te_alu_shift_op): Likewise.
(726te_alu_shift_reg_op): Likewise.
* config/arm/fmp626.md (mp626_alu_op): Update for attribute changes.
(mp626_alu_shift_op): Likewise.
* config/arm/marvell-pj4.md (pj4_alu): Update for attribute changes.
(pj4_alu_conds): Likewise.
(pj4_shift): Likewise.
(pj4_shift_conds): Likewise.
(pj4_alu_shift): Likewise.
(pj4_alu_shift_conds): Likewise.
* config/aarch64/aarch64.md: Update for attribute change
all occurrences of arlo_* and shift* types.
Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
From-SVN: r202291
Tim Shen [Thu, 5 Sep 2013 15:20:39 +0000 (15:20 +0000)]
regex_automaton.h: Add dummy node type.
2013-09-05 Tim Shen <timshen91@gmail.com>
* include/bits/regex_automaton.h: Add dummy node type. Rewrite
_StateSeq.
* include/bits/regex_automaton.tcc: Implement them.
* include/bits/regex_compiler.h: Rewrite _Compiler to use new
_StateSeq interfaces.
* include/bits/regex_compiler.tcc: Implement them.
* include/bits/regex_scanner.h: Add word boundry assertion token.
* include/bits/regex_scanner.tcc (_Scanner<>::_M_eat_escape_ecma):
Support word boundry.
* testsuite/28_regex/algorithms/regex_match/basic/
string_range_02_03.cc: Remove "xfail".
* testsuite/28_regex/algorithms/regex_match/extended/cstring_plus.cc:
Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_02_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/extended/
cstring_questionmark.cc: Remove xfail and get correct length of
c-string.
* testsuite/28_regex/algorithms/regex_match/extended/
string_range_00_03.cc: Likewise.
* testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc:
New.
* testsuite/28_regex/algorithms/regex_match/extended/cstring_range.cc:
New.
* testsuite/28_regex/iterators/regex_iterator/wchar_t/string_02.cc: New.
From-SVN: r202290
Mike Stump [Thu, 5 Sep 2013 14:52:50 +0000 (14:52 +0000)]
tree.h: Move documentation for tree_function_decl to tree-core.h with the declaration.
* tree.h: Move documentation for tree_function_decl to tree-core.h
with the declaration.
From-SVN: r202289
Peter Bergner [Thu, 5 Sep 2013 14:09:07 +0000 (09:09 -0500)]
re PR target/58139 (PowerPC volatile VSX register live across call)
PR target/58139
* reginfo.c (choose_hard_reg_mode): Scan through all mode classes
looking for widest mode.
From-SVN: r202286
Eric Botcazou [Thu, 5 Sep 2013 13:54:35 +0000 (13:54 +0000)]
* config.gcc (*-*-vxworks*): Do not override an existing extra_objs.
From-SVN: r202284
Richard Biener [Thu, 5 Sep 2013 12:45:20 +0000 (12:45 +0000)]
re PR tree-optimization/58137 ([trunk, ICE] full unroll + AVX2 vectorization)
2013-09-05 Richard Biener <rguenther@suse.de>
PR tree-optimization/58137
* tree-vect-stmts.c (get_vectype_for_scalar_type_and_size):
Do not create vectors of pointers.
* tree-vect-loop.c (get_initial_def_for_induction): Use proper
types for the components of the vector initializer.
* tree-cfg.c (verify_gimple_assign_binary): Remove special-casing
allowing pointer vectors with PLUS_EXPR/MINUS_EXPR.
* gcc.target/i386/pr58137.c: New testcase.
From-SVN: r202282
Martin Jambor [Thu, 5 Sep 2013 12:41:16 +0000 (14:41 +0200)]
ipa-prop.c (remove_described_reference): Accept missing references, return false if that hppens, otherwise return true.
2013-09-05 Martin Jambor <mjambor@suse.cz>
* ipa-prop.c (remove_described_reference): Accept missing references,
return false if that hppens, otherwise return true.
(cgraph_node_for_jfunc): New function.
(try_decrement_rdesc_refcount): Likewise.
(try_make_edge_direct_simple_call): Use them.
(ipa_edge_removal_hook): Remove references from rdescs.
(ipa_edge_duplication_hook): Clone rdescs and their references
when the new edge has the same caller as the old one.
* cgraph.c (cgraph_resolve_speculation): Remove speculative
reference before removing any edges.
testsuite/
* g++.dg/ipa/remref-1.C: New test.
* g++.dg/ipa/remref-2.C: Likewise.
From-SVN: r202281
Richard Earnshaw [Thu, 5 Sep 2013 12:37:29 +0000 (12:37 +0000)]
arm.c (thumb2_emit_strd_push): Rewrite to use pre-decrement on initial store.
* arm.c (thumb2_emit_strd_push): Rewrite to use pre-decrement on
initial store.
* thumb2.md (thumb2_storewb_parisi): New pattern.
From-SVN: r202279
Yufeng Zhang [Thu, 5 Sep 2013 11:30:14 +0000 (11:30 +0000)]
[AArch64] Support the 'crc' extension in -march and -mcpu options.
gcc/
* config/aarch64/aarch64-option-extensions.def: Add
AARCH64_OPT_EXTENSION of 'crc'.
* config/aarch64/aarch64.h (AARCH64_FL_CRC): New define.
(AARCH64_ISA_CRC): Ditto.
* doc/invoke.texi (-march and -mcpu feature modifiers): Add
description of the CRC extension.
From-SVN: r202275
Alexander Ivchenko [Thu, 5 Sep 2013 11:01:35 +0000 (11:01 +0000)]
linux64.h: Define OPTION_BIONIC and OPTION_UCLIBC.
* config/rs6000/linux64.h: Define OPTION_BIONIC and OPTION_UCLIBC.
* config/rs6000/linux.h: Ditto.
* alpha/linux.h: Ditto.
* config/bfin/uclinux.h: Define TARGET_LIBC_HAS_FUNCTION as
no_c99_libc_has_function.
* config/c6x/uclinux-elf.h: Ditto.
* config/lm32/uclinux-elf.h: Ditto.
* config/m68k/uclinux.h: Ditto.
* config/moxie/uclinux.h: Ditto.
* config.gcc (bfin*-linux-uclibc*): Add t-linux-android to tmake_file.
(crisv32-*-linux*, cris-*-linux*): Ditto.
* config/bfin/bfin.c: Include "tm_p.h".
From-SVN: r202274
Richard Biener [Thu, 5 Sep 2013 10:30:51 +0000 (10:30 +0000)]
tree-vect-loop.c (vect_analyze_loop_operations): Properly check for a definition without a basic-block.
2013-09-05 Richard Biener <rguenther@suse.de>
* tree-vect-loop.c (vect_analyze_loop_operations): Properly
check for a definition without a basic-block.
From-SVN: r202273
James Greenhalgh [Thu, 5 Sep 2013 09:29:27 +0000 (09:29 +0000)]
[AArch64, AArch32][Insn classification refactoring 6/N] Remove "neon_type" attribute
gcc/
* config/aarch64/aarch64.md: Rename r_2_f and f_2_r where appropriate.
* config/arm/arm.md (attribute "neon_type"): Delete. Move attribute
values to config/arm/types.md. Update patterns where appropriate.
* config/arm/types.md (type): Add Neon types.
* config/arm/neon.md: Remove "neon_type" attribute,
use "type" attribute everywhere appropriate.
* doc/md.texi: Change references to neon_type to refer to type.
* config/arm/vfp.md: Update patterns for attribute changes.
* config/arm/arm.c (cortexa7_older_only): Update for attribute change.
* config/arm/arm1020e.md: Update for attribute change.
* config/arm/cortex-a15-neon.md: Update for attribute change.
* config/arm/cortex-a15.md: Update for attribute change.
* config/arm/cortex-a5.md: Update for attribute change.
* config/arm/cortex-a53.md: Update for attribute change.
* config/arm/cortex-a7.md: Update for attribute change.
* config/arm/cortex-a8-neon.md: Update for attribute change.
* config/arm/cortex-a8.md: Update for attribute change.
* config/arm/cortex-a9-neon.md: Update for attribute change.
* config/arm/cortex-a9.md: Update for attribute change.
* config/arm/cortex-m4-fpu.md: Update for attribute change.
* config/arm/cortex-r4f.md: Update for attribute change.
* config/arm/iterators.md: Update comment referring to neon_type.
* config/arm/iwmmxt.md: Update for attribute change.
* config/arm/marvell-pj4.md: Update for attribute change.
* config/arm/neon-schedgen.ml (emit_insn_reservations): Update for
attribute change.
* config/arm/vfp11.md: Update for attribute change.
Co-Authored-By: Sofiane Naci <sofiane.naci@arm.com>
From-SVN: r202272
Dodji Seketeli [Thu, 5 Sep 2013 07:56:47 +0000 (07:56 +0000)]
Fix typo in comment
gcc/
* tree.h (DECL_BUILT_INT): Fix typo in comment.
From-SVN: r202271
GCC Administrator [Thu, 5 Sep 2013 00:17:05 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r202269
Paolo Carlini [Wed, 4 Sep 2013 23:52:48 +0000 (23:52 +0000)]
re PR c++/24926 (gcc ignores access level violation for anonymous structs)
/cp
2013-09-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/24926
* class.c (finish_struct_anon_r): New.
(finish_struct_anon): Use it.
/testsuite
2013-09-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/24926
* g++.dg/parse/access11.C: New.
From-SVN: r202266
David Edelsohn [Wed, 4 Sep 2013 21:24:56 +0000 (21:24 +0000)]
rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Only emit lglobl if not weak.
* config/rs6000/rs6000.h (ASM_OUTPUT_DEF_FROM_DECLS): Only emit
lglobl if not weak.
From-SVN: r202264
David Edelsohn [Wed, 4 Sep 2013 21:21:39 +0000 (21:21 +0000)]
* g++.dg/warn/weak1.C: Skip on AIX.
From-SVN: r202263
Easwaran Raman [Wed, 4 Sep 2013 17:48:15 +0000 (17:48 +0000)]
re PR tree-optimization/57370 (compiler hangs in reassoc)
2013-09-04 Easwaran Raman <eraman@google.com>
PR middle-end/57370
PR tree-optimization/58011
* tree-ssa-reassoc.c (get_stmt_uid_with_default): New function,
(build_and_add_sum): Use it.
(appears_later_in_bb): Simplify code.
gcc/testsuite/ChangeLog:
2013-09-04 Easwaran Raman <eraman@google.com>
PR middle-end/57370
PR tree-optimization/58011
* gfortran.dg/reassoc_12.f90: New testcase.
* gcc.dg/tree-ssa/reassoc-31.c: New testcase.
From-SVN: r202262
David Edelsohn [Wed, 4 Sep 2013 15:33:56 +0000 (15:33 +0000)]
attr-weakref-1.c: Skip on AIX.
* gcc.dg/attr-weakref-1.c: Skip on AIX.
* gcc.dg/torture/pr53922.c: Skip on AIX.
* lib/file-format.exp (gcc_target_object_format): AIX is COFF.
From-SVN: r202261
Teresa Johnson [Wed, 4 Sep 2013 14:31:20 +0000 (14:31 +0000)]
dumpfile.c (dump_finish): Don't close stderr/stdout.
2013-09-04 Teresa Johnson <tejohnson@google.com>
* dumpfile.c (dump_finish): Don't close stderr/stdout.
* testsuite/gcc.dg/unroll_1.c: Test dumping to stderr.
From-SVN: r202260
James Greenhalgh [Wed, 4 Sep 2013 14:26:23 +0000 (14:26 +0000)]
[AArch64] Obvious - Fix return types for vaddvq_<su>64
gcc/
* config/aarch64/arm_neon.h (vaddvq_<su>64): Fix return types.
From-SVN: r202259
Jan Hubicka [Wed, 4 Sep 2013 14:14:28 +0000 (16:14 +0200)]
Makefile.in (ipa-devirt.o): Add dependency on diagnostic.h
* Makefile.in (ipa-devirt.o): Add dependency on diagnostic.h
* ipa-devirt.c: Include diganostic.h
(odr_type_d): Add types and types_set.
(hash_type_name): Work for types with vtables during LTO.
(odr_hasher::remove): Fix comment; destroy types_set.
(add_type_duplicate): New function,
(get_odr_type): Use it.
(dump_type_inheritance_graph): Dump type duplicates.
* ipa.c (symtab_remove_unreachable_nodes): Build type inheritance
graph.
* tree.c (types_same_for_odr): Give exact answers on types with
virtual tables.
From-SVN: r202258
Dodji Seketeli [Wed, 4 Sep 2013 12:54:09 +0000 (12:54 +0000)]
More comments about DECL_BUILT_IN and DECL_IS_BUILTIN
gcc/
* tree.h (DECL_BUILT_IN, DECL_IS_BUILTIN): Add more comments
explaining their differences.
From-SVN: r202251
Sandeep Kumar Singh [Wed, 4 Sep 2013 12:03:44 +0000 (12:03 +0000)]
config/rx/rx.h: Add option -mcpu for target variants RX100 and RX200.
From-SVN: r202250
Gabriel Dos Reis [Wed, 4 Sep 2013 10:52:35 +0000 (10:52 +0000)]
c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now a virtual member function.
c-family/
* c-pretty-print.h (c_pretty_printer::simple_type_specifier): Now
a virtual member function.
(pp_simple_type_specifier): Remove.
(pp_c_type_specifier): Likewise.
* c-pretty-print.c (c_pretty_printer::simple_type_specifier):
Rename from pp_c_type_specifier. Adjust.
(c_pretty_printer::c_pretty_printer): Do not assign to
simple_type_specifier.
cp/
* cxx-pretty-print.h (cxx_pretty_printer::simple_type_specifier):
Declare as overrider.
* cxx-pretty-print.c (cxx_pretty_printer::simple_type_specifier):
Rename from pp_cxx_simple_type_specifier.
(cxx_pretty_printer::cxx_pretty_printer): Do not assign to
simple_type_specifier.
From-SVN: r202247
Matthias Klose [Wed, 4 Sep 2013 10:48:01 +0000 (10:48 +0000)]
Makefile.am (libgcjgc_la_LIBADD): Add EXTRA_TEST_LIBS.
2013-09-04 Matthias Klose <doko@ubuntu.com>
* Makefile.am (libgcjgc_la_LIBADD): Add EXTRA_TEST_LIBS.
* Makefile.in: Regenerate.
From-SVN: r202245
Matthias Klose [Wed, 4 Sep 2013 10:38:25 +0000 (10:38 +0000)]
- Fix whitespace in boehm-gc/ChangeLog
From-SVN: r202244
Paolo Carlini [Wed, 4 Sep 2013 08:57:26 +0000 (08:57 +0000)]
re PR c++/58305 (Deprecation warning for class not raised when not assigning to a variable)
/cp
2013-09-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58305
* typeck2.c (build_functional_cast): Maybe warn_deprecated_use.
/testsuite
2013-09-03 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58305
* g++.dg/warn/deprecated-8.C: New.
From-SVN: r202242
Ian Lance Taylor [Wed, 4 Sep 2013 04:32:07 +0000 (04:32 +0000)]
compiler: expand arguments with multiple results for built-in functions.
Fixed https://code.google.com/p/go/issues/detail?id=5796. Official fixedbug will be added with change to gc.
From-SVN: r202239
Mike Stump [Wed, 4 Sep 2013 02:46:13 +0000 (02:46 +0000)]
* Make-lang.in (cp/lambda.o): Add dependencies.
From-SVN: r202238
GCC Administrator [Wed, 4 Sep 2013 00:16:38 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r202237
Ian Lance Taylor [Tue, 3 Sep 2013 21:52:37 +0000 (21:52 +0000)]
compiler, runtime: Use runtime functions to pass closure value.
This changes the compiler and runtime to not pass a closure
value as the last argument, but to instead pass it via
__go_set_closure and retrieve it via __go_get_closure. This
eliminates the need for function descriptor wrapper functions.
It will make it possible to retrieve the closure value in a
reflect.MakeFunc function.
From-SVN: r202233
Jeff Law [Tue, 3 Sep 2013 20:43:46 +0000 (14:43 -0600)]
tree-ssa-threadedge.c (thread_across_edge): Record entire path when not threading through a joiner block.
* tree-ssa-threadedge.c (thread_across_edge): Record entire path
when not threading through a joiner block. Pass joiner/no joiner
state to register_jump_thread.
* tree-ssa-threadupdate.c (register_jump_thread): Get joiner/no joiner
state from argument rather than implying on path length.
Dump the entire jump thread path into debugging dump.
* tree-flow.h (register_jump_thread): Update prototype.
* tree-ssa/ssa-dom-thread-3.c: Update due to changes in debug
dump output.
From-SVN: r202232
Xinliang David Li [Tue, 3 Sep 2013 19:11:10 +0000 (19:11 +0000)]
Remove a trivial assert (missed in previous checkin)
From-SVN: r202230
Xinliang David Li [Tue, 3 Sep 2013 18:19:04 +0000 (18:19 +0000)]
Delay base decl's alignment adjustment until transformation happens
From-SVN: r202229