platform/upstream/gcc.git
8 years agoFix misleading indentation in gcc/fortran/io.c
David Malcolm [Thu, 10 Dec 2015 15:11:37 +0000 (15:11 +0000)]
Fix misleading indentation in gcc/fortran/io.c

Fix this warning:
../../../src/gcc/fortran/io.c: In function ‘match gfc_match_open()’:
../../../src/gcc/fortran/io.c:2003:4: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]
    if (!compare_to_allowed_values ("DELIM", delim, NULL, NULL,
    ^
../../../src/gcc/fortran/io.c:2000:2: note: ...this ‘if’ clause, but it is not
  if (!is_char_type ("DELIM", open->delim))
  ^

gcc/fortran/ChangeLog:
* io.c (gfc_match_open): Fix indentation.

From-SVN: r231519

8 years agoFix -Wmisleading-indentation warning in function.c
David Malcolm [Thu, 10 Dec 2015 15:06:05 +0000 (15:06 +0000)]
Fix -Wmisleading-indentation warning in function.c

Fix this warning:
../../../src/gcc/function.c: In function ‘void locate_and_pad_parm(machine_mode, tree, int, int, int, tree, args_size*, locate_and_pad_arg_data*)’:
../../../src/gcc/function.c:4123:2: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]
  {
  ^
../../../src/gcc/function.c:4119:7: note: ...this ‘if’ clause, but it is not
       if (initial_offset_ptr->var)
       ^

gcc/ChangeLog:
* function.c (locate_and_pad_parm): Fix indentation.

From-SVN: r231518

8 years agoChange tests to use -std=gnu++14 not -std=gnu++1y
Jonathan Wakely [Thu, 10 Dec 2015 14:39:07 +0000 (14:39 +0000)]
Change tests to use -std=gnu++14 not -std=gnu++1y

* testsuite/experimental/memory/shared_ptr/assign/assign.cc: Replace
-std=gnu++1y with -std=gnu++14.
* testsuite/experimental/memory/shared_ptr/cast/cast.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/comparison/comparison.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/alias_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/alloc_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/copy_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/copy_ctor_neg.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/default_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/move_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/pointer_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/unique_ptr_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/cons/weak_ptr_ctor.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/dest/dest.cc: Likewise.
* testsuite/experimental/memory/shared_ptr/modifiers/reset.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/modifiers/swap.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/observers/bool_conv.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/observers/operators.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/observers/owner_before.cc:
Likewise.
* testsuite/experimental/memory/shared_ptr/observers/use_count.cc:
Likewise.

From-SVN: r231517

8 years agoFix dejagnu directives in shared_ptr test
Jonathan Wakely [Thu, 10 Dec 2015 14:32:16 +0000 (14:32 +0000)]
Fix dejagnu directives in shared_ptr test

PR libstdc++/68825
* include/experimental/bits/shared_ptr.h (__shared_ptr, __weak_ptr,
experimental::shared_ptr, experimental::weak_ptr): Constrain
assignment operators.
* testsuite/experimental/memory/shared_ptr/cons/copy_ctor_neg.cc:
Change to a compile-only test and change dg-excess-errors to dg-error.

From-SVN: r231516

8 years agore PR ada/48013 (generic instantiation breaks the No_Elaboration_Code restriction)
Eric Botcazou [Thu, 10 Dec 2015 14:20:50 +0000 (14:20 +0000)]
re PR ada/48013 (generic instantiation breaks the No_Elaboration_Code restriction)

PR ada/48013
* gcc-interface/trans.c (empty_stmt_list_p): New predicate.
(gigi): Invoke it to compute the No_Elaboration_Code property.
(insert_code_for): Do not insert the code if it's empty.

From-SVN: r231515

8 years agotree-ssa-structalias.c (struct variable_info): Add is_ipa_escape_point flag.
Richard Biener [Thu, 10 Dec 2015 14:15:34 +0000 (14:15 +0000)]
tree-ssa-structalias.c (struct variable_info): Add is_ipa_escape_point flag.

2015-12-10  Richard Biener  <rguenther@suse.de>

* tree-ssa-structalias.c (struct variable_info): Add
is_ipa_escape_point flag.
(new_var_info): Initialize to false.
(find_func_aliases): Generate escape constraints for stores
properly in IPA mode.
(ipa_pta_execute): Compute is_ipa_escape_point for globals.

From-SVN: r231514

8 years agotrans.c (Call_to_gnu): Remove guard for NULL_EXPR.
Eric Botcazou [Thu, 10 Dec 2015 14:06:15 +0000 (14:06 +0000)]
trans.c (Call_to_gnu): Remove guard for NULL_EXPR.

* gcc-interface/trans.c (Call_to_gnu): Remove guard for NULL_EXPR.
* gcc-interface/utils2.c (gnat_rewrite_reference) <ERROR_MARK>: Return
the reference unmodified.
<NULL_EXPR>: New case.  Likewise.

From-SVN: r231513

8 years agoImprove generated libstdc++ API docs
Jonathan Wakely [Thu, 10 Dec 2015 14:02:52 +0000 (14:02 +0000)]
Improve generated libstdc++ API docs

* doc/doxygen/user.cfg.in: Use EXTENSION_MAPPING tag. Add new headers
to INPUT. Remove obsolete XML_SCHEMA and XML_DTD tags. Update
PREDEFINED macros. Set BRIEF_MEMBER_DESC for man-pages.
* include/backward/strstream: Correct @file comment.
* include/bits/forward_list.h: Improve Doxygen comments.
* include/bits/locale_facets_nonio.h: Likewise.
* include/bits/mutex.h: Likewise.
* include/bits/shared_ptr.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/debug/vector (_Safe_vector): Add @brief section to comment.
* include/experimental/bits/fs_dir.h: Correct @file comment.
* include/experimental/bits/fs_fwd.h: Likewise.
* include/experimental/bits/fs_ops.h: Likewise.
* include/experimental/bits/fs_path.h: Likewise.
* include/experimental/bits/string_view.tcc: Likewise.
* include/experimental/optional: Document experimental status.
* include/experimental/string_view: Correct @file comment.
* include/ext/pb_ds/detail/bin_search_tree_/traits.hpp: Reduce
whitespace to avoid Doxygen bug.
* include/std/bitset: Remove redundant @class Doxygen command. Add
parentheses to avoid Doxygen bug.
* include/std/mutex: Improve Doxygen comments.
* include/tr2/dynamic_bitset: Add missing @param documentation.
* scripts/run_doxygen: Rename man pages for std::experimental types.

From-SVN: r231512

8 years agogigi.h (create_var_decl): Adjust comment.
Eric Botcazou [Thu, 10 Dec 2015 13:46:38 +0000 (13:46 +0000)]
gigi.h (create_var_decl): Adjust comment.

* gcc-interface/gigi.h (create_var_decl): Adjust comment.
(create_subprog_decl): Likewise.
* gcc-interface/utils.c (create_var_decl): Likewise.
(create_subprog_decl): Likewise.

From-SVN: r231511

8 years ago[ARC] Add support for atomic memory built-in. Add atomic.md file.
Claudiu Zissulescu [Thu, 10 Dec 2015 13:40:21 +0000 (14:40 +0100)]
[ARC] Add support for atomic memory built-in. Add atomic.md file.

gcc/

2015-12-10  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/atomic.md: Add new file.

From-SVN: r231510

8 years ago[ARC] Add support for atomic memory built-in.
Claudiu Zissulescu [Thu, 10 Dec 2015 13:32:21 +0000 (14:32 +0100)]
[ARC] Add support for atomic memory built-in.

gcc/

2015-12-10  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc-protos.h (arc_expand_atomic_op): Prototype.
(arc_split_compare_and_swap): Likewise.
(arc_expand_compare_and_swap): Likewise.
* config/arc/arc.c (arc_init): Check usage atomic option.
(arc_pre_atomic_barrier): New function.
(arc_post_atomic_barrier): Likewise.
(emit_unlikely_jump): Likewise.
(arc_expand_compare_and_swap_qh): Likewise.
(arc_expand_compare_and_swap): Likewise.
(arc_split_compare_and_swap): Likewise.
(arc_expand_atomic_op): Likewise.
* config/arc/arc.h (TARGET_CPU_CPP_BUILTINS): New C macro.
(ASM_SPEC): Enable mlock option when matomic is used.
* config/arc/arc.md (UNSPEC_ARC_MEMBAR): Define.
(VUNSPEC_ARC_CAS): Likewise.
(VUNSPEC_ARC_LL): Likewise.
(VUNSPEC_ARC_SC): Likewise.
(VUNSPEC_ARC_EX): Likewise.
* config/arc/arc.opt (matomic): New option.
* config/arc/constraints.md (ATO): New constraint.
* config/arc/predicates.md (mem_noofs_operand): New predicate.
* doc/invoke.texi: Document -matomic.
* config/arc/atomic.md: New file.

gcc/testsuite

2015-12-10  Claudiu Zissulescu  <claziss@synopsys.com>

* lib/target-supports.exp (check_effective_target_arc_atomic): New
function.
(check_effective_target_sync_int_long): Add checks for ARC atomic
feature.
(check_effective_target_sync_char_short): Likewise.

From-SVN: r231509

8 years agore PR tree-optimization/68817 (internal compiler error: Segmentation fault (program...
Richard Biener [Thu, 10 Dec 2015 13:23:22 +0000 (13:23 +0000)]
re PR tree-optimization/68817 (internal compiler error: Segmentation fault (program f951))

2015-12-10  Richard Biener  <rguenther@suse.de>

PR tree-optimization/68817
* tree-vect-slp.c (vect_attempt_slp_rearrange_stmts): Detect
gaps early.

* gfortran.dg/pr68817.f90: New testcase.

From-SVN: r231508

8 years agoRevert [testsuite][ARM target attributes] Fix effective_target tests
Christophe Lyon [Thu, 10 Dec 2015 13:11:27 +0000 (13:11 +0000)]
Revert [testsuite][ARM target attributes] Fix effective_target tests

From-SVN: r231507

8 years ago* alias.c (get_alias_set): Add cut-off for recursion.
Eric Botcazou [Thu, 10 Dec 2015 12:12:59 +0000 (12:12 +0000)]
* alias.c (get_alias_set): Add cut-off for recursion.

From-SVN: r231505

8 years agofix typo in date format
Christian Bruel [Thu, 10 Dec 2015 11:41:38 +0000 (12:41 +0100)]
fix typo in date format

From-SVN: r231504

8 years agotree-vect-stmts.c (vectorizable_assignment): Support useless boolean conversion.
Ilya Enkovich [Thu, 10 Dec 2015 11:23:50 +0000 (11:23 +0000)]
tree-vect-stmts.c (vectorizable_assignment): Support useless boolean conversion.

gcc/

* tree-vect-stmts.c (vectorizable_assignment): Support
useless boolean conversion.

From-SVN: r231503

8 years agoCorrect previous ChangeLog (targets is correct, not hosts)
Alan Lawrence [Thu, 10 Dec 2015 10:49:52 +0000 (10:49 +0000)]
Correct previous ChangeLog (targets is correct, not hosts)

From-SVN: r231501

8 years ago[install.texi] Add note against GNAT 4.8 on ARM targets
Alan Lawrence [Thu, 10 Dec 2015 10:48:08 +0000 (10:48 +0000)]
[install.texi] Add note against GNAT 4.8 on ARM targets

* doc/install/texi: Add note against GNAT 4.8 on ARM hosts.

From-SVN: r231500

8 years agore PR middle-end/68785 (valgrind reports issues with folding on x86_64)
Jakub Jelinek [Thu, 10 Dec 2015 10:14:38 +0000 (11:14 +0100)]
re PR middle-end/68785 (valgrind reports issues with folding on x86_64)

PR tree-optimization/68785
* gimple-fold.c (fold_ctor_reference): Pass return value from
native_encode_expr to native_interpret_expr.
* tree-ssa-sccvn.c (fully_constant_vn_reference_p): Likewise.

* gcc.dg/pr68785.c: New test.

From-SVN: r231499

8 years agore PR ipa/68331 ([meta-bug] fipa-pta issues)
Richard Biener [Thu, 10 Dec 2015 09:41:08 +0000 (09:41 +0000)]
re PR ipa/68331 ([meta-bug] fipa-pta issues)

2015-12-10  Richard Biener  <rguenther@suse.de>

PR ipa/68331
* tree-ssa-structalias.c (set_uids_in_ptset): Add fndecl
parameter and make vars_contains_nonlocal properly have
function-scope semantics in IPA mode.
(find_what_var_points_to): Add fndecl parameter.
(find_what_p_points_to): Likewise.
(pt_solution_includes_global): Remove IPA PTA early out.
(compute_points_to_sets): Adjust.
(ipa_pta_execute): Likewise.  Clear final_solutions after
each function.

* gcc.dg/torture/ipa-pta-3.c: New testcase.
* g++.dg/ipa/ipa-pta-1.C: Likewise.

From-SVN: r231498

8 years agoFix warnings from including fdl.texi into gnat-style.texi
Tom de Vries [Thu, 10 Dec 2015 09:19:04 +0000 (09:19 +0000)]
Fix warnings from including fdl.texi into gnat-style.texi

2015-12-10  Tom de Vries  <tom@codesourcery.com>

PR ada/65102
* doc/include/fdl.texi: Add nodefaultgnufreedocumentationlicensenode
ifdef to allow disabling default @node GNU Free Documentation License.

* gnat-style.texi: Set nodefaultgnufreedocumentationlicensenode and
define @node GNU Free Documentation License locally.

From-SVN: r231497

8 years agotree-ssa-structalias.c (create_function_info_for): Add missing constraint from nonloc...
Richard Biener [Thu, 10 Dec 2015 09:12:46 +0000 (09:12 +0000)]
tree-ssa-structalias.c (create_function_info_for): Add missing constraint from nonlocal for DECL_RESULT.

2015-12-10  Richard Biener  <rguenther@suse.de>

* tree-ssa-structalias.c (create_function_info_for): Add missing
constraint from nonlocal for DECL_RESULT.

From-SVN: r231496

8 years agotree-if-conv.c: Include params.h.
Richard Biener [Thu, 10 Dec 2015 09:10:40 +0000 (09:10 +0000)]
tree-if-conv.c: Include params.h.

2015-12-10  Richard Biener  <rguenther@suse.de>

* tree-if-conv.c: Include params.h.
(ifcvt_memrefs_wont_trap): Use PARAM_ALLOW_STORE_DATA_RACES
instead of flag_tree_loop_if_convert_stores to guard cases
we'd introduce store-data-races.

From-SVN: r231495

8 years agore PR ipa/68721 (wrong code at -Os and above on x86_64-linux-gnu)
Richard Biener [Thu, 10 Dec 2015 09:05:58 +0000 (09:05 +0000)]
re PR ipa/68721 (wrong code at -Os and above on x86_64-linux-gnu)

2015-12-10  Richard Biener  <rguenther@suse.de>

PR ipa/68721
* ipa-split.c (split_function): Record return value properly
when the split part doesn't set it.

* gcc.dg/torture/pr68721.c: New testcase.

From-SVN: r231494

8 years agore PR tree-optimization/68806 (internal compiler error: Segmentation fault)
Richard Biener [Thu, 10 Dec 2015 09:00:58 +0000 (09:00 +0000)]
re PR tree-optimization/68806 (internal compiler error: Segmentation fault)

2015-12-10  Richard Biener  <rguenther@suse.de>

PR tree-optimization/68806
* tree-vect-loop.c (vect_analyze_loop_2): Properly detect
reduction chains and ignore SLP reductions.

* gcc.dg/torture/pr68806.c: New testcase.

From-SVN: r231493

8 years agotree-if-conv.c (if_convertible_loop_p_1): Do not compute dependences.
Richard Biener [Thu, 10 Dec 2015 09:00:07 +0000 (09:00 +0000)]
tree-if-conv.c (if_convertible_loop_p_1): Do not compute dependences.

2015-12-10  Richard Biener  <rguenther@suse.de>

* tree-if-conv.c (if_convertible_loop_p_1): Do not compute
dependences.
(if_convertible_loop_p): Adjust.

From-SVN: r231492

8 years agoRemove invalid assert in find_func_aliases_for_builtin_call
Tom de Vries [Thu, 10 Dec 2015 08:56:14 +0000 (08:56 +0000)]
Remove invalid assert in find_func_aliases_for_builtin_call

2015-12-10  Tom de Vries  <tom@codesourcery.com>

* tree-ssa-structalias.c (find_func_aliases_for_builtin_call): Remove
invalid assert.

From-SVN: r231491

8 years agoFix memory leaks in tree-vect-data-refs.c
Martin Liska [Thu, 10 Dec 2015 08:40:35 +0000 (09:40 +0100)]
Fix memory leaks in tree-vect-data-refs.c

* tree-vect-data-refs.c: Free an overwritten dataref.

From-SVN: r231490

8 years agofptr.c (__canonicalize_funcptr_for_compare): Remove code to initialize call to __dl_f...
John David Anglin [Thu, 10 Dec 2015 01:32:10 +0000 (01:32 +0000)]
fptr.c (__canonicalize_funcptr_for_compare): Remove code to initialize call to __dl_fixup once.

* config/pa/fptr.c (__canonicalize_funcptr_for_compare): Remove code
to initialize call to __dl_fixup once.

From-SVN: r231486

8 years agoPR 68115/libfortran
John David Anglin [Thu, 10 Dec 2015 01:08:13 +0000 (01:08 +0000)]
PR 68115/libfortran

PR 68115/libfortran
* configure.ac: Set libbacktrace_cv_sys_sync to no on hppa*-*-hpux*.
* configure: Regenerate.
* elf.c (backtrace_initialize): Cast __sync_bool_compare_and_swap call
to void.

From-SVN: r231485

8 years agore PR target/68729 (../Xbae/Methods.c:1772:1: ICE: in extract_insn, at recog.c:2343)
John David Anglin [Thu, 10 Dec 2015 00:41:17 +0000 (00:41 +0000)]
re PR target/68729 (../Xbae/Methods.c:1772:1: ICE: in extract_insn, at recog.c:2343)

PR target/68729
* config/pa/pa.c (pa_emit_move_sequence): Don't check that mode is
consistent with modes of the input and output operands when doing
reloads to and from floating point registers.  Do reload for all
address forms.

From-SVN: r231482

8 years agoDaily bump.
GCC Administrator [Thu, 10 Dec 2015 00:16:14 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r231481

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Wed, 9 Dec 2015 23:28:01 +0000 (00:28 +0100)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
PR middle-end/25140
* tree-ssa-alias.c (ptr_deref_may_alias_decl_p): Use compare_base_decls
(nonoverlapping_component_refs_of_decl_p): Update sanity check.
(decl_refs_may_alias_p): Use compare_base_decls.
* alias.c: Include cgraph.h
(rtx_equal_for_memref_p): Use rtx_equal_for_memref_p.
(compare_base_decls): New function.
(base_alias_check): Likewise.
(memrefs_conflict_p): Likewise.
(nonoverlapping_memrefs_p): Likewise.
* alias.h (compare_base_decls): Declare.

* gcc.c-torture/execute/alias-2.c: New testcase.

From-SVN: r231478

8 years agore PR lto/68811 (ICE: in get, at cgraph.h:1218)
Jan Hubicka [Wed, 9 Dec 2015 22:37:02 +0000 (23:37 +0100)]
re PR lto/68811 (ICE: in get, at cgraph.h:1218)

PR lto/68811
* lto.c (lto_fixup_prevailing_decls): Do not check TREE_CHAIN of
DECL.
(LTO_NO_PREVAIL): Use gcc_checking_assert.

From-SVN: r231477

8 years agotrans.c (gfc_allocate_using_lib,gfc_deallocate_with_status): Introducing __asm__...
Tobias Burnus [Wed, 9 Dec 2015 22:15:47 +0000 (23:15 +0100)]
trans.c (gfc_allocate_using_lib,gfc_deallocate_with_status): Introducing __asm__ __volatile__ ("":::"memory") after image control statements.

2015-12-09  Tobias Burnus  <burnus@net-b.de>
            Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>

        * trans.c (gfc_allocate_using_lib,gfc_deallocate_with_status):
        Introducing __asm__ __volatile__ ("":::"memory")
        after image control statements.
        * trans-stmt.c  (gfc_trans_sync, gfc_trans_event_post_wait,
        gfc_trans_lock_unlock, gfc_trans_critical): Ditto.
        * trans-intrinsic.c (gfc_conv_intrinsic_caf_get,
        conv_caf_send): Introducing __asm__ __volatile__ ("":::"memory")
        after send, before get and around sendget.

2015-12-09  Tobias Burnus  <burnus@net-b.de>
            Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>

        * gfortran.dg/coarray_40.f90: New.

Co-Authored-By: Alessandro Fanfarillo <fanfarillo.gcc@gmail.com>
From-SVN: r231476

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Wed, 9 Dec 2015 19:40:10 +0000 (20:40 +0100)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
* ipa-visibility.c (function_and_variable_visibility): Fix vtable
rewritting guard.

From-SVN: r231474

8 years agore PR lto/68811 (ICE: in get, at cgraph.h:1218)
Jan Hubicka [Wed, 9 Dec 2015 19:35:18 +0000 (20:35 +0100)]
re PR lto/68811 (ICE: in get, at cgraph.h:1218)

PR lto/68811
* g++.dg/lto/pr68811_0.C: New testcase.
* g++.dg/lto/pr68811_1.C: New testcase.

* lto-symtab.c (lto_symtab_merge_decls_2): Decl can never be prevailed
by itself.

From-SVN: r231473

8 years agore PR fortran/68815 (Error/warning diagnostic: '%s' should be converted to %qs-like...
Tobias Burnus [Wed, 9 Dec 2015 19:29:46 +0000 (20:29 +0100)]
re PR fortran/68815 (Error/warning diagnostic: '%s' should be converted to %qs-like or %<%s%>-like string strings)

2015-12-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/68815
        * decl.c (gfc_verify_c_interop_param, variable_decl): Use
        %< ... %> for quoting in diagnostics.
        * io.c (check_format): Ditto.
        * resolve.c (resolve_operator): Ditto.
        * symbol.c (check_conflict): Ditto.
        * trans-common.c (translate_common): Ditto.

From-SVN: r231472

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Wed, 9 Dec 2015 19:29:38 +0000 (19:29 +0000)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
PR middle-end/25140
* ipa-reference.c (ipa_reference_get_not_read_global,
ipa_reference_get_not_read_global): Fix WRT aliases.
(is_improper): Break out from ...
(is_proper_for_analysis): ... here; fix WRT aliases.
(analyze_function, generate_summary,
ipa_reference_write_optimization_summary,
ipa_reference_read_optimization_summary): Use ipa_reference_var_uid.
* ipa-refrence.h (ipa_reference_var_uid): New inline.
* tree-ssa-alias.c: Revert my accidental previous commit.
(ref_maybe_used_by_call_p_1,
call_may_clobber_ref_p_1): Use ipa_reference_var_uid.

From-SVN: r231471

8 years agofreebsd64.h: Remove the redefinition of WCHAR_TYPE.
Andreas Tobler [Wed, 9 Dec 2015 19:12:24 +0000 (20:12 +0100)]
freebsd64.h: Remove the redefinition of WCHAR_TYPE.

2015-12-09  Andreas Tobler  <andreast@gcc.gnu.org>

    * config/rs6000/freebsd64.h: Remove the redefinition of WCHAR_TYPE.

From-SVN: r231470

8 years agospecify more isl codegen options
Aditya Kumar [Wed, 9 Dec 2015 18:40:15 +0000 (18:40 +0000)]
specify more isl codegen options

* graphite-optimize-isl.c: Include isl/ast_build.h
(optimize_isl): Set several isl_options_set_* options.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r231467

8 years agoadd array access function in the right order
Aditya Kumar [Wed, 9 Dec 2015 18:35:47 +0000 (18:35 +0000)]
add array access function in the right order

we used to add the access functions in the wrong order, Fortran style, leading to unprofitable interchanges.

* graphite-sese-to-poly.c (pdr_add_memory_accesses): Iterate in
the same order as adding data reference access functions.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
From-SVN: r231465

8 years agodump param name when timing out
Aditya Kumar [Wed, 9 Dec 2015 18:33:12 +0000 (18:33 +0000)]
dump param name when timing out

     * graphite-optimize-isl.c (optimize_isl): Improve dump message.

From-SVN: r231464

8 years agore PR c++/60218 ([c++11] ICE using __bases for broken class hierarchy)
Paolo Carlini [Wed, 9 Dec 2015 16:59:26 +0000 (16:59 +0000)]
re PR c++/60218 ([c++11] ICE using __bases for broken class hierarchy)

/cp
2015-12-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60218
* semantics.c (calculate_bases_helper): Don't call dfs_walk_all
when TYPE_BINFO (type) is null.
(calculate_bases): Handle gracefully a null vector->length ().

/testsuite
2015-12-09  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60218
* g++.dg/ext/bases2.C: New.

From-SVN: r231460

8 years agosse4_1-roundps-1.c: Remove ASM_SUFFIX define.
Uros Bizjak [Wed, 9 Dec 2015 16:09:02 +0000 (17:09 +0100)]
sse4_1-roundps-1.c: Remove ASM_SUFFIX define.

* gcc.target/i386/sse4_1-roundps-1.c: Remove ASM_SUFFIX define.
* gcc.target/i386/sse4_1-roundps-2.c: Ditto.
* gcc.target/i386/sse4_1-roundps-3.c: Ditto.
* gcc.target/i386/sse4_1-roundsd-1.c: Ditto.
* gcc.target/i386/sse4_1-roundsd-2.c: Ditto.
* gcc.target/i386/sse4_1-roundsd-3.c: Ditto.
* gcc.target/i386/sse4_1-roundss-1.c: Ditto.
* gcc.target/i386/sse4_1-roundss-2.c: Ditto.
* gcc.target/i386/sse4_1-roundss-3.c: Ditto.

From-SVN: r231459

8 years ago980716-1.c: Avoid undefined behavior due to passing terminating NULL as int rather...
Alexander Monakov [Wed, 9 Dec 2015 15:42:41 +0000 (18:42 +0300)]
980716-1.c: Avoid undefined behavior due to passing terminating NULL as int rather than pointer.

* gcc.c-torture/execute/980716-1.c: Avoid undefined behavior due to
passing terminating NULL as int rather than pointer.

From-SVN: r231458

8 years agore PR tree-optimization/66949 (ICE at -O2 and -O3 on x86_64-linux-gnu in tree_ssa_phi...
Marek Polacek [Wed, 9 Dec 2015 14:58:22 +0000 (14:58 +0000)]
re PR tree-optimization/66949 (ICE at -O2 and -O3 on x86_64-linux-gnu in tree_ssa_phiopt_worker, at tree-ssa-phiopt.c:335)

PR tree-optimization/66949
* tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Don't call
single_non_singleton_phi_for_edges to get the PHI from
factor_out_conditional_conversion.  Use NULL_TREE instead of NULL.
(factor_out_conditional_conversion): Adjust declaration.  Make it
return the newly-created PHI.

* gcc.dg/torture/pr66949-1.c: New test.
* gcc.dg/torture/pr66949-2.c: New test.

From-SVN: r231457

8 years ago[Patch AArch64] Reinstate CANNOT_CHANGE_MODE_CLASS to fix pr67609
James Greenhalgh [Wed, 9 Dec 2015 13:47:19 +0000 (13:47 +0000)]
[Patch AArch64] Reinstate CANNOT_CHANGE_MODE_CLASS to fix pr67609

gcc/

PR rtl-optimization/67609
* config/aarch64/aarch64-protos.h
(aarch64_cannot_change_mode_class): Bring back.
* config/aarch64/aarch64.c
(aarch64_cannot_change_mode_class): Likewise.
* config/aarch64/aarch64.h (CANNOT_CHANGE_MODE_CLASS): Likewise.
* config/aarch64/aarch64.md (aarch64_movdi_<mode>low): Use
zero_extract rather than truncate.
(aarch64_movdi_<mode>high): Likewise.

gcc/testsuite/

PR rtl-optimization/67609
* gcc.dg/torture/pr67609.c: New.

From-SVN: r231455

8 years agore PR tree-optimization/68786 (Aligned masked store is generated for unaligned pointer)
Jakub Jelinek [Wed, 9 Dec 2015 13:42:06 +0000 (14:42 +0100)]
re PR tree-optimization/68786 (Aligned masked store is generated for unaligned pointer)

PR tree-optimization/68786
* tree-if-conv.c: Include builtins.h.
(predicate_mem_writes): Put result of get_object_alignment (ref)
into second argument's value.
* tree-vect-stmts.c (vectorizable_mask_load_store): Put minimum
pointer alignment into second argument's value.
* tree-data-ref.c (get_references_in_stmt): Use value of second
argument for build_aligned_type, and only the type to build
a zero second argument for MEM_REF.
* internal-fn.c (expand_mask_load_optab_fn,
expand_mask_store_optab_fn): Likewise.

From-SVN: r231454

8 years agore PR tree-optimization/68583 (Missed if-conversion)
Richard Biener [Wed, 9 Dec 2015 13:30:41 +0000 (13:30 +0000)]
re PR tree-optimization/68583 (Missed if-conversion)

2015-12-09  Richard Biener  <rguenther@suse.de>

PR tree-optimization/68583
* tree-if-conv.c (if_convertible_phi_p): Drop
flag_tree_loop_if_convert_stores check in favor of the
existing any_mask_load_store check.
(insert_gimplified_predicates): Likewise.
(combine_blocks): Likewise.
(tree_if_conversion): Likewise.
(ifcvt_memrefs_wont_trap): Properly check
flag_tree_loop_if_convert_stores in all places that can end
up introducing store-data-races.
(if_convertible_gimple_assign_stmt_p): Remove restriction
on flag_tree_loop_if_convert_stores for stores we can if-convert
without introducing store-data-races.  Force versioning for
all if-converted stores.

* gcc.dg/tree-ssa/ifc-pr68583.c: New testcase.
* gcc.dg/vect/vect-72.c: Adjust.
* gcc.dg/vect/vect-cselim-2.c: Likewise.
* gcc.dg/vect/vect-strided-store-a-u8-i2.c: Likewise.

From-SVN: r231453

8 years agore PR tree-optimization/68417 (Missed vectorization opportunity when setting struct...
Richard Biener [Wed, 9 Dec 2015 12:29:19 +0000 (12:29 +0000)]
re PR tree-optimization/68417 (Missed vectorization opportunity when setting struct field)

2015-12-09  Richard Biener  <rguenther@suse.de>

PR tree-optimization/68417
* gcc.dg/vect/pr68417.c: New testcase.

From-SVN: r231452

8 years agore PR ada/66526 (apparent use of uninitialized variables in g-expect.adb)
Eric Botcazou [Wed, 9 Dec 2015 11:07:08 +0000 (11:07 +0000)]
re PR ada/66526 (apparent use of uninitialized variables in g-expect.adb)

PR ada/66526
* g-expect.adb (Set_Up_Child_Communications): Add matching condition
for uses of Input, Ouput and Error variables after the Execvp call.

From-SVN: r231450

8 years agoFix GOMP/GOACC_parallel handling in find_func_clobbers
Tom de Vries [Wed, 9 Dec 2015 10:13:35 +0000 (10:13 +0000)]
Fix GOMP/GOACC_parallel handling in find_func_clobbers

2015-12-09  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/68716
* tree-ssa-structalias.c (find_func_clobbers): Fix handling of
BUILT_IN_GOMP_PARALLEL and BUILT_IN_GOACC_PARALLEL.

* testsuite/libgomp.c/omp-nested-2.c: New test.

From-SVN: r231449

8 years agoFix newly introduced memory leak in
Martin Liska [Wed, 9 Dec 2015 09:38:53 +0000 (10:38 +0100)]
Fix newly introduced memory leak in

* hash-traits.h (struct typed_delete_remove): New function.
(typed_delete_remove ::remove): Likewise.
* tree-ssa-loop-ivopts.c (struct iv_common_cand): Replace
auto_vec with vec.
(record_common_cand): Replace XNEW with operator new.

From-SVN: r231448

8 years agoFix memory leak in tree-if-conv.c
Martin Liska [Wed, 9 Dec 2015 09:38:00 +0000 (10:38 +0100)]
Fix memory leak in tree-if-conv.c

* tree-if-conv.c (ifcvt_local_dce): Replace vec with auto_vec.

From-SVN: r231447

8 years agore PR ipa/68790 (gcc.c-torture/execute/20050713-1.c FAILs with -O0 -fipa-icf)
Martin Liska [Wed, 9 Dec 2015 09:34:59 +0000 (10:34 +0100)]
re PR ipa/68790 (gcc.c-torture/execute/20050713-1.c FAILs with -O0 -fipa-icf)

Fix PR ipa/68790

PR ipa/68790
* ipa-icf.c (sem_function::param_used_p): Return true
if ipa_node_params_sum equals to NULL.
* gcc.dg/ipa/pr68790.c: New test.

From-SVN: r231446

8 years agoMinor fixes
Eric Botcazou [Wed, 9 Dec 2015 08:45:41 +0000 (08:45 +0000)]
Minor fixes

From-SVN: r231445

8 years agore PR tree-optimization/68583 (Missed if-conversion)
Richard Biener [Wed, 9 Dec 2015 08:32:49 +0000 (08:32 +0000)]
re PR tree-optimization/68583 (Missed if-conversion)

2015-12-09  Richard Biener  <rguenther@suse.de>

PR tree-optimization/68583
* tree-if-conv.c (ifc_dr): Make flags bool, add w_unconditionally
flag and rename predicates to w_predicate, rw_predicate and
base_w_predicate.
(DR_WRITTEN_AT_LEAST_ONCE): Rename to ...
(DR_BASE_W_UNCONDITIONALLY): ... this.
(DR_W_UNCONDITIONALLY): Add.
(hash_memrefs_baserefs_and_store_DRs_read): Adjust.  Compute
unconditionally written separately from read or written.
(ifcvt_memrefs_wont_trap): Properly treat reads.
(ifcvt_could_trap_p): Inline ...
(if_convertible_gimple_assign_stmt_p): ... here.  Refactor
to avoid code duplication.
(if_convertible_loop_p_1): Adjust and properly initialize
predicates.

From-SVN: r231444

8 years agotree-vect-stmts.c (vectorizable_load): Set new vinfo only if it was not yet set.
Richard Biener [Wed, 9 Dec 2015 08:23:37 +0000 (08:23 +0000)]
tree-vect-stmts.c (vectorizable_load): Set new vinfo only if it was not yet set.

2015-12-09  Richard Biener  <rguenther@suse.de>

* tree-vect-stmts.c (vectorizable_load): Set new vinfo only
if it was not yet set.
* tree-vectorizer.h (set_vinfo_for_stmt): Assert we don't
overwrite an existing entry.

From-SVN: r231443

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Wed, 9 Dec 2015 07:34:16 +0000 (08:34 +0100)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
PR middle-end/25140
* ipa-reference.c (is_improper): Break out from ...
(is_proper_for_analysis): ... here; fix WRT aliases.
(analyze_function, generate_summary,
ipa_reference_write_optimization_summary,
ipa_reference_read_optimization_summary): Use ipa_reference_var_uid.
* ipa-refrence.h (ipa_reference_var_uid): New inline.
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1,
call_may_clobber_ref_p_1): Use ipa_reference_var_uid.

* gcc.c-torture/execute/alias-3.c: New testcase.

From-SVN: r231442

8 years agoc-omp.c (c_finish_oacc_wait): Remove add_stmt() call.
Chung-Lin Tang [Wed, 9 Dec 2015 07:18:51 +0000 (07:18 +0000)]
c-omp.c (c_finish_oacc_wait): Remove add_stmt() call.

2015-12-09  Chung-Lin Tang  <cltang@codesourcery.com>

* c-family/c-omp.c (c_finish_oacc_wait): Remove add_stmt() call.
* c/c-parser.c (c_parser_oacc_wait): Add add_stmt() call.
* cp/parser.c (cp_parser_oacc_wait): Add finish_expr_stmt() call.

From-SVN: r231441

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Wed, 9 Dec 2015 05:07:18 +0000 (06:07 +0100)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
* symtab.c (symtab_node::equal_address_to): New parameter
MEMORY_ACCESSED.
* cgraph.h (symtab_node::equal_address_to): Update prototype.

From-SVN: r231440

8 years agorx.opt (-mjsr): Add.
DJ Delorie [Wed, 9 Dec 2015 02:59:05 +0000 (21:59 -0500)]
rx.opt (-mjsr): Add.

* config/rx/rx.opt (-mjsr): Add.
* config/rx/predicates.md (rx_call_operand): Avoid overflowing
calls when -mjsr.
* config/rx/rx.c (rx_function_ok_for_sibcall): Likewise for
overflowing jumps.
* doc/invoke.texi (-mjsr): Document it.

From-SVN: r231439

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Wed, 9 Dec 2015 02:15:05 +0000 (03:15 +0100)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
* lto-streamer.h (lto_symtab_merge_decls, lto_symtab_merge_symbols,
lto_symtab_prevailing_decl): MOve to lto-symtab.h.
* lto-streamer-out.c (DFS::DFS_write_tree_body): Check that
DECL_ABSTRACT_ORIGIN is not error_mark_node.

* lto-symtab.c: Include lto-symtab.h.
(lto_cgraph_replace_node): Do not merge profiles here.
(lto_symtab_merge_p): New function.
(lto_symtab_merge_decls_2): Honor lto_symtab_merge_p.
(lto_symtab_merge_symbols_1): Turn unmerged decls into transparent
aliases.
(lto_symtab_merge_symbols): Do not clear node->aux; we no longer use it.
(lto_symtab_prevailing_decl): Move to lto-symtab.h; rewrite.
* lto.c: Include lto-symtab.h
* lto-symtab.h: New.

From-SVN: r231438

8 years agoFix PR c++/68711 - [6 regression] SEGV on an invalid offsetof of a member
Martin Sebor [Wed, 9 Dec 2015 01:35:59 +0000 (01:35 +0000)]
Fix PR c++/68711 - [6 regression] SEGV on an invalid offsetof of a member
of a virtual base.

gcc/testsuite/ChangeLog:
* g++.dg/other/offsetof8.C: New test.

gcc/cp/ChangeLog:
* typeck.c (build_class_member_access_expr): Strip NOPs before
        testing a potentially null operand for equality to zero.

From-SVN: r231437

8 years agoFix misleading indentation in tree-nested.c
David Malcolm [Wed, 9 Dec 2015 00:46:31 +0000 (00:46 +0000)]
Fix misleading indentation in tree-nested.c

gcc/ChangeLog:
* tree-nested.c (convert_tramp_reference_stmt): Fix indentation.

From-SVN: r231436

8 years agoFix misleading indentation in tree-ssa-loop-unswitch.c
David Malcolm [Wed, 9 Dec 2015 00:44:14 +0000 (00:44 +0000)]
Fix misleading indentation in tree-ssa-loop-unswitch.c

gcc/ChangeLog:
* tree-ssa-loop-unswitch.c (tree_unswitch_outer_loop): Fix
indentation.

From-SVN: r231435

8 years agoDaily bump.
GCC Administrator [Wed, 9 Dec 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r231434

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Tue, 8 Dec 2015 22:03:36 +0000 (23:03 +0100)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
* lto-cgraph.c (compute_ltrans_boundary): Add transparent alias targets
into the boundary.

From-SVN: r231430

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Tue, 8 Dec 2015 22:02:23 +0000 (23:02 +0100)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
* varpool.c (varpool_node::get_availability): Recurse only on
weakrefs with definition in the target.
(symbol_table::remove_unreferenced_decls): Keep aliases in the boundary.

From-SVN: r231429

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Tue, 8 Dec 2015 22:01:41 +0000 (23:01 +0100)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
* ipa-visibility.c (can_replace_by_local_alias): Look through transparent
aliaes; refuse weakrefs.
(update_visibility_by_resolution_info): Skip transparent aliases in the
analysis part

From-SVN: r231428

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Tue, 8 Dec 2015 22:00:55 +0000 (23:00 +0100)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
* symtab.c (symtab_node::verify_base): Fix thinko in a conditional.
(symtab_node::noninterposable_alias): Do not accept transparent
aliases.

From-SVN: r231427

8 years agonvptx.c (decl_chunk_size, [...]): Replace with ...
Nathan Sidwell [Tue, 8 Dec 2015 21:06:42 +0000 (21:06 +0000)]
nvptx.c (decl_chunk_size, [...]): Replace with ...

gcc/
* config/nvptx/nvptx.c (decl_chunk_size, decl_chunk_mode,
decl_offset, init_part, object_size, object_finished): Replace
with ...
(struct init_frag): ... this new struct variable.
(begin_decl_field, output_decl_chunk): Replace with ...
(output_init_frag): ... this new function.
(nvptx_assemble_value): Reimplement.
(nvptx_assemble_integer, nvptx_output_skip): Adjust.
(nvptx_assemble_decl_begin, nvptx_assemble_decl_end): Adjust.
(nvptx_output_aligned_decl): Call nvptx_assemble_decl_end.

gcc/testsuite/
* gcc.target/nvptx/trailing-init.c: New.

From-SVN: r231426

8 years agore PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)
Jan Hubicka [Tue, 8 Dec 2015 20:46:42 +0000 (21:46 +0100)]
re PR lto/61886 (LTO breaks fread with _FORTIFY_SOURCE=2)

PR ipa/61886
* lto-partition.c (add_symbol_to_partition_1): Transparent aliases
are not part of the definition.
(contained_in_symbol): Likewise.
(promote_symbol): When promoting a symbol also promote all transparent
aliases.
(rename_statics): Weakref needs unique name, too.

From-SVN: r231425

8 years agore PR middle-end/68291 (ICE in emit_move_insn, at expr.c:3540)
Eric Botcazou [Tue, 8 Dec 2015 18:47:54 +0000 (18:47 +0000)]
re PR middle-end/68291 (ICE in emit_move_insn, at expr.c:3540)

PR middle-end/68291
PR middle-end/68292
* cfgexpand.c (set_rtl): Always accept mode mismatch for SSA names
with BLKmode promoted mode based on RESULT_DECLs.

From-SVN: r231422

8 years ago920723-1.c: Remove PTX skip.
Nathan Sidwell [Tue, 8 Dec 2015 18:43:10 +0000 (18:43 +0000)]
920723-1.c: Remove PTX skip.

* gcc.c-torture/compile/920723-1.c: Remove PTX skip.
* gcc.c-torture/compile/pr33855.c: Likewise.
* gcc.c-torture/execute/981019-1.c: Remove PTX -O2 skip.

From-SVN: r231421

8 years ago* testsuite/ChangeLog: Fix last entry.
Uros Bizjak [Tue, 8 Dec 2015 18:42:15 +0000 (19:42 +0100)]
* testsuite/ChangeLog: Fix last entry.

From-SVN: r231420

8 years agore PR target/68701 ("gcc -m32 -finstrument-functions -ffixed-ebp" produces internal...
Uros Bizjak [Tue, 8 Dec 2015 18:41:21 +0000 (19:41 +0100)]
re PR target/68701 ("gcc -m32 -finstrument-functions -ffixed-ebp" produces internal compiler error)

PR target/68701
* config/i386/i386.c (ix86_option_override_internal): Enable
-maccumulate-outgoing-args when %ebp is fixed due to stack
realignment requirements.

testsuite/ChangeLog:

PR target/68701
* testsuite/gcc.target/i386/pr68701-1.c: New test.
* testsuite/gcc.target/i386/pr68701-2.c: Ditto.

From-SVN: r231419

8 years agosse4_1-round.h (do_round): Fix inline asm statements.
Uros Bizjak [Tue, 8 Dec 2015 18:21:15 +0000 (19:21 +0100)]
sse4_1-round.h (do_round): Fix inline asm statements.

* gcc.target/i386/sse4_1-round.h (do_round): Fix inline asm statements.
* gcc.target/i386/sse4_1-roundsd-4.c (do_round): Ditto.
* gcc.target/i386/sse4_1-roundss-4.c (do_round): Ditto.

From-SVN: r231418

8 years ago* gcc.dg/sso-9.c (foo): Robustify trick.
Eric Botcazou [Tue, 8 Dec 2015 17:08:18 +0000 (17:08 +0000)]
* gcc.dg/sso-9.c (foo): Robustify trick.

From-SVN: r231416

8 years agoC: fix uninitialized ranges for __alignof__
David Malcolm [Tue, 8 Dec 2015 17:03:26 +0000 (17:03 +0000)]
C: fix uninitialized ranges for __alignof__

gcc/c/ChangeLog:
* c-parser.c (c_parser_alignof_expression): Capture location of
closing parenthesis (if any), or of end of unary expression, and
use it to build a src_range for the expression.

gcc/testsuite/ChangeLog:
* gcc.dg/plugin/diagnostic-test-expressions-1.c (test_alignof):
New test function.

From-SVN: r231415

8 years agoPR c/68757: fix uninitialized src_range for various builtins
David Malcolm [Tue, 8 Dec 2015 16:57:27 +0000 (16:57 +0000)]
PR c/68757: fix uninitialized src_range for various builtins

gcc/c/ChangeLog:
PR c/68757
* c-parser.c (c_parser_get_builtin_args): Add
"out_close_paren_loc" param, and write back to it.
(c_parser_postfix_expression): Capture the closing
parenthesis location for RID_CHOOSE_EXPR,
RID_BUILTIN_CALL_WITH_STATIC_CHAIN, RID_BUILTIN_COMPLEX,
RID_BUILTIN_SHUFFLE and use it to set the source range
for such expressions; within RID_BUILTIN_COMPLEX set
the underlying location.

gcc/testsuite/ChangeLog:
PR c/68757
* gcc.dg/plugin/diagnostic-test-expressions-1.c
(test_builtin_choose_expr): New test function.
(test_builtin_call_with_static_chain): Likewise.
(test_builtin_complex): Likewise.
(test_builtin_shuffle): Likewise.

From-SVN: r231414

8 years ago[AArch64] Skip big-endian as well for gcc.target/aarch64/got_mem_hoist_1.c
Jiong Wang [Tue, 8 Dec 2015 15:37:07 +0000 (15:37 +0000)]
[AArch64] Skip big-endian as well for gcc.target/aarch64/got_mem_hoist_1.c

2015-12-08  Jiong Wang  <jiong.wang@arm.com>

gcc/testsuite/
  * gcc.target/aarch64/got_mem_hoist_1.c (dg-skip-if): Match big-endian
  as well.

From-SVN: r231413

8 years agore PR c++/68116 (ice in add_expr, at tree.c:7840)
Marek Polacek [Tue, 8 Dec 2015 14:43:32 +0000 (14:43 +0000)]
re PR c++/68116 (ice in add_expr, at tree.c:7840)

PR c++/68116
* g++.dg/cpp0x/pr68116.C: New test.

From-SVN: r231412

8 years agoClear restrict in install_var_field
Tom de Vries [Tue, 8 Dec 2015 14:17:42 +0000 (14:17 +0000)]
Clear restrict in install_var_field

2015-12-08  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/68640
* omp-low.c (install_var_field): Clear the restrict qualifier on the var
type.

From-SVN: r231411

8 years agoAVX-512. Fix assembler section for broadcast pattern.
Kirill Yukhin [Tue, 8 Dec 2015 14:09:45 +0000 (14:09 +0000)]
AVX-512. Fix assembler section for broadcast pattern.

gcc/
* config/i386/sse.md (define_insn "<avx512>_vec_dup<mode>_1"): Fix
assembler to make source always 128bit.

From-SVN: r231410

8 years agopr68627.f: Use '!ia32' instead of 'lp64' in target specifier.
Kirill Yukhin [Tue, 8 Dec 2015 13:54:30 +0000 (13:54 +0000)]
pr68627.f: Use '!ia32' instead of 'lp64' in target specifier.

gcc/testsuite/
* gfortran.dg/pr68627.f: Use '!ia32' instead of 'lp64' in target
specifier.

From-SVN: r231408

8 years agoAdd file missing from earlier commit.
Bernd Schmidt [Tue, 8 Dec 2015 13:35:46 +0000 (13:35 +0000)]
Add file missing from earlier commit.

From-SVN: r231407

8 years agore PR c/48088 (-Werror=frame-larger-than=100 does not work as expected)
Jakub Jelinek [Tue, 8 Dec 2015 13:26:35 +0000 (14:26 +0100)]
re PR c/48088 (-Werror=frame-larger-than=100 does not work as expected)

PR c/48088
PR c/68657
* common.opt (Wframe-larger-than=): Add Warning.
* opts.h (control_warning_option): Add ARG argument.
* opts-common.c (cmdline_handle_error): New function.
(read_cmdline_option): Use it.
(control_warning_option): Likewise.  Add ARG argument.
If non-NULL, decode it if needed and pass through
to handle_generated_option.  Handle CLVC_ENUM like
CLVC_BOOLEAN.
* opts.c (common_handle_option): Adjust control_warning_option
caller.
(enable_warning_as_error): Likewise.
c-family/
* c.opt (Wfloat-conversion, Wsign-conversion): Add Warning.
* c-pragma.c (handle_pragma_diagnostic): Adjust
control_warning_option caller.
ada/
* gcc-interface/trans.c (Pragma_to_gnu): Adjust
control_warning_option caller.
testsuite/
* c-c++-common/pr68657-1.c: New test.
* c-c++-common/pr68657-2.c: New test.
* c-c++-common/pr68657-3.c: New test.
* gcc.dg/cpp/warn-normalized-3.c: Use
-Werror=normalized=nfc instead of -Werror=normalized=
in dg-options.

From-SVN: r231406

8 years agoAdd file missing from previous commit:
David Sherwood [Tue, 8 Dec 2015 11:26:33 +0000 (11:26 +0000)]
Add file missing from previous commit:

2015-12-08  David Sherwood  <david.sherwood@arm.com>

Add file missing from previous commit:
gcc/testsuite:
* gcc.target/aarch64/fmaxmin.c

From-SVN: r231404

8 years ago[testsuite][ARM target attributes] Fix effective_target tests.
Christophe Lyon [Tue, 8 Dec 2015 11:17:18 +0000 (11:17 +0000)]
[testsuite][ARM target attributes] Fix effective_target tests.

2015-12-08  Christophe Lyon  <christophe.lyon@linaro.org>

* lib/target-supports.exp
(check_effective_target_arm_vfp_ok_nocache): New.
(check_effective_target_arm_vfp_ok): Call the new
check_effective_target_arm_vfp_ok_nocache function.
(check_effective_target_arm_fp_ok_nocache): New.
(check_effective_target_arm_fp_ok): New.
(add_options_for_arm_fp): New.
(check_effective_target_arm_crypto_ok_nocache): Require
target_arm_v8_neon_ok instead of arm32.
(check_effective_target_arm_crypto_pragma_ok_nocache): New.
(check_effective_target_arm_crypto_pragma_ok): New.
(add_options_for_arm_vfp): New.
* gcc.target/arm/attr-crypto.c: Use arm_crypto_pragma_ok effective
target. Do not force -mfloat-abi=softfp, use arm_vfp effective
target instead.
* gcc.target/arm/attr-neon-builtin-fail.c: Do not force
-mfloat-abi=softfp, use arm_fp effective target instead.
* gcc.target/arm/attr-neon-fp16.c: Likewise. Remove arm_neon_ok
dependency.
* gcc.target/arm/attr-neon2.c: Do not force -mfloat-abi=softfp,
use arm_vfp effective target instead.
* gcc.target/arm/attr-neon3.c: Likewise.

From-SVN: r231403

8 years agopr68627.f: Limit target to x86.
Kirill Yukhin [Tue, 8 Dec 2015 10:41:01 +0000 (10:41 +0000)]
pr68627.f: Limit target to x86.

gcc/testsuite:
* gfortran.dg/pr68627.f: Limit target to x86.

From-SVN: r231402

8 years agobuiltin-return-1.c: Add an inline assembly read to make sure dummy is not optimized...
Andre Vieira [Tue, 8 Dec 2015 10:01:45 +0000 (10:01 +0000)]
builtin-return-1.c: Add an inline assembly read to make sure dummy is not optimized away by LTO.

2015-12-08  Andre Vieira  <andre.simoesdiasvieira@arm.com>
            Joern Rennecke  <joern.rennecke@embecosm.com>

    gcc/testsuite/
    * gcc.dg/torture/stackalign/builtin-return-1.c: Add an
    inline assembly read to make sure dummy is not optimized
    away by LTO.

Co-Authored-By: Joern Rennecke <joern.rennecke@embecosm.com>
From-SVN: r231401

8 years ago[AArch64] Rework ARMv8.1 command line options.
Matthew Wahab [Tue, 8 Dec 2015 09:23:51 +0000 (09:23 +0000)]
[AArch64] Rework ARMv8.1 command line options.

* config/aarch64/aarch64-options-extensions.def: Remove
AARCH64_FL_RDMA from "fp" and "simd".  Remove "pan", "lor",
"rdma".
* config/aarch64/aarch64.h (AARCH64_FL_PAN): Remove.
(AARCH64_FL_LOR): Remove.
(AARCH64_FL_RDMA): Remove.
(AARCH64_FL_V8_1): New.
(AARCH64_FL_FOR_AARCH8_1): Replace AARCH64_FL_PAN, AARCH64_FL_LOR
and AARCH64_FL_RDMA with AARCH64_FL_V8_1.
(AARCH64_ISA_RDMA): Replace AARCH64_FL_RDMA with AARCH64_FL_V8_1.
* doc/invoke.texi (AArch64 -march): Rewrite initial paragraph and
section on -march=native.  Group descriptions of permitted
architecture names together.  Expand description of
-march=armv8.1-a.
(AArch64 -mtune): Slightly rework section on -march=native.
(AArch64 -mcpu): Slightly rework section on -march=native.
(AArch64 Feature Modifiers): Remove "pan", "lor" and "rdma".
State that -march=armv8.1-a enables "crc" and "lse".

From-SVN: r231400

8 years ago* doc/invoke.texi (SPARC options): Fix typo.
Eric Botcazou [Tue, 8 Dec 2015 09:01:58 +0000 (09:01 +0000)]
* doc/invoke.texi (SPARC options): Fix typo.

From-SVN: r231399

8 years agoia64.c (ia64_emit_probe_stack_range): Adjust.
Eric Botcazou [Tue, 8 Dec 2015 08:55:51 +0000 (08:55 +0000)]
ia64.c (ia64_emit_probe_stack_range): Adjust.

* config/ia64/ia64.c (ia64_emit_probe_stack_range): Adjust.
(output_probe_stack_range): Rotate the loop and simplify.

From-SVN: r231398

8 years agoi386.c (ix86_emit_swsqrtsf): Cleanup infinity filterning code.
Uros Bizjak [Tue, 8 Dec 2015 08:53:42 +0000 (09:53 +0100)]
i386.c (ix86_emit_swsqrtsf): Cleanup infinity filterning code.

* config/i386/i386.c (ix86_emit_swsqrtsf): Cleanup
infinity filterning code.

From-SVN: r231397

8 years agoChangeLog: Fix whitespace.
Uros Bizjak [Tue, 8 Dec 2015 08:50:47 +0000 (09:50 +0100)]
ChangeLog: Fix whitespace.

* ChangeLog: Fix whitespace.
* testsuite/ChangeLog: Ditto.

From-SVN: r231396

8 years agore PR tree-optimization/68766 (internal compiler error: in expand_LOOP_VECTORIZED...
Ilya Enkovich [Tue, 8 Dec 2015 07:16:04 +0000 (07:16 +0000)]
re PR tree-optimization/68766 (internal compiler error: in expand_LOOP_VECTORIZED, at internal-fn.c:1905)

gcc/

PR tree-optimization/68766
* tree-vectorizer.c (vectorize_loops): Check for
if-converted loops when debug counters are used.

gcc/testsuite/

PR tree-optimization/68766
* gcc.dg/pr68766.c: New test.

From-SVN: r231395

8 years agoconstraints.md (Wfr): Change to be a non-memory constraint.
DJ Delorie [Tue, 8 Dec 2015 06:10:17 +0000 (01:10 -0500)]
constraints.md (Wfr): Change to be a non-memory constraint.

* config/rl78/constraints.md (Wfr): Change to be a non-memory
constraint.
* config/rl78/rl78-protos.h (rl78_one_far_p): Declare.
* config/rl78/rl78.c (rl78_one_far_p): Define.
* config/rl78/rl78-virt (movqi_virt): Fix far memory
alternatives.
(movhi_virt): Likewise.
(zero_extendqihi2_virt): Likewise.
(extendqihi2_virt): Likewise.
(add<mode>3_virt): Likewise.
(sub<mode>3_virt): Likewise.
(andqi3_virt): Likewise.
(iorqi3_virt): Likewise.
(xorqi3_virt): Likewise.
* config/rl78/rl78-real.md (bf,br): Use long forms to avoid reloc
overflow in large files.

From-SVN: r231394