platform/upstream/linaro-gcc.git
9 years agoProperly handle uninitialized common symbol
hjl [Fri, 17 Apr 2015 16:23:24 +0000 (16:23 +0000)]
Properly handle uninitialized common symbol

Uninitialized common symbol behavior in executables is target and linker
dependent.  default_binds_local_p_3 is made public and updated to take an
argument to indicate if the linker can guarantee that an uninitialized
common symbol in the executable will still be defined (through COPY
relocation) in the executable.  If common symbol is local to executable,
default_binds_local_p_3 will treat non-external variable as defined
locally.  default_binds_local_p_2 is changed to treat common symbol as
local for non-PIE binaries.

For i386, common symbol is local only for non-PIE binaries.  For x86-64,
common symbol is local only for non-PIE binaries or linker supports copy
reloc in PIE binaries.  If a target treats common symbol as local only
for non-PIE binaries, it can define TARGET_BINDS_LOCAL_P as
default_binds_local_p_2.

gcc/

PR target/65780
* output.h (default_binds_local_p_3): New.
* varasm.c (default_binds_local_p_3): Make it public.  Take an
argument to indicate if common symbol may be local.  If common
symbol may be local, treat non-external variable as defined
locally.
(default_binds_local_p_2): Pass !flag_pic to default_binds_local_p_3.
(default_binds_local_p_1): Pass false to default_binds_local_p_3.
* config/i386/i386.c (ix86_binds_local_p): New.
(TARGET_BINDS_LOCAL_P): Replace default_binds_local_p_2 with
ix86_binds_local_p.

gcc/testsuite/

PR target/65780
* gcc.dg/pr65780-1.c: New test.
* gcc.dg/pr65780-2.c: Likewise.
* gcc.target/i386/pr32219-9.c: Likewise.
* gcc.target/i386/pr32219-1.c (xxx): Make it initialized common
symbol.
* gcc.target/i386/pr64317.c (c): Initialize.

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

9 years ago PR debug/65771
jakub [Fri, 17 Apr 2015 14:16:30 +0000 (14:16 +0000)]
PR debug/65771
* dwarf2out.c (mem_loc_descriptor): For CONST, fallback to
trying mem_loc_descriptor on XEXP (rtl, 0).

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

9 years agoFix IPA memory leaks.
marxin [Fri, 17 Apr 2015 13:56:15 +0000 (13:56 +0000)]
Fix IPA memory leaks.

* ipa-cp.c (ipcp_driver): Release prev_edge_clone.
* ipa-icf.c (sem_item_optimizer::subdivide_classes_by_sensitive_refs):
Release symbol_compare_collection.
* ipa-reference.c: Add TODO that a vector should be released.

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

9 years ago PR target/65296
gjl [Fri, 17 Apr 2015 13:54:16 +0000 (13:54 +0000)]
PR target/65296
* config/avr/gen-avr-mmcu-specs.c (*avrlibc_startfile): Adjust
to new AVR-LibC file layout (bug #44574).
(*avrlibc_devicelib): Same.
* config/avr/avr-mcus.def: Adjust comments.
* config/avr/avr.opt (nodevicelib): Adjust help.

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

9 years agoHide __cpu_indicator_init/__cpu_model from linker
hjl [Fri, 17 Apr 2015 12:58:07 +0000 (12:58 +0000)]
Hide __cpu_indicator_init/__cpu_model from linker

We shouldn't call external function, __cpu_indicator_init, while an object
is being relocated since its .got.plt section hasn't been updated.  It
works for non-PIE since no update on .got.plt section is required.  This
patch creates libgcc.so as a linker script, hides __cpu_indicator_init
and __cpu_model in libgcc.so.1 from linker, forces linker to resolve
__cpu_indicator_init and __cpu_model to their hidden definitions in
libgcc.a while providing backward binary compatibility.

gcc/testsuite/

PR target/65612
* g++.dg/ext/mv18.C: New test.
* g++.dg/ext/mv19.C: Likewise.
* g++.dg/ext/mv20.C: Likewise.
* g++.dg/ext/mv21.C: Likewise.
* g++.dg/ext/mv22.C: Likewise.
* g++.dg/ext/mv23.C: Likewise.

libgcc/

PR target/65612
* config.host (tmake_file): Add t-slibgcc-libgcc for Linux/x86.
* config/i386/cpuinfo.c (__cpu_model): Initialize.
(__cpu_indicator_init@GCC_4.8.0): New.
(__cpu_model@GCC_4.8.0): Likewise.
* config/i386/t-linux (HOST_LIBGCC2_CFLAGS): Add
-DUSE_ELF_SYMVER.

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

9 years ago * config/aarch64/arm_neon.h (vdup_n_f32): Remove forward declaration.
alalaw01 [Fri, 17 Apr 2015 12:56:45 +0000 (12:56 +0000)]
    * config/aarch64/arm_neon.h (vdup_n_f32): Remove forward declaration.

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

9 years agoFix PR c++/64527
ppalka [Fri, 17 Apr 2015 12:14:24 +0000 (12:14 +0000)]
Fix PR c++/64527

gcc/
PR c++/64527
* gimplify.c (gimplify_init_constructor): Always emit a
side-effecting constructor.

gcc/testsuite/
PR c++/64527
* g++.dg/init/pr64527.C: New test.

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

9 years agoAdd missing PR lines in ChangeLog
vries [Fri, 17 Apr 2015 09:47:10 +0000 (09:47 +0000)]
Add missing PR lines in ChangeLog

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

9 years agoSet PROP_gimple_lva for functions without IFN_VA_ARG
vries [Fri, 17 Apr 2015 09:27:08 +0000 (09:27 +0000)]
Set PROP_gimple_lva for functions without IFN_VA_ARG

2015-04-17  Tom de Vries  <tom@codesourcery.com>

* gimplify.c (gimplify_function_tree): Tentatively set PROP_gimple_lva
in cfun->curr_properties.
(gimplify_va_arg_expr): Clear PROP_gimple_lva in cfun->curr_properties
if we generate an IFN_VA_ARG.
* tree-inline.c (expand_call_inline): Reset PROP_gimple_lva in dest
function if PROP_gimple_lva is not set in src function.

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

9 years agoPostpone expanding va_arg until pass_stdarg
vries [Fri, 17 Apr 2015 09:26:59 +0000 (09:26 +0000)]
Postpone expanding va_arg until pass_stdarg

2015-04-17  Tom de Vries  <tom@codesourcery.com>
    Michael Matz  <matz@suse.de>

* gimple-iterator.c (update_modified_stmts): Remove static.
* gimple-iterator.h (update_modified_stmts): Declare.
* gimplify.c (gimplify_modify_expr): Handle IFN_VA_ARG.
(gimplify_va_arg_internal): New function.
(gimplify_va_arg_expr): Use IFN_VA_ARG.
* gimplify.h (gimplify_va_arg_internal): Declare.
* internal-fn.c (expand_VA_ARG): New unreachable function.
* internal-fn.def (VA_ARG): New DEF_INTERNAL_FN.
* tree-stdarg.c (gimple_call_ifn_va_arg_p, expand_ifn_va_arg_1)
(expand_ifn_va_arg): New function.
(pass_data_stdarg): Add PROP_gimple_lva to properties_provided field.
(pass_stdarg::execute): Call expand_ifn_va_arg.
(pass_data_lower_vaarg): New pass_data.
(pass_lower_vaarg): New gimple_opt_pass.
(pass_lower_vaarg::gate, pass_lower_vaarg::execute)
(make_pass_lower_vaarg): New function.
* cfgexpand.c (pass_data_expand): Add PROP_gimple_lva to
properties_required field.
* passes.def (all_passes): Add pass_lower_vaarg.
* tree-pass.h (PROP_gimple_lva): Add define.
(make_pass_lower_vaarg): Declare.

* gcc.dg/tree-ssa/stdarg-2.c: Change f15 scan-tree-dump for target
x86_64-*-*.

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

9 years agoHandle internal_fn in operand_equal_p
vries [Fri, 17 Apr 2015 09:26:50 +0000 (09:26 +0000)]
Handle internal_fn in operand_equal_p

2015-04-17  Tom de Vries  <tom@codesourcery.com>

* fold-const.c (operand_equal_p): Handle INTERNAL_FNs.
* calls.c (call_expr_flags): Same.

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

9 years agoFactor optimize_va_list_gpr_fpr_size out of pass_stdarg::execute
vries [Fri, 17 Apr 2015 09:26:41 +0000 (09:26 +0000)]
Factor optimize_va_list_gpr_fpr_size out of pass_stdarg::execute

2015-04-17  Tom de Vries  <tom@codesourcery.com>

* tree-stdarg.c (optimize_va_list_gpr_fpr_size): Factor out of ...
(pass_stdarg::execute): ... here.

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

9 years agoAdd gimple_find_sub_bbs
vries [Fri, 17 Apr 2015 09:26:33 +0000 (09:26 +0000)]
Add gimple_find_sub_bbs

2015-04-17  Tom de Vries  <tom@codesourcery.com>
    Michael Matz  <matz@suse.de>

* tree-cfg.c (make_blocks_1): Factor out of ...
(make_blocks): ... here.
(make_edges_bb): Factor out of ...
(make_edges): ... here.
(gimple_find_sub_bbs): New function.
* tree-cfg.h (gimple_find_sub_bbs): Declare.

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

9 years agoDisable lang_hooks.gimplify_expr in free_lang_data
vries [Fri, 17 Apr 2015 09:26:24 +0000 (09:26 +0000)]
Disable lang_hooks.gimplify_expr in free_lang_data

2015-04-17  Tom de Vries  <tom@codesourcery.com>

* tree.c (free_lang_data): Disable lang_hooks.gimplify_expr.

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

9 years ago2015-04-17 Yury Gribov <y.gribov@samsung.com>
ygribov [Fri, 17 Apr 2015 07:51:02 +0000 (07:51 +0000)]
2015-04-17  Yury Gribov  <y.gribov@samsung.com>

gcc/
* asan.c (set_sanitized_sections): New function.
(section_sanitized_p): Ditto.
(asan_protect_global): Optionally sanitize user-defined
sections.
* asan.h (set_sanitized_sections): Declare new function.
* common.opt (fsanitize-sections): New option.
* doc/invoke.texi (-fsanitize-sections): Document new option.
* opts-global.c (handle_common_deferred_options): Handle new
option.

gcc/testsuite/
* c-c++-common/asan/user-section-1.c: New test.

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

9 years ago PR debug/65771
jakub [Fri, 17 Apr 2015 07:44:30 +0000 (07:44 +0000)]
PR debug/65771
* dwarf2out.c (loc_list_from_tree): Return NULL
for DEBUG_EXPR_DECL.

* gcc.dg/debug/pr65771.c: New test.

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

9 years ago* ipa-inline.c (can_inline_edge_p): Allow inlining of functions with
chrbr [Fri, 17 Apr 2015 06:50:08 +0000 (06:50 +0000)]
* ipa-inline.c (can_inline_edge_p): Allow inlining of functions with
same attributes.

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

9 years agoDaily bump.
gccadmin [Fri, 17 Apr 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago2015-04-16 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 16 Apr 2015 20:57:46 +0000 (20:57 +0000)]
2015-04-16  Paolo Carlini  <paolo.carlini@oracle.com>

* class.c (resolve_address_of_overloaded_function, instantiate_type):
Rename tsubst_flags_t parameter flags -> complain.

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

9 years ago * ira-color.c (setup_left_conflict_sizes_p): Do not process
law [Thu, 16 Apr 2015 20:02:01 +0000 (20:02 +0000)]
   * ira-color.c (setup_left_conflict_sizes_p): Do not process
        node itself when computing left conflict subnode size.

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

9 years ago * config/i386/predicates.md (register_mixssei387nonimm_operand): New.
uros [Thu, 16 Apr 2015 18:50:59 +0000 (18:50 +0000)]
* config/i386/predicates.md (register_mixssei387nonimm_operand): New.
* config/i386/i386.md (*fop_<mode>_1_mixed): Merge with
*fop_<mode>_1_sse using enabled attribute.  Use
register_mixssei387nonimm_operand operand 1 predicate. Change
alternative 3 constraints from "x" to "v".

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

9 years agoReplace __buitlin_alloca with __builtin_alloca
hjl [Thu, 16 Apr 2015 15:34:11 +0000 (15:34 +0000)]
Replace __buitlin_alloca with __builtin_alloca

* gcc.target/i386/mpx/alloca-1-lbv.c (mpx_test): Replace
__buitlin_alloca with __builtin_alloca.

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

9 years ago2015-04-16 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Thu, 16 Apr 2015 15:12:10 +0000 (15:12 +0000)]
2015-04-16  Paolo Carlini  <paolo.carlini@oracle.com>

* call.c (build_op_delete_call, build_over_call): Check mark_used
return value.
* class.c (resolve_address_of_overloaded_function): Likewise.
* decl.c (cxx_maybe_build_cleanup): Likewise.
* pt.c (gen_elem_of_pack_expansion_instantiation, tsubst_baselink,
tsubst_qualified_id, tsubst_copy, tsubst_copy_and_build): Likewise.
* rtti.c (build_dynamic_cast_1): Likewise.
* semantics.c (process_outer_var_ref): Likewise.
* typeck.c (build_class_member_access_expr,
cp_build_function_call_vec, cp_build_addr_expr_1): Likewise.

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

9 years ago[AArch64 Testsuite] Fix comments in vldN_lane_1.c
alalaw01 [Thu, 16 Apr 2015 12:25:34 +0000 (12:25 +0000)]
[AArch64 Testsuite] Fix comments in vldN_lane_1.c

        * gcc.target/aarch64/vldN_lane_1.c: Correct dup->lane in comments.

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

9 years ago2015-04-16 Richard Biener <rguenther@suse.de>
rguenth [Thu, 16 Apr 2015 12:10:34 +0000 (12:10 +0000)]
2015-04-16  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65774
* tree-ssa-ccp.c (evaluate_stmt): Constrain types we invoke
bit-value tracking on.

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

9 years ago2015-04-16 Richard Biener <rguenther@suse.de>
rguenth [Thu, 16 Apr 2015 12:03:11 +0000 (12:03 +0000)]
2015-04-16  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64277
* tree-vrp.c (check_array_ref): Fix anti-range handling,
simplify upper bound handling.
(search_for_addr_array): Simplify.
(check_array_bounds): Handle ADDR_EXPRs here.
(check_all_array_refs): Simplify.

* gcc.dg/Warray-bounds-14.c: New testcase.
* gcc.dg/Warray-bounds-15.c: Likewise.
* c-c++-common/ubsan/bounds-4.c: Disable -Warray-bounds.
* c-c++-common/ubsan/bounds-6.c: Likewise.

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

9 years ago * config/i386/i386.c (print_reg): Rewrite function.
uros [Thu, 16 Apr 2015 11:39:53 +0000 (11:39 +0000)]
* config/i386/i386.c (print_reg): Rewrite function.

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

9 years agoS/390: Fix ira cost multiplier
krebbel [Thu, 16 Apr 2015 11:29:28 +0000 (11:29 +0000)]
S/390: Fix ira cost multiplier

* config/s390/s390.h (IRA_HARD_REGNO_ADD_COST_MULTIPLIER):
Invert the condition.

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

9 years ago[PATCH]Enable two UNSIGNED_FLOAT simplifications in simplify_unary_operation_1.
renlin [Thu, 16 Apr 2015 08:36:21 +0000 (08:36 +0000)]
[PATCH]Enable two UNSIGNED_FLOAT simplifications in simplify_unary_operation_1.

gcc/

2015-04-16  Renlin Li  <renlin.li@arm.com>

* simplify-rtx.c (simplify_unary_operation_1): Fix a typo. Enable two
simplifications for UNSIGNEDED_FLOAT.

gcc/testsuite/

2015-04-16  Renlin Li  <renlin.li@arm.com>

* gcc.target/aarch64/unsigned-float.c: New.
* gcc.target/arm/unsigned-float.c: New.

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

9 years ago * config/rl78/rl78-opts.h (enum rl78_mul_types): Add MUL_G14 and
nickc [Thu, 16 Apr 2015 07:57:56 +0000 (07:57 +0000)]
  * config/rl78/rl78-opts.h (enum rl78_mul_types): Add MUL_G14 and
  MUL_UNINIT.
  (enum rl78_cpu_type): New.
  * config/rl78/rl78-virt.md (attr valloc): Add divhi and divsi.
  (umulhi3_shift_virt): Remove m constraint from operand 1.
  (umulqihi3_virt): Likewise.
  * config/rl78/rl78.c (rl78_option_override): Add code to process
  -mcpu and -mmul options.
  (rl78_alloc_physical_registers): Add code to handle divhi and
  divsi valloc attributes.
  (set_origin): Likewise.
  * config/rl78/rl78.h (RL78_MUL_G14): Define.
  (TARGET_G10, TARGET_G13, TARGET_G14): Define.
  (TARGET_CPU_CPP_BUILTINS): Define __RL78_MUL_xxx__ and
  __RL78_Gxx__.
  (ASM_SPEC): Pass -mcpu on to assembler.
  * config/rl78/rl78.md (mulqi3): Add a clobber of AX.
  (mulqi3_rl78): Likewise.
  (mulhi3_g13): Likewise.
  (mulhi3): Generate the G13 or G14 versions of the insn directly.
  (mulsi3): Likewise.
  (mulhi3_g14): Add clobbers of AX and BC.
  (mulsi3_g14): Likewise.
  (mulsi3_g13): Likewise.
  (udivmodhi4, udivmodhi4_g14, udivmodsi4): New patterns.
  (udivmodsi4_g14, udivmodsi4_g13): New patterns.
  * config/rl78/rl78.opt (mmul): Initialise value to
  RL78_MUL_UNINIT.
  (mcpu): New option.
  (m13, m14, mrl78): New option aliases.
  * config/rl78/t-rl78 (MULTILIB_OPTIONS): Add mg13 and mg14.
  (MULTILIB_DIRNAMES): Add g13 and g14.
  * doc/invoke.texi: Document -mcpu and -mmul options.

  * config/rl78/divmodhi.S: Add G14 and G13 versions of the __divhi3
  and __modhi3 functions.
* config/rl78/divmodso.S: Add G14 and G13 versions of the
  __divsi3, __udivsi3, __modsi3 and __umodsi3 functions.

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

9 years ago2015-04-16 Richard Biener <rguenther@suse.de>
rguenth [Thu, 16 Apr 2015 07:55:57 +0000 (07:55 +0000)]
2015-04-16  Richard Biener  <rguenther@suse.de>

* tree-ssa-ccp.c (likely_value): See if we have operands that
are marked as never simulate again and return CONSTANT in this
case.
* tree-ssa-propagate.c (simulate_stmt): Mark stmts that do
not have any operands that will be simulated again as
not being simulated again.

* gcc.dg/tree-ssa/ssa-ccp-36.c: New testcase.
* gcc.dg/tree-ssa/pr37508.c: Adjust.
* gfortran.dg/reassoc_6.f: Remove XFAIL.

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

9 years agoDaily bump.
gccadmin [Thu, 16 Apr 2015 00:16:21 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago * constexpr.c (cxx_eval_store_expression): Ignore clobbers.
jason [Wed, 15 Apr 2015 21:17:29 +0000 (21:17 +0000)]
* constexpr.c (cxx_eval_store_expression): Ignore clobbers.
(build_constexpr_constructor_member_initializers): Loop to find
the BIND_EXPR.
* decl.c (start_preparsed_function): Clobber the object at the
beginning of a constructor.

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

9 years ago * decl.c (grokmethod): Only set DECL_COMDAT if TREE_PUBLIC is set.
jason [Wed, 15 Apr 2015 21:17:21 +0000 (21:17 +0000)]
* decl.c (grokmethod): Only set DECL_COMDAT if TREE_PUBLIC is set.
* method.c (implicitly_declare_fn): Likewise.
* decl2.c (vague_linkage_p): Check TREE_PUBLIC first.

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

9 years ago * decl2.c (determine_visibility): Use get_template_info.
jason [Wed, 15 Apr 2015 21:17:15 +0000 (21:17 +0000)]
* decl2.c (determine_visibility): Use get_template_info.

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

9 years ago PR c++/65727
jason [Wed, 15 Apr 2015 21:17:03 +0000 (21:17 +0000)]
PR c++/65727
* lambda.c (lambda_expr_this_capture): In unevaluated context go
through the normal loop, just don't capture.
(maybe_resolve_dummy): Handle null return.

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

9 years ago * config/i386/i386.md (*cmpi<FPCMP:unord><MODEF:mode>_mixed):
uros [Wed, 15 Apr 2015 19:32:07 +0000 (19:32 +0000)]
* config/i386/i386.md (*cmpi<FPCMP:unord><MODEF:mode>_mixed):
Merge with *cmpi<FPCMP:unord><MODEF:mode>_sse using enabled attribute.
(*extendsfdf2_mixed): Merge with *extendsfdf2_sse using enabled
attribute.
(*truncdfsf_fast_mixed): Merge with *truncdfsf_fast_sse using
enabled attribute.
(*float<SWI48:mode><MODEF:mode>2_mixed): Rename from
*float<SWI48:mode><MODEF:mode>2_sse.
(*absneg<mode>2_mixed): Merge with *absneg<mode>2_sse using
enabled attribute.
(*fop_<mode>_comm_mixed): Merge with *fop_<mode>_comm_sse using
enabled attribute.

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

9 years ago PR tree-optimization/47679
law [Wed, 15 Apr 2015 18:51:49 +0000 (18:51 +0000)]
PR tree-optimization/47679
* tree-ssa-dom.c (build_and_record_new_cond): Moved to avoid
need for forward declaration in upcoming changes.
(record_conditions, record_edge_info): Likewise.

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

9 years agoFix fdump-passes
vries [Wed, 15 Apr 2015 18:43:32 +0000 (18:43 +0000)]
Fix fdump-passes

2015-04-15  Tom de Vries  <tom@codesourcery.com>

PR other/65487
* function.c (push_dummy_function): New function.
(init_dummy_function_start): Use push_dummy_function.
(pop_dummy_function): New function.  Factored out of ...
(expand_dummy_function_end): ... here.
* function.h (push_dummy_function, pop_dummy_function): Declare.
* passes.c (pass_manager::dump_passes): Use push_dummy_function and
pop_dummy_function.
* tree-chkp.c (chkp_gate): Handle cgraph_node::get (cfun->decl) == NULL.

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

9 years ago/cp
paolo [Wed, 15 Apr 2015 17:18:27 +0000 (17:18 +0000)]
/cp
2015-04-15  Paolo Carlini  <paolo.carlini@oracle.com>

* call.c (enforce_access): Emit error + inform.

/testsuite
2015-04-15  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/cpp0x/alias-decl-22.C: Adjust for error + inform change.
* g++.dg/cpp0x/decltype-call1.C: Likewise.
* g++.dg/cpp0x/defaulted21.C: Likewise.
* g++.dg/cpp0x/defaulted28.C: Likewise.
* g++.dg/cpp0x/defaulted47.C: Likewise.
* g++.dg/cpp0x/elision_neg.C: Likewise.
* g++.dg/cpp0x/fntmpdefarg3.C: Likewise.
* g++.dg/cpp0x/implicit-trivial1.C: Likewise.
* g++.dg/cpp0x/implicit1.C: Likewise.
* g++.dg/cpp0x/implicit9.C: Likewise.
* g++.dg/cpp0x/inh-ctor9.C: Likewise.
* g++.dg/cpp0x/range-for13.C: Likewise.
* g++.dg/gomp/clause-2.C: Likewise.
* g++.dg/gomp/udr-5.C: Likewise.
* g++.dg/inherit/access6.C: Likewise.
* g++.dg/lookup/duperr1.C: Likewise.
* g++.dg/lookup/friend2.C: Likewise.
* g++.dg/lookup/pr6936.C: Likewise.
* g++.dg/lookup/scoped1.C: Likewise.
* g++.dg/lookup/using26.C: Likewise.
* g++.dg/lookup/using38.C: Likewise.
* g++.dg/other/access2.C: Likewise.
* g++.dg/overload/defarg3.C: Likewise.
* g++.dg/overload/defarg6.C: Likewise.
* g++.dg/parse/access11.C: Likewise.
* g++.dg/parse/access2.C: Likewise.
* g++.dg/parse/access3.C: Likewise.
* g++.dg/parse/access4.C: Likewise.
* g++.dg/parse/access5.C: Likewise.
* g++.dg/parse/access6.C: Likewise.
* g++.dg/parse/access8.C: Likewise.
* g++.dg/parse/access9.C: Likewise.
* g++.dg/parse/crash40.C: Likewise.
* g++.dg/tc1/dr142.C: Likewise.
* g++.dg/tc1/dr166.C: Likewise.
* g++.dg/tc1/dr52.C: Likewise.
* g++.dg/template/access11.C: Likewise.
* g++.dg/template/access18.C: Likewise.
* g++.dg/template/access19.C: Likewise.
* g++.dg/template/access2.C: Likewise.
* g++.dg/template/access20.C: Likewise.
* g++.dg/template/access26.C: Likewise.
* g++.dg/template/access3.C: Likewise.
* g++.dg/template/access7.C: Likewise.
* g++.dg/template/conv12.C: Likewise.
* g++.dg/template/crash69.C: Likewise.
* g++.dg/template/friend31.C: Likewise.
* g++.dg/template/friend32.C: Likewise.
* g++.dg/template/memfriend15.C: Likewise.
* g++.dg/template/memfriend16.C: Likewise.
* g++.dg/template/memfriend17.C: Likewise.
* g++.dg/template/memfriend7.C: Likewise.
* g++.dg/template/pr32519.C: Likewise.
* g++.dg/template/qualttp21.C: Likewise.
* g++.dg/template/qualttp8.C: Likewise.
* g++.dg/template/ttp10.C: Likewise.
* g++.dg/template/typedef11.C: Likewise.
* g++.dg/template/typedef13.C: Likewise.
* g++.dg/template/typedef19.C: Likewise.
* g++.dg/template/typedef20.C: Likewise.
* g++.dg/template/typedef22.C: Likewise.
* g++.dg/template/using16.C: Likewise.
* g++.dg/template/virtual3.C: Likewise.
* g++.dg/ubsan/pr61272.C: Likewise.
* g++.old-deja/g++.bob/inherit2.C: Likewise.
* g++.old-deja/g++.brendan/crash11.C: Likewise.
* g++.old-deja/g++.brendan/enum6.C: Likewise.
* g++.old-deja/g++.brendan/visibility1.C: Likewise.
* g++.old-deja/g++.brendan/visibility10.C: Likewise.
* g++.old-deja/g++.brendan/visibility2.C: Likewise.
* g++.old-deja/g++.brendan/visibility6.C: Likewise.
* g++.old-deja/g++.brendan/visibility7.C: Likewise.
* g++.old-deja/g++.brendan/visibility8.C: Likewise.
* g++.old-deja/g++.brendan/visibility9.C: Likewise.
* g++.old-deja/g++.bugs/900428_03.C: Likewise.
* g++.old-deja/g++.jason/access17.C: Likewise.
* g++.old-deja/g++.jason/access18.C: Likewise.
* g++.old-deja/g++.jason/access22.C: Likewise.
* g++.old-deja/g++.jason/access23.C: Likewise.
* g++.old-deja/g++.jason/access8.C: Likewise.
* g++.old-deja/g++.jason/delete3.C: Likewise.
* g++.old-deja/g++.jason/report.C: Likewise.
* g++.old-deja/g++.law/access2.C: Likewise.
* g++.old-deja/g++.law/access3.C: Likewise.
* g++.old-deja/g++.law/access4.C: Likewise.
* g++.old-deja/g++.law/access5.C: Likewise.
* g++.old-deja/g++.law/arm12.C: Likewise.
* g++.old-deja/g++.law/arm14.C: Likewise.
* g++.old-deja/g++.law/ctors13.C: Likewise.
* g++.old-deja/g++.law/union2.C: Likewise.
* g++.old-deja/g++.law/visibility12.C: Likewise.
* g++.old-deja/g++.law/visibility15.C: Likewise.
* g++.old-deja/g++.law/visibility16.C: Likewise.
* g++.old-deja/g++.law/visibility17.C: Likewise.
* g++.old-deja/g++.law/visibility18.C: Likewise.
* g++.old-deja/g++.law/visibility19.C: Likewise.
* g++.old-deja/g++.law/visibility20.C: Likewise.
* g++.old-deja/g++.law/visibility21.C: Likewise.
* g++.old-deja/g++.law/visibility24.C: Likewise.
* g++.old-deja/g++.law/visibility4.C: Likewise.
* g++.old-deja/g++.law/visibility5.C: Likewise.
* g++.old-deja/g++.law/visibility6.C: Likewise.
* g++.old-deja/g++.law/visibility7.C: Likewise.
* g++.old-deja/g++.law/visibility8.C: Likewise.
* g++.old-deja/g++.law/visibility9.C: Likewise.
* g++.old-deja/g++.niklas/t135.C: Likewise.
* g++.old-deja/g++.oliva/delete1.C: Likewise.
* g++.old-deja/g++.oliva/partord1.C: Likewise.
* g++.old-deja/g++.other/access11.C: Likewise.
* g++.old-deja/g++.other/access4.C: Likewise.
* g++.old-deja/g++.other/access7.C: Likewise.
* g++.old-deja/g++.other/crash1.C: Likewise.
* g++.old-deja/g++.other/crash7.C: Likewise.
* g++.old-deja/g++.other/friend1.C: Likewise.
* g++.old-deja/g++.other/friend4.C: Likewise.
* g++.old-deja/g++.other/friend9.C: Likewise.
* g++.old-deja/g++.other/lineno1.C: Likewise.
* g++.old-deja/g++.other/using1.C: Likewise.
* g++.old-deja/g++.pt/enum14.C: Likewise.
* g++.old-deja/g++.pt/friend11.C: Likewise.
* g++.old-deja/g++.pt/friend21.C: Likewise.
* g++.old-deja/g++.pt/friend3.C: Likewise.
* g++.old-deja/g++.pt/inherit2.C: Likewise.
* g++.old-deja/g++.pt/memtemp74.C: Likewise.
* g++.old-deja/g++.pt/memtemp89.C: Likewise.
* g++.old-deja/g++.robertl/eb94.C: Likewise.

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

9 years ago2015-04-15 Chen Gang <gang.chen.5i5j@gmail.com>
law [Wed, 15 Apr 2015 15:29:12 +0000 (15:29 +0000)]
2015-04-15  Chen Gang  <gang.chen.5i5j@gmail.com>

       * gthr-single.h (__GTHREAD_MUTEX_INIT_FUNCTION): Use empty
       do-while loop as macro body to avoid warnings.

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

9 years ago * constexpr.c (use_new_call): Remove #define.
mpolacek [Wed, 15 Apr 2015 14:46:22 +0000 (14:46 +0000)]
* constexpr.c (use_new_call): Remove #define.
(lookup_parameter_binding): Remove function.
(cxx_bind_parameters_in_call): Remove unused code.
(cxx_eval_call_expression): Likewise.
(cxx_eval_constant_expression): Likewise.

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

9 years ago PR rtl-optimization/42522
law [Wed, 15 Apr 2015 12:24:28 +0000 (12:24 +0000)]
    PR rtl-optimization/42522
        * cse.c (fold_rtx): Try to simplify a ZERO_EXTRACT or
        SIGN_EXTRACT as a whole object rather than simplifying
        its operand.

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

9 years ago PR ipa/65765
jakub [Wed, 15 Apr 2015 11:47:44 +0000 (11:47 +0000)]
PR ipa/65765
* ipa-icf-gimple.c (func_checker::compare_bb): For GIMPLE_NOP
and GIMPLE_PREDICT use break instead of return true. For
GIMPLE_EH_DISPATCH, compare dispatch region.

* g++.dg/ipa/pr65765.C: New test.

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

9 years ago PR bootstrap/65763
jakub [Wed, 15 Apr 2015 09:23:59 +0000 (09:23 +0000)]
PR bootstrap/65763
* Makefile.am (gcc_build_dir): Remove $(host_subdir)/ part.
* Makefile.in: Regenerated.

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

9 years ago * doc/extend.texi (__sync Builtins): Simplify some text. Update
mwahab [Wed, 15 Apr 2015 08:35:53 +0000 (08:35 +0000)]
* doc/extend.texi (__sync Builtins): Simplify some text.  Update
details about the implementation.  Make clear preference for
__atomic builtins.  Reduce possibility of future change.

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

9 years agoIgnore elfdump warnings in scripts/extract_symvers.pl
ro [Wed, 15 Apr 2015 07:48:59 +0000 (07:48 +0000)]
Ignore elfdump warnings in scripts/extract_symvers.pl

* scripts/extract_symvers.pl: Ignore elfdump error output.

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

9 years ago * config/rx/rx.opt (mallow-string-insns): New option.
nickc [Wed, 15 Apr 2015 07:41:07 +0000 (07:41 +0000)]
* config/rx/rx.opt (mallow-string-insns): New option.
* config/rx/rx.c (RX_BUILTIN_RMPA): Disable the use of this
builtin if string instructions are denied.
* config/rx/rx.h (TARGET_CPU_CPP_BUILTINS): Define
__RX_ALLOW_STRING_INSNS__ or __RX_DISALLOW_STRING_INSNS__, as
appropriate.
(ASM_SPEC): Pass -mno-allow-string-insns on to the assembler.
* config/rx/rx.md (movstr): Enable pattern only if string
instructions are allowed.
(rx_movstr, rx_strend, movmemsi, rx_movmem): Likewise.
(cmpstrnsi, cmpstrsi, rx_cmpstrn, rmpa): Likewise.
* config/rx/t-rx (MULTILIB_OPTIONS): Add mno-allow-string-insns.
(MULTILIB_DIRNAMES): Add no-strings.
* doc/invoke.texi: Document -mno-allow-string-insns.

* gcc.target/rx/builtins.c: Disable RMPA test if string
instructions are not allowed.

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

9 years ago PR target/65408
amodra [Wed, 15 Apr 2015 07:29:01 +0000 (07:29 +0000)]
PR target/65408
PR target/58744
PR middle-end/36043
* calls.c (load_register_parameters): Don't load past end of
mem unless suitably aligned.

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

9 years ago * config/rl78/rl78.c (rl78_expand_prologue): Mark large stack
nickc [Wed, 15 Apr 2015 07:24:44 +0000 (07:24 +0000)]
* config/rl78/rl78.c (rl78_expand_prologue): Mark large stack
decrement instruction as being frame related.
(rl78_print_operand_1): Handle 'p' modifier to add +0 to HL
based addresses.
If zero extending a function address enclose the operation in
%code(...).
(rl78_preferred_reload_class): New function.
(TARGET_PREFERRED_RELOAD_CLASS): Define.
* config/rl78/rl78.md: Remove useless constraints in expanders.
(mulqi3_rl78): Remove + qualifier on input-only operand 1.
(mulhi3_rl78): Likewise.
(mulhi3_g13): Likewise.
(mulsi3_rl78): Likewise.
(es_addr): Move to before the multiply patterns.

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

9 years ago * function.h (struct emit_status): Delete x_first_insn, x_last_insn
amodra [Wed, 15 Apr 2015 06:05:44 +0000 (06:05 +0000)]
* function.h (struct emit_status): Delete x_first_insn, x_last_insn
and sequence_stack.  Add seq.
(seq_stack): Delete.
* function.c (prepare_function_start): Don't access x_last_insn.
* emit-rtl.h (get_current_sequence, get_topmost_sequence): New.
(get_insns, set_first_insn, get_last_insn, set_last_insn): Use them.
* emit_rtl.c (start_sequence, push_topmost_sequence,
pop_topmost_sequence, end_sequence, in_sequence_p, init_emit): Use
sequence accessors.
(get_last_insn_anywhere, add_insn_after_nobb, add_insn_before_nobb,
remove_insn): Likewise.  Simplify.
* config/m32c/m32c.c (m32c_leaf_function_p): Use push_topmost_sequence
and pop_topmost_sequence.
(m32c_function_needs_enter): Use get_topmost_sequence.  Ignore
debug insns.
* config/rs6000/rs6000.c (rs6000_call_aix): Use get_current_sequence.

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

9 years ago2015-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
jvdelisle [Wed, 15 Apr 2015 01:27:03 +0000 (01:27 +0000)]
2015-04-14 Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libgfortran/65089
* io/format.h (free_format): New function to free memory
allocated for building format error messages.
* io/format.c (format_error): Add checks before freeing memory
to avoid potential segfaults and free formatting data when
needed on error conditions. Always allocate and NULL terminate
the string.
* io/transfer.c (st_read_done, st_write_done): Use new
free_format function to clean up memory allocations when done.

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

9 years ago * tree.c (replace_placeholders_t): Remove unused type.
jason [Wed, 15 Apr 2015 00:58:28 +0000 (00:58 +0000)]
* tree.c (replace_placeholders_t): Remove unused type.
(replace_placeholders): Remove unused pset.

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

9 years agoDaily bump.
gccadmin [Wed, 15 Apr 2015 00:16:15 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago * pt.c (lookup_template_class_1): Use coerce_innermost_template_parms.
jason [Tue, 14 Apr 2015 21:31:07 +0000 (21:31 +0000)]
* pt.c (lookup_template_class_1): Use coerce_innermost_template_parms.

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

9 years agogcc/
yroux [Tue, 14 Apr 2015 17:21:54 +0000 (17:21 +0000)]
gcc/
2015-04-14  Yvan Roux  <yvan.roux@linaro.org>

PR target/65729
* lra-constraints.c (prohibited_class_reg_set_mode_p): Restore and fix
the assertiion.

gcc/testsuite/
2015-04-14  Yvan Roux  <yvan.roux@linaro.org>

PR target/65729
* gcc.target/arm/pr65729.c: New test.

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

9 years ago * config/i386/i386.h (LEGACY_INT_REG_P): New define.
uros [Tue, 14 Apr 2015 17:17:05 +0000 (17:17 +0000)]
* config/i386/i386.h (LEGACY_INT_REG_P): New define.
(LEGACY_INT_REGNO_P): Ditto.
(GENERAL_REGNO_P): Use LEGACY_INT_REGNO_P.
(ANY_MASK_REG_P): Remove.
(BND_REG_P): Rename from ANY_BND_REG_P.
* config/i386/i386.c (print_reg): Use LEGACY_INT_REG_P to print
legacy integer registers.  Do not handle MMX_REG_P in a special way.
Merge 64byte and 32byte SSE handling.

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

9 years ago2015-04-14 Max Ostapenko <m.ostapenko@partner.samsung.com>
chefmax [Tue, 14 Apr 2015 16:14:04 +0000 (16:14 +0000)]
2015-04-14  Max Ostapenko  <m.ostapenko@partner.samsung.com>

* Makefile.tpl (EXTRA_HOST_EXPORTS): New variables.
(EXTRA_BOOTSTRAP_FLAGS): Likewise.
(check-[+module+]): Add EXTRA_HOST_EXPORTS and EXTRA_BOOTSTRAP_FLAGS.
* Makefile.in: Regenerate.

libiberty/
* testsuite/Makefile.in (LIBCFLAGS): Add LDFLAGS.

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

9 years ago * expr.c (expand_assignment): Force an address offset computation
nickc [Tue, 14 Apr 2015 16:12:34 +0000 (16:12 +0000)]
* expr.c (expand_assignment): Force an address offset computation
into a register before changing its mode.
(expand_expr_real_1): Likewise.

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

9 years ago PR c++/65695
jason [Tue, 14 Apr 2015 16:02:41 +0000 (16:02 +0000)]
PR c++/65695
* cvt.c (cp_fold_convert): Avoid wrapping PTRMEM_CST in NOP_EXPR.

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

9 years ago PR c++/65721
jason [Tue, 14 Apr 2015 15:29:34 +0000 (15:29 +0000)]
PR c++/65721
* name-lookup.c (do_class_using_decl): Complain about specifying
the current class even if there are dependent bases.

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

9 years ago PR c++/59766
jason [Tue, 14 Apr 2015 15:29:27 +0000 (15:29 +0000)]
PR c++/59766
* decl.c (grokdeclarator): Do not flag friends with deduced return.

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

9 years ago PR c++/60994
jason [Tue, 14 Apr 2015 15:29:21 +0000 (15:29 +0000)]
PR c++/60994
* parser.c (cp_parser_class_name): Add enum_ok parameter.
(cp_parser_qualifying_entity): Use it instead of cp_parser_type_name.
(cp_parser_diagnose_invalid_type_name): Don't assume a template is
a class template.

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

9 years agoAdd the missing file
hjl [Tue, 14 Apr 2015 15:04:45 +0000 (15:04 +0000)]
Add the missing file

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

9 years ago[AArch64 Intrinsics] Replace temporary assembler for vst1_lane
alalaw01 [Tue, 14 Apr 2015 13:59:06 +0000 (13:59 +0000)]
[AArch64 Intrinsics] Replace temporary assembler for vst1_lane

* config/aarch64/arm_neon.h (vst1_lane_f32, vst1_lane_f64,
vst1_lane_p8, vst1_lane_p16, vst1_lane_s8, vst1_lane_s16,
vst1_lane_s32, vst1_lane_s64, vst1_lane_u8, vst1_lane_u16,
vst1_lane_u32, vst1_lane_u64, vst1q_lane_f32, vst1q_lane_f64,
vst1q_lane_p8, vst1q_lane_p16, vst1q_lane_s8, vst1q_lane_s16,
vst1q_lane_s32, vst1q_lane_s64, vst1q_lane_u8, vst1q_lane_u16,
vst1q_lane_u32, vst1q_lane_u64): Reimplement with pointer dereference
and __aarch64_vget_lane_any.

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

9 years ago PR rtl-optimization/65761
jakub [Tue, 14 Apr 2015 13:24:53 +0000 (13:24 +0000)]
PR rtl-optimization/65761
* cfgrtl.c (rtl_split_edge): For EDGE_CROSSING split, use
get_last_bb_insn (after) instead of NEXT_INSN (BB_END (after)).

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

9 years agoAdd bootstrap-mpx.mk
hjl [Tue, 14 Apr 2015 12:45:34 +0000 (12:45 +0000)]
Add bootstrap-mpx.mk

* bootstrap-mpx.mk: New file.

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

9 years ago2015-04-14 Richard Biener <rguenther@suse.de>
rguenth [Tue, 14 Apr 2015 12:33:57 +0000 (12:33 +0000)]
2015-04-14  Richard Biener  <rguenther@suse.de>

* graphite-scop-detection.c: Do not include cp/cp-tree.h.
(graphite_can_represent_scev): Use POINTER_TYPE_P.

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

9 years ago2015-04-14 Richard Biener <rguenther@suse.de>
rguenth [Tue, 14 Apr 2015 12:17:05 +0000 (12:17 +0000)]
2015-04-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65758
* tree-ssa-ccp.c (get_value_from_alignment): Adjust mask test
against -1.
(ccp_lattice_meet): Likewise.
(bit_value_unop): Likewise.
(bit_value_binop): Likewise.
(bit_value_assume_aligned): Likewise.

* gfortran.fortran-torture/compile/pr65758.f90: New testcase.

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

9 years ago15-04-14 Christian Bruel <christian.bruel@st.com>
chrbr [Tue, 14 Apr 2015 12:14:04 +0000 (12:14 +0000)]
15-04-14  Christian Bruel  <christian.bruel@st.com>

* execute_dwarf2_frame (dw_frame_pointer_regnum): Reinitialize for each
function.

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

9 years agoAdd missing testcase.
yroux [Tue, 14 Apr 2015 12:12:29 +0000 (12:12 +0000)]
Add missing testcase.

2015-04-14  Yvan Roux  <yvan.roux@linaro.org>

PR target/65648
* gcc.c-torture/execute/pr65648.c: New test.

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

9 years ago2015-04-14 Marc Glisse <marc.glisse@inria.fr>
glisse [Tue, 14 Apr 2015 11:02:48 +0000 (11:02 +0000)]
2015-04-14  Marc Glisse  <marc.glisse@inria.fr>

PR libstdc++/61347
* include/bits/stl_iterator_base_funcs.h (_List_iterator,
_List_const_iterator): Declare.
(__distance): Declare new overloads for _List_iterator and
_List_const_iterator.
* include/bits/stl_list.h (__distance): New overloads for
_List_iterator and _List_const_iterator.
* testsuite/23_containers/list/61347.cc: New testcase.

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

9 years ago * doc/xml/manual/evolution.xml: Fix typos.
redi [Tue, 14 Apr 2015 10:08:58 +0000 (10:08 +0000)]
* doc/xml/manual/evolution.xml: Fix typos.
* doc/html/manual/api.html: Regenerate.

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

9 years agoAvoid finite in gcc.target/i386/avx512dq-vfpclasspd-2.c etc.
ro [Tue, 14 Apr 2015 09:22:28 +0000 (09:22 +0000)]
Avoid finite in gcc.target/i386/avx512dq-vfpclasspd-2.c etc.

* gcc.target/i386/avx512dq-vfpclasspd-2.c (check_fp_class_dp): Use
__builtin_finite instead of finite.
* gcc.target/i386/avx512dq-vfpclassps-2.c (check_fp_class_sp):
Likewise.

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

9 years ago2015-04-14 Marc Glisse <marc.glisse@inria.fr>
glisse [Tue, 14 Apr 2015 08:49:16 +0000 (08:49 +0000)]
2015-04-14  Marc Glisse  <marc.glisse@inria.fr>

PR tree-optimization/63387
gcc/
* match.pd ((x unord x) | (y unord y) -> (x unord y),
(x unord x) | (x unord y) -> (x unord y)): New simplifications.
gcc/testsuite/
* gcc.dg/pr63387.c: New testcase.

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

9 years ago * config/i386/predicates.md (any_QIreg_operand): Rename from
uros [Tue, 14 Apr 2015 05:04:03 +0000 (05:04 +0000)]
* config/i386/predicates.md (any_QIreg_operand): Rename from
q_regs_operand.  Do not process subregs.
(QIreg_operand): Use QI_REGNO_P predicate.
(ext_QIreg_operand): Ditto.
(ext_register_operand): Ditto.
* config/i386/i386.md (TEST splitters): Use QIreg_operand predicate.
(AND splitters): Ditto.
(AND with -65536 splitter): Add SWI48 mode for operand 0.
(AND with -256 splitter): Use any_QIreg_operand predicate and
SWI248 mode for operand 0.
(AND with -65281 splitter): Use QIreg_operand predicate and SWI248
mode for operand 0.
(SETCC + MOVZBL peepholes): Update for renamed any_QIreg_operand.

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

9 years agoFix regression for libstdc++-v3/testsuite/29_atomics/atomic/62259.cc
hp [Tue, 14 Apr 2015 00:37:57 +0000 (00:37 +0000)]
Fix regression for libstdc++-v3/testsuite/29_atomics/atomic/62259.cc
as reported at <http://gcc.gnu.org/ml/gcc-patches/2015-04/msg00543.html>.

* testsuite/29_atomics/atomic/62259.cc: Assert atomic
alignment is larger-equal, not equal, to default alignment.

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

9 years agoDaily bump.
gccadmin [Tue, 14 Apr 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

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

9 years ago * doc/plugins.texi: Rewrite first introductory paragraph.
gerald [Mon, 13 Apr 2015 23:31:10 +0000 (23:31 +0000)]
* doc/plugins.texi: Rewrite first introductory paragraph.

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

9 years agogcc/po:
jsm28 [Mon, 13 Apr 2015 20:10:53 +0000 (20:10 +0000)]
gcc/po:
* gcc.pot: Regenerate.

libcpp/po:
* cpplib.pot: Regenerate.

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

9 years ago PR libstdc++/65754
redi [Mon, 13 Apr 2015 18:41:42 +0000 (18:41 +0000)]
PR libstdc++/65754
* config/abi/pre/gnu.ver: Export base object constructors for
fstreams.
* config/abi/post/aarch64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/alpha-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/ia64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/i386-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/i486-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/powerpc-linux-gnu/baseline_symbols.txt: Update
* config/abi/post/powerpc64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/powerpc64-linux-gnu/32/baseline_symbols.txt: Update.
* config/abi/post/s390x-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/s390-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/solaris2.10/baseline_symbols.txt: Regenerate.
* config/abi/post/solaris2.10/amd64/baseline_symbols.txt: Likewise.
* config/abi/post/solaris2.10/sparcv9/baseline_symbols.txt: Likewise.
* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/post/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.
* testsuite/27_io/basic_fstream/cons/base.cc: New.

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

9 years ago * doc/xml/manual/evolution.xml: Document changes since 4.5 release.
redi [Mon, 13 Apr 2015 16:21:33 +0000 (16:21 +0000)]
* doc/xml/manual/evolution.xml: Document changes since 4.5 release.
* doc/html/*: Regenerate.

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

9 years ago * g++.dg/tree-ssa/nonzero-3.C: New testcase.
hubicka [Mon, 13 Apr 2015 14:16:41 +0000 (14:16 +0000)]
* g++.dg/tree-ssa/nonzero-3.C: New testcase.
* tree-vrp.c (nonnull_arg_p): THIS pointers and references are non-zero.
(gimple_stmt_nonzero_warnv_p): Reference return values are non-zero.

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

9 years ago * ipa-profie.c (ipa_profile): Check number of parameters
hubicka [Mon, 13 Apr 2015 14:13:06 +0000 (14:13 +0000)]
* ipa-profie.c (ipa_profile): Check number of parameters
and possible polymorphic call targets before
devirtualizing.

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

9 years ago * config/i386/i386.md (*bmi2_umul<mode><dwi>3_1): Merge from
uros [Mon, 13 Apr 2015 14:02:26 +0000 (14:02 +0000)]
* config/i386/i386.md (*bmi2_umul<mode><dwi>3_1): Merge from
*bmi2_umulsidi3_1 and *bmi2_umulditi3_1 using DWIH mode iterator.

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

9 years ago2015-04-13 Richard Biener <rguenther@suse.de>
rguenth [Mon, 13 Apr 2015 12:42:41 +0000 (12:42 +0000)]
2015-04-13  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65204
* tree-ssa-ccp.c (evaluate_stmt): Always evaluate address
takens for bit-CCP.

* gcc.dg/tree-ssa/ssa-ccp-35.c: New testcase.

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

9 years ago * update_version_svn: Update DATESTAMP also on
jakub [Mon, 13 Apr 2015 09:07:11 +0000 (09:07 +0000)]
* update_version_svn: Update DATESTAMP also on
branches/gcc-[0-9]+-branch.

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

9 years ago2015-04-13 Yury Gribov <y.gribov@samsung.com>
ygribov [Mon, 13 Apr 2015 08:59:55 +0000 (08:59 +0000)]
2015-04-13  Yury Gribov  <y.gribov@samsung.com>

PR sanitizer/64839

libsanitizer/
* sanitizer_common/sanitizer_platform.h: Cherry pick
upstream r234470.
* sanitizer_common/sanitizer_platform_limits_posix.cc: Ditto.
* configure.ac (RPC_DEFS): Check for precense of RPC headers.
* sanitizer_common/Makefile.am (DEFS): Pass info to compiler.
* Makefile.in: Regenerate.
* asan/Makefile.in: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* interception/Makefile.in: Regenerate.
* libbacktrace/Makefile.in: Regenerate.
* lsan/Makefile.in: Regenerate.
* sanitizer_common/Makefile.in: Regenerate.
* tsan/Makefile.in: Regenerate.
* ubsan/Makefile.in: Regenerate.

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

9 years ago * gcc_release: Fix up thinko in the last commit, improve error
jakub [Mon, 13 Apr 2015 08:44:56 +0000 (08:44 +0000)]
* gcc_release: Fix up thinko in the last commit, improve error
message.  Commit all ChangeLog, DEV-PHASE and BASE-VER changes
together, rather than doing dozens of separate commits.

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

9 years ago * gnatvsn.ads (Library_Version): Bump to 6.
ebotcazou [Mon, 13 Apr 2015 08:20:53 +0000 (08:20 +0000)]
* gnatvsn.ads (Library_Version): Bump to 6.

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

9 years ago2015-04-13 Richard Biener <rguenther@suse.de>
rguenth [Mon, 13 Apr 2015 07:33:51 +0000 (07:33 +0000)]
2015-04-13  Richard Biener  <rguenther@suse.de>

PR target/65660
* config/i386/i386.c (bdver1_cost): Double cond_taken_branch_cost
and cond_not_taken_branch_cost to 4 and 2.
(bdver2_cost): Likewise.
(bdver3_cost): Likewise.
(bdver4_cost): Likewise.

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

9 years ago * hash-table.h (hash_table constructor): Add mem stats.
hubicka [Mon, 13 Apr 2015 06:37:56 +0000 (06:37 +0000)]
* hash-table.h (hash_table constructor): Add mem stats.
(alloc_entries): Likewise.

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

9 years ago * ipa-cp.c (ipcp_driver): Relase prev_edge.
hubicka [Mon, 13 Apr 2015 06:27:57 +0000 (06:27 +0000)]
* ipa-cp.c (ipcp_driver): Relase prev_edge.
* passes.c (execute_one_pass): Only add transform if pass has one.

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

9 years agoAdd missing test case
xguo [Mon, 13 Apr 2015 05:22:09 +0000 (05:22 +0000)]
Add missing test case

2015-04-13  Terry Guo  <terry.guo@arm.com>

        PR target/65710
        * gcc.target/arm/pr65710.c: New.

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

9 years agoDaily bump.
gccadmin [Mon, 13 Apr 2015 00:16:13 +0000 (00:16 +0000)]
Daily bump.

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

9 years agoDon't enable -fprefetch-loop-arrays for TARGET_SOFTWARE_PREFETCHING_BENEFICIAL if...
jsm28 [Sun, 12 Apr 2015 21:35:17 +0000 (21:35 +0000)]
Don't enable -fprefetch-loop-arrays for TARGET_SOFTWARE_PREFETCHING_BENEFICIAL if -Os.

Testing an x86_64 toolchain configured for a processor with
TARGET_SOFTWARE_PREFETCHING_BENEFICIAL produces failures

FAIL: g++.dg/pr60518.C  -std=gnu++98 (test for excess errors)
FAIL: g++.dg/pr60518.C  -std=gnu++11 (test for excess errors)
FAIL: g++.dg/pr60518.C  -std=gnu++14 (test for excess errors)

where the failure is from the message "pr60518.C:1:0: warning:
-fprefetch-loop-arrays is not supported with -Os".

Given that lack of support, it seems appropriate for the back end not
to enable this option in the -Os case; this patch implements that.

Bootstrapped with no regressions on x86_64-unknown-linux-gnu; tested
for a cross to x86_64-linux-gnu --with-arch=btver2, where those test
failures duly disappear.

* config/i386/i386.c (ix86_option_override_internal): Don't set
-fprefetch-loop-arrays if optimizing for size.

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

9 years ago * gcc_release: For RELEASE_MAJOR 5+ only use the major
jakub [Sun, 12 Apr 2015 20:49:37 +0000 (20:49 +0000)]
* gcc_release: For RELEASE_MAJOR 5+ only use the major
number in branch name.  When doing final release of 5+,
if BASE-VER doesn't match release, but is *.*.1 for the
one smaller minor version, bump BASE-VER.

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

9 years ago * doc/contrib.texi (Contributors): Add Martin Jambor and
gerald [Sun, 12 Apr 2015 20:31:53 +0000 (20:31 +0000)]
* doc/contrib.texi (Contributors): Add Martin Jambor and
Michael Matz.

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

9 years ago * fi.po, sv.po: Update.
jsm28 [Sun, 12 Apr 2015 20:26:23 +0000 (20:26 +0000)]
* fi.po, sv.po: Update.

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

9 years ago * crontab: Enable snapshots from gcc-5-branch.
jakub [Sun, 12 Apr 2015 20:10:32 +0000 (20:10 +0000)]
* crontab: Enable snapshots from gcc-5-branch.

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