rguenth [Mon, 14 Dec 2015 13:42:03 +0000 (13:42 +0000)]
2015-12-14 Richard Biener <rguenther@suse.de>
PR tree-optimization/68775
* tree-vect-slp.c (vect_build_slp_tree): Make sure to apply
a operand swapping even if replacing the op with scalars.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231617
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Mon, 14 Dec 2015 11:33:00 +0000 (11:33 +0000)]
[combine] Don't create LSHIFTRT of zero bits in change_zero_ext
* combine.c (change_zero_ext): Do not create a shift of zero length.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231613
138bc75d-0d04-0410-961f-
82ee72b054a4
ville [Mon, 14 Dec 2015 11:11:03 +0000 (11:11 +0000)]
Bad date on the Changelog entry, boo hiss.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231612
138bc75d-0d04-0410-961f-
82ee72b054a4
ville [Mon, 14 Dec 2015 11:08:30 +0000 (11:08 +0000)]
Document the implementation of Logical Operator Type Traits.
* doc/html/index.html: Regenerate.
* doc/html/manual/status.html: Likewise.
* doc/xml/manual/status_cxx2017.xml: Add P0013R1 to C++ 201z
and to Library Fundamentals 2 TS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231611
138bc75d-0d04-0410-961f-
82ee72b054a4
amonakov [Mon, 14 Dec 2015 10:15:13 +0000 (10:15 +0000)]
* gcc.dg/builtin-return-1.c: Correct effective-target test.
* gcc.dg/stack-usage-2.c: Use effective-target test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231610
138bc75d-0d04-0410-961f-
82ee72b054a4
claziss [Mon, 14 Dec 2015 09:59:02 +0000 (09:59 +0000)]
[ARC] Use TARGET_NO_SPECULATION_IN_DELAY_SLOTS_P hook.
gcc/
2015-12-14 Claudiu Zissulescu <claziss@synopsys.com>
* config/arc/arc.c (TARGET_NO_SPECULATION_IN_DELAY_SLOTS_P):
Provide target hook.
(arc_no_speculation_in_delay_slots_p): New function.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231609
138bc75d-0d04-0410-961f-
82ee72b054a4
claziss [Mon, 14 Dec 2015 09:46:13 +0000 (09:46 +0000)]
[ARC] Refurbish emitting DWARF2 related information when expanding epilogue.
gcc/
2015-12-14 Claudiu Zissulescu <claziss@synopsys.com>
Andrew Burgess <andrew.burgess@embecosm.com>
* config/arc/arc.c (frame_move): Set frame related flag.
(arc_save_restore): Emit epilogue related DWARF2 information.
(arc_expand_epilogue): Likewise.
* config/arc/arc.opt (mno-epilogue-cfi): Remove.
(mepilogue-cfi): Likewise.
* doc/invoke.texi: Remove -m[no]-epilogue-cfi documentation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231608
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Mon, 14 Dec 2015 09:33:12 +0000 (09:33 +0000)]
[PR 66616] Check for thunks when adding extra constants to clones
2015-12-14 Martin Jambor <mjambor@suse.cz>
PR ipa/66616
* ipa-cp.c (propagate_constants_accross_call): Move thuk check...
(call_passes_through_thunk_p): ...here.
(find_more_scalar_values_for_callers_subset): Perform thunk checks
like propagate_constants_accross_call does.
testsuite/
* g++.dg/ipa/pr66616.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231607
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 14 Dec 2015 08:04:37 +0000 (08:04 +0000)]
PR rtl-optimization/68730
* cfgrtl.c (cfg_layout_finalize): Free dominators.
* gcc.dg/pr68730.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231606
138bc75d-0d04-0410-961f-
82ee72b054a4
thopre01 [Mon, 14 Dec 2015 02:05:16 +0000 (02:05 +0000)]
2015-12-14 Thomas Preud'homme <thomas.preudhomme@arm.com>
PR testsuite/68629
* lib/target-supports.exp (check_effective_target_cilkplus): Also
check that compiling with -fcilkplus does not give an error.
* c-c++-common/attr-simd-3.c: Require cilkplus effective target.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231605
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 14 Dec 2015 00:16:17 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231604
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Sun, 13 Dec 2015 20:37:26 +0000 (20:37 +0000)]
[PR67355] drop dummy zero from reverse VTA ops, fix infinite recursion
VTA's cselib expression hashing compares expressions with the same
hash before adding them to the hash table. When there is a collision
involving a self-referencing expression, we could get infinite
recursion, in spite of the cycle breakers already in place. The
problem is currently latent in the trunk, because by chance we don't
get a collision.
Such value cycles are often introduced by reverse_op; most often,
they're indirect, and then value canonicalization takes care of the
cycle, but if the reverse operation simplifies to the original value,
we used to issue a (plus V (const_int 0)), because at some point
adding a plain value V to a location list as a reverse_op equivalence
caused other problems.
This dummy zero, in turn, caused the value canonicalizer to not fully
realize the equivalence, leading to more complex graphs and,
occasionally, to infinite recursion when comparing such
value-plus-zero expressions recursively.
Simply using V solves the infinite recursion from the PR testcase,
since the extra equivalence and the preexisting value canonicalization
together prevent recursion while the unrecognized equivalence
wouldn't, but it exposed another infinite recursion in
memrefs_conflict_p: get_addr had a cycle breaker in place, to skip RTL
referencing values introduced after the one we're examining, but it
wouldn't break the cycle if the value itself appeared in the
expression being examined.
After removing the dummy zero above, this kind of cycle in the
equivalence graph is no longer introduced by VTA itself, but dummy
zeros are also present in generated code, such as in the 32-bit x86's
pro_epilogue_adjust_stack_si_add epilogue insn generated as part of
the builtin longjmp in _Unwind_RaiseException building libgcc's
unwind-dw2.o. So, break the recursion cycle for them too.
for gcc/ChangeLog
PR debug/67355
* var-tracking.c (reverse_op): Don't add dummy zero to reverse
ops that simplify back to the original value.
* alias.c (refs_newer_value_p): Cut off recursion for
expressions containing the original value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231599
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Sun, 13 Dec 2015 13:10:33 +0000 (13:10 +0000)]
* gcc.dg/graphite/pr42729.c: XFAIL AIX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231598
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 13 Dec 2015 13:06:12 +0000 (13:06 +0000)]
[PATCH][PR target/19201] Peephole to improve clearing items in structure for m68k
* config/m68k/m68k.md (load feeding clear byte): New peephole2.
* gcc.target/m68k/pr19201.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231597
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 13 Dec 2015 12:51:02 +0000 (12:51 +0000)]
[PATCH] m68k testsuite TLC
* gcc.target/m68k/pr63347.c: Remove #include <stdlib> add -w to
command line options.
* gcc.target/m68k/
20090709-1.c: Adjust expected output.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231596
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Sun, 13 Dec 2015 12:43:21 +0000 (12:43 +0000)]
Handle sizes and kinds params of GOACC_paralllel in find_func_clobbers
2015-12-13 Tom de Vries <tom@codesourcery.com>
* tree-ssa-structalias.c (find_func_clobbers): Handle sizes and kinds
parameters of GOACC_paralllel.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231595
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sun, 13 Dec 2015 02:13:15 +0000 (02:13 +0000)]
* cgraph.c (cgraph_node::get_untransformed_body): Pass compressed
flag to lto_get_section_data.
* varpool.c (varpool_node::get_constructor): Likewise.
* lto-section-in.c (lto_get_section_data): Add new flag decompress.
(lto_free_section_data): Likewise.
(lto_get_raw_section_data): New function.
(lto_free_raw_section_data): New function.
(copy_function_or_variable): Copy sections w/o decompressing.
(lto_output_decl_state_refs): Picke compressed bit.
* lto-streamer.h (lto_in_decl_state): New flag compressed.
(lto_out_decl_state): Likewise.
(lto_get_section_data, lto_free_section_data): Update prototypes
(lto_get_raw_section_data, lto_free_raw_section_data): Declare.
(lto_write_raw_data): Declare.
(lto_begin_section): Remove FIXME.
(lto_write_raw_data): New function.
(lto_write_stream): Remove FIXME.
(lto_new_out_decl_state): Set compressed flag.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231594
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sun, 13 Dec 2015 02:12:15 +0000 (02:12 +0000)]
* cgraph.c (cgraph_node::get_untransformed_body): Pass compressed
flag to lto_get_section_data.
* varpool.c (varpool_node::get_constructor): Likewise.
* lto-section-in.c (lto_get_section_data): Add new flag decompress.
(lto_free_section_data): Likewise.
(lto_get_raw_section_data): New function.
(lto_free_raw_section_data): New function.
(copy_function_or_variable): Copy sections w/o decompressing.
(lto_output_decl_state_refs): Picke compressed bit.
* lto-streamer.h (lto_in_decl_state): New flag compressed.
(lto_out_decl_state): Likewise.
(lto_get_section_data, lto_free_section_data): Update prototypes
(lto_get_raw_section_data, lto_free_raw_section_data): Declare.
(lto_write_raw_data): Declare.
(lto_begin_section): Remove FIXME.
(lto_write_raw_data): New function.
(lto_write_stream): Remove FIXME.
(lto_new_out_decl_state): Set compressed flag.
* lto.c (lto_read_in_decl_state): Unpickle compressed bit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231593
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Sun, 13 Dec 2015 01:55:02 +0000 (01:55 +0000)]
* g++.dg/opt/pr48549.C: XFAIL AIX.
* g++.dg/abi/anon1.C: XFAIL AIX.
* gcc.dg/graphite/pr42917.c: XFAIL AIX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231592
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 13 Dec 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231591
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Sat, 12 Dec 2015 21:41:31 +0000 (21:41 +0000)]
* tree.c (free_lang_data_in_type, find_decls_types_r): Also free
unnecesary type decls.
* tree.h (is_redundant_typedef): Declare.
* dwarf2out.c (is_redundant_typedef): Export; booleanize
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231588
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 12 Dec 2015 21:11:40 +0000 (21:11 +0000)]
Fix date
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231587
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Sat, 12 Dec 2015 21:10:35 +0000 (21:10 +0000)]
* config/sparc/sparc.h (TARGET_SUPPORTS_WIDE_INT): Define to 1.
* config/sparc/sparc.c (sparc_emit_set_const64): Remove code
conditionalized on HOST_BITS_PER_WIDE_INT == 32.
(sparc_cannot_force_const_mem) <CONST_WIDE_INT>: New case.
<CONST_DOUBLE>: Remove VOIDmode test.
(epilogue_renumber) <CONST_WIDE_INT>: New case.
(sparc_print_operand): Remove support for CONST_DOUBLE with VOIDmode.
(sparc_assemble_integer): Likewise.
(set_extends): Likewise.
(sparc_rtx_costs) <CONST_INT>: Use SMALL_INT.
<CONST_WIDE_INT>: New case.
<CONST_DOUBLE>: Remove support for VOIDmode.
<MULT>: Remove support for CONST_DOUBLE with VOIDmode.
* config/sparc/predicates.md (const_zero_operand): Add const_wide_int.
(const_all_ones_operand): Likewise.
(uns_small_int_operand): Remove const_double and code conditionalized
on HOST_BITS_PER_WIDE_INT == 32.
(arith_double_operand): Likewise.
(arith_double_add_operand): Likewise.
(input_operand): Remove support for CONST_DOUBLE with DImode.
* config/sparc/sparc.md (DImode CONST_INT splitter): Remove code
conditionalized on HOST_BITS_PER_WIDE_INT == 32.
(DFmode CONST_DOUBLE splitter): Likewise.
(*adddi3_insn_sp32): Likewise.
(*subdi3_insn_sp32): Likewise.
(DImode logical splitter): Likewise.
(DImode CONST_DOUBLE splitter): Delete.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231586
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sat, 12 Dec 2015 19:00:32 +0000 (19:00 +0000)]
2014-12-12 Tobias Burnus <burnus@net-b.de>
gcc/fortran
PR fortran/45859
* expr.c (gfc_is_simply_contiguous): Optionally permit array
* elements.
(gfc_check_pointer_assign): Update call.
* interface.c (compare_parameter): Ditto.
* trans-array.c (gfc_conv_array_parameter): Ditto.
* trans-intrinsic.c (gfc_conv_intrinsic_transfer,
conv_isocbinding_function): Ditto.
* gfortran.h (gfc_is_simply_contiguous): Update prototype.
gcc/testsuite/
PR fortran/45859
* gcc/testsuite/gfortran.dg/coarray_args_2.f90: Remove dg-error.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231585
138bc75d-0d04-0410-961f-
82ee72b054a4
burnus [Sat, 12 Dec 2015 18:55:25 +0000 (18:55 +0000)]
2014-12-12 Tobias Burnus <burnus@net-b.de>
gcc/c-family/
PR fortran/68815
* c-format.c (gcc_gfc_char_table): Add 'q' flag to remaining
specifiers (%d, %i,%u and %c).
gcc/fortran/
PR fortran/68815
* check.c (gfc_check_reshape): Replace %<%d%> by %qd.
* matchexp.c (gfc_match_defined_op_name): Use %qc.
* symbol.c (gfc_add_new_implicit_range,
gfc_merge_new_implicit): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231584
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Sat, 12 Dec 2015 13:12:10 +0000 (13:12 +0000)]
* gcc.target/powerpc/pr67808.c: Add -mlong-double-128 option.
* g++.dg/cpp1y/pr58708.C: Test appropriate value for size of
wchar_t.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231583
138bc75d-0d04-0410-961f-
82ee72b054a4
bonzini [Sat, 12 Dec 2015 08:29:27 +0000 (08:29 +0000)]
gcc:
PR sanitizer/68418
* c-family/c-ubsan.c (ubsan_instrument_shift): Disable
sanitization of left shifts for wrapping signed types as well.
gcc/testsuite:
PR sanitizer/68418
* gcc.dg/ubsan/c99-wrapv-shift-1.c,
gcc.dg/ubsan/c99-wrapv-shift-2.c: New testcases.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231582
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 12 Dec 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231580
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 11 Dec 2015 23:18:22 +0000 (23:18 +0000)]
[PATCH][PR tree-optimization/68844] Fix testcase expected output
PR tree-optimization/68844
* gcc.dg/tree-ssa/ssa-dom-thread-4.c: Update expected output.
2015-12-11 Jan Beulich <jbeulich@suse.com>
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231577
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Fri, 11 Dec 2015 21:58:48 +0000 (21:58 +0000)]
PR middle-end/68215
* tree-vect-generic.c (tree_vec_extract): Remove GSI parameter.
Do not gimplify the result.
(do_unop): Adjust call to tree_vec_extract.
(do_binop): Likewise.
(do_compare): Likewise.
(do_plus_minus): Likewise.
(do_negate): Likewise.
(expand_vector_condition): Likewise.
(do_cond): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231575
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 11 Dec 2015 21:45:51 +0000 (21:45 +0000)]
Fix std::invoke support for reference_wrappers
PR libstdc++/59768
* include/std/functional (_Unwrap, __invfwd): Define.
(__invoke_impl): Remove reference_wrapper overloads and use __invfwd.
* include/std/type_traits (__result_of_memobj, __result_of_memfun):
Add partial specializations for const reference_wrappers and simplify.
* testsuite/20_util/bind/ref_neg.cc: Use dg-excess-errors.
* testsuite/20_util/function_objects/invoke/59768.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231574
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Fri, 11 Dec 2015 18:06:37 +0000 (18:06 +0000)]
* config/nvptx/nvptx.h (RETURN_ADDR_REGNO): Delete.
(OUTGOING_ARG_POINTER_REGNUM): Delete.
(ASM_OUTPUT_COMMON, ASM_OUTPUT_LOCAL): Delete.
(REGISTER_NAMES): Name static chain regs.
* config/nvptx/nvptx.c (nvptx_function_arg): Add ARG_UNUSED, merge
ifs.
(nvptx_incoming_arg): Merge ifs.
(nvptx_function_arg_boundary): Reimplement to avoid mixing units.
(nvptx_function_value): Tail call nvptx_libcall_value.
(nvptx_pass_by_reference): Add ARG_UNUSED.
(nvptx_static_chain): Use conditional op.
(nvptx_handle_kernel_attribute): Use VOID_TYPE_P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231572
138bc75d-0d04-0410-961f-
82ee72b054a4
dominiq [Fri, 11 Dec 2015 16:39:49 +0000 (16:39 +0000)]
2015-12-11 Jan-Benedict Glaw <jbglaw@lug-owl.de>
Dominique d'Humieres <dominiq@lps.ens.fr>
PR target/26427
PR target/33120
PR testsuite/35710
* config/darwin.c (darwin_use_anchors_for_symbol_p): Fix indention and
trailing whitespace.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231571
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Fri, 11 Dec 2015 15:55:48 +0000 (15:55 +0000)]
* gcc.dg/pr59605-1.c: Reduce iterations for nvptx.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231570
138bc75d-0d04-0410-961f-
82ee72b054a4
jbeulich [Fri, 11 Dec 2015 15:53:24 +0000 (15:53 +0000)]
avoid alignment of static variables affecting stack's
Function (or more narrow) scope static variables (as well as others not
placed on the stack) should also not have any effect on the stack
alignment. I noticed the issue first with Linux'es dynamic_pr_debug()
construct using an 8-byte aligned sub-file-scope local variable.
According to my checking bad behavior started with 4.6.x (4.5.3 was
still okay), but generated code got quite a bit worse as of 4.9.0.
gcc/
2015-12-11 Jan Beulich <jbeulich@suse.com>
* cfgexpand.c (expand_one_var): Exit early for static and
external variables when adjusting stack alignment related.
gcc/testsuite/
2015-12-11 Jan Beulich <jbeulich@suse.com>
* gcc.c-torture/execute/stkalign.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231569
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Fri, 11 Dec 2015 15:08:00 +0000 (15:08 +0000)]
* ChangeLog: Remove confusign PR marker.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231567
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 11 Dec 2015 14:43:26 +0000 (14:43 +0000)]
S/390: Wide int support.
gcc/ChangeLog
* config/s390/s390.c (s390_rtx_costs)
(s390_cannot_force_const_mem, legitimate_pic_operand_p)
(s390_preferred_reload_class, s390_reload_symref_address)
(legitimate_reload_constant_p, print_operand): Wide int support.
* config/s390/predicates.md ("const0_operand", "constm1_operand")
("consttable_operand"): Likewise.
("larl_operand"): Add a comment.
* config/s390/s390.h (TARGET_SUPPORTS_WIDE_INT): Enable wide int
support.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231566
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Fri, 11 Dec 2015 14:38:53 +0000 (14:38 +0000)]
libmpx/
2015-12-11 Tsvetkova Alexandra <aleksandra.tsvetkova@intel.com>
* mpxrt/Makefile.am (libmpx_la_LDFLAGS): Add -version-info
option.
* libmpxwrap/Makefile.am (libmpx_la_LDFLAGS): Likewise and
fix include path.
* libmpx/Makefile.in: Regenerate.
* mpxrt/Makefile.in: Regenerate.
* libmpxwrap/Makefile.in: Regenerate.
* mpxrt/libtool-version: New version.
* libmpxwrap/libtool-version: Likewise.
* mpxrt/libmpx.map: Add new version and a new symbol.
* mpxrt/mpxrt.h: New file.
* mpxrt/mpxrt.c (NUM_L1_BITS): Moved to mpxrt.h.
(REG_IP_IDX): Moved to mpxrt.h.
(REX_PREFIX): Moved to mpxrt.h.
(XSAVE_OFFSET_IN_FPMEM): Moved to mpxrt.h.
(MPX_L1_SIZE): Moved to mpxrt.h.
* libmpxwrap/mpx_wrappers.c (mpx_pointer): New type.
(mpx_bt_entry): New type.
(alloc_bt): New function.
(get_bt): New function.
(copy_if_possible): New function.
(copy_if_possible_from_end): New function.
(move_bounds): New function.
(__mpx_wrapper_memmove): Use move_bounds to copy bounds.
gcc/testsuite/
2015-12-11 Tsvetkova Alexandra <aleksandra.tsvetkova@intel.com>
* gcc.target/i386/mpx/memmove-1.c: New test.
* gcc.target/i386/mpx/memmove-2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231565
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Fri, 11 Dec 2015 13:52:05 +0000 (13:52 +0000)]
gcc/
* config/nvptx/nvptx.h (TARGET_SUPPORTS_WIDE_INT): Define.
* config/nvptx/nvptx.c (nvptxx_assemble_integer): Return false for
unrecognizable RTX.
gcc/testsuite/
* gcc.target/nvptx/ary-init.c: Repair dg_final syntax.
* gcc.target/nvptx/decl-init.c: Likewise. Add TI case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231564
138bc75d-0d04-0410-961f-
82ee72b054a4
ville [Fri, 11 Dec 2015 12:04:23 +0000 (12:04 +0000)]
PR libstdc++/68139
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231562
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Fri, 11 Dec 2015 11:33:44 +0000 (11:33 +0000)]
Remove unpaired TERMINATE_PASS_LIST in passes.def
2015-12-11 Tom de Vries <tom@codesourcery.com>
* passes.def: Remove unpaired TERMINATE_PASS_LIST.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231561
138bc75d-0d04-0410-961f-
82ee72b054a4
matz [Fri, 11 Dec 2015 11:29:02 +0000 (11:29 +0000)]
* hash-map.h (hash_map::hash_map): Gather statistics only
when GATHER_STATISTICS is true.
* hash-set.h (hash_set::hash_set): Ditto.
* hash-table.h (hash_table::hash_table): Ditto.
(hash_table::create_ggc): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231560
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Fri, 11 Dec 2015 11:27:11 +0000 (11:27 +0000)]
Add an asssert and testcase for PR 68064
2015-12-11 Martin Jambor <mjambor@suse.cz>
PR ipa/68064
* ipa-prop.c (ipa_compute_jump_functions_for_edge): Add checking
assert that align is nonzero.
testsuite/
* g++.dg/torture/pr68064.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231559
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 11 Dec 2015 11:16:13 +0000 (11:16 +0000)]
S/390: Fix warnings in "*setmem_long..." patterns.
gcc/ChangeLog
* config/s390/s390.c (s390_expand_setmem): Use new expanders.
* config/s390/s390.md ("*setmem_long")
("*setmem_long_and", "*setmem_long_31z"): Fix warnings.
("*setmem_long_and_31z"): New define_insn.
("setmem_long_<P:mode>"): New expanders.
* (<modesize>): New mode attribute
gcc/testsuite/ChangeLog
* gcc.target/s390/md/setmem_long-1.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231558
138bc75d-0d04-0410-961f-
82ee72b054a4
krebbel [Fri, 11 Dec 2015 11:03:21 +0000 (11:03 +0000)]
S/390: Fix warnings in "*setmem_long..." patterns.
gcc/ChangeLog
* config/s390/s390.md ("movstr", "*movstr"): Fix warning.
("movstr<P:mode>"): New indirect expanders used by "movstr".
gcc/testsuite/ChangeLog
* gcc.target/s390/md/movstr-1.c: New test.
* gcc.target/s390/s390.exp: Add subdir md.
Do not run hotpatch tests twice.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231557
138bc75d-0d04-0410-961f-
82ee72b054a4
marxin [Fri, 11 Dec 2015 10:59:29 +0000 (10:59 +0000)]
Fix PR target/67484
Uros Bizjak <ubizjak@gmail.com>
PR target/67484
* config/i386/i386.c (ix86_valid_target_attribute_tree):
Use ggc_strdup to copy option_strings to opts->x_ix86_arch_string and
opts->x_ix86_tune_string.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231556
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Fri, 11 Dec 2015 10:53:53 +0000 (10:53 +0000)]
2015-12-11 Richard Biener <rguenther@suse.de>
* lto-streamer.h (lto_simple_header_with_strings): Remove
main_size field already in lto_simple_header.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231555
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Fri, 11 Dec 2015 10:51:04 +0000 (10:51 +0000)]
gcc/
* tree-vect-stmts.c (vectorizable_mask_load_store): Check
mask vectype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231554
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Fri, 11 Dec 2015 09:43:52 +0000 (09:43 +0000)]
gcc/
* config/i386/i386.c (ix86_get_mask_mode): Use scalar
modes for 32 and 16 byte boolean vectors when possible.
gcc/testsuite/
* gcc.dg/vect/vect-32-chars.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231553
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 11 Dec 2015 00:27:14 +0000 (00:27 +0000)]
Fix shrink-wrapping bug (PR67778, PR68634)
After shrink-wrapping has found the "tightest fit" for where to place
the prologue, it tries move it earlier (so that frame saves are run
earlier) -- but without copying any more basic blocks.
Unfortunately a candidate block we select can be inside a loop, and we
will still allow it (because the loop always exits via our previously
chosen block). We can do that just fine if we make a duplicate of the
block, but we do not want to here.
So we need to detect this situation. We can place the prologue at a
previous block PRE only if PRE dominates every block reachable from
it, because then we will never need to duplicate that block (it will
always be executed with prologue).
2015-12-11 Segher Boessenkool <segher@kernel.crashing.org>
PR rtl-optimization/67778
PR rtl-optimization/68634
* shrink-wrap.c (try_shrink_wrapping): Add a comment about why we want
to put the prologue earlier. When determining if an earlier block is
suitable, make sure it dominates every block reachable from it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231552
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 11 Dec 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231551
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Thu, 10 Dec 2015 23:57:15 +0000 (23:57 +0000)]
PR ipa/61886
* lto-symtab.c (lto_symtab_merge_p): Avoid merging across different
values of error and warning attributes.
* gcc.dg/lto/pr61886_0.c: New testcase
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231548
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Thu, 10 Dec 2015 23:47:31 +0000 (23:47 +0000)]
rtlanal: Fix bits/bytes confusion in set_noop_p (PR68814)
The meaning of ZERO_EXTRACT depends on BITS_BIG_ENDIAN, not on
BYTES_BIG_ENDIAN. This caused PR68814.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231547
138bc75d-0d04-0410-961f-
82ee72b054a4
nathan [Thu, 10 Dec 2015 20:13:14 +0000 (20:13 +0000)]
* config/nvptx/nvptx.c (nvptx_function_arg,
nvptx_function_incoming_arg, nvptx_function_arg_advance,
nvptx_strict_argument_naming, nvptx_function_arg_boundary,
nvptx_libcall_value, nvptx_function_value,
nvptx_function_value_regno_p, nvptx_pass_by_reference,
nvptx_return_in_memory, nvptx_promote_function_mode,
nvptx_static_chain): Move earlier.
(write_one_arg): Break out as helper fn for ...
(write_arg): ... this new function. Adjust all callers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231543
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Thu, 10 Dec 2015 19:21:31 +0000 (19:21 +0000)]
* lto-streamer-out.c (wrap_refs): Only wrap public decls.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231541
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Thu, 10 Dec 2015 19:20:14 +0000 (19:20 +0000)]
* ipa-cp.c (ipcp_cloning_candidate_p): Use node->optimize_for_size_p.
(good_cloning_opportunity_p): Likewise.
(gather_context_independent_values): Do not return true when
polymorphic call context is known or when we have known aggregate
value of unused parameter.
(estimate_local_effects): Try to create clone for all context
when either some params are substituted or devirtualization is possible
or some params can be removed; use local flag instead of
node->will_be_removed_from_program_if_no_direct_calls_p.
(identify_dead_nodes): Likewise.
* gcc.c-torture/execute/
20010122-1.c: Disable cloning.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231540
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Thu, 10 Dec 2015 18:21:00 +0000 (18:21 +0000)]
Add -Wmisleading-indentation to -Wall
gcc/c-family/ChangeLog:
* c.opt (Wmisleading-indentation): Add to -Wall for C and C++.
gcc/ChangeLog:
* doc/invoke.texi (-Wall): Add -Wmisleading-indentation to the
list.
(-Wmisleading-indentation): Update documentation to reflect
being enabled by -Wall in C/C++.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231539
138bc75d-0d04-0410-961f-
82ee72b054a4
vmakarov [Thu, 10 Dec 2015 18:00:47 +0000 (18:00 +0000)]
2015-12-10 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/68691
* lra-spills.c (lra_final_code_change): Check pseudo occurrence
number in non-debug insns and remove debug insns if necessary.
2015-12-10 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/68691
* gcc.target/i386/pr68691.c: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231538
138bc75d-0d04-0410-961f-
82ee72b054a4
msebor [Thu, 10 Dec 2015 17:16:32 +0000 (17:16 +0000)]
* invoke.texi (Warning Options): Update -Wall options. Clarify
when some -Wextra options are enabled. Add -Wplacement-new example.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231533
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Thu, 10 Dec 2015 17:14:07 +0000 (17:14 +0000)]
PR tree-optimization/68619
* graphite-scop-detection.c (gather_bbs::before_dom_children):
Change return type to an edge. Always return NULL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231532
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Thu, 10 Dec 2015 17:12:38 +0000 (17:12 +0000)]
testsuite/lib/multline.exp: show test name and line numbers
gcc/testsuite/ChangeLog:
* lib/multiline.exp (_multiline_expected_outputs): Update comment.
(dg-end-multiline-output): Capture line numbers within
_multiline_expected_outputs.
(handle-multiline-outputs): Access global $testname_with_flags
and add it as a prefix to pass/fail results. Extract line numbers
from $_multiline_expected_outputs and print them within pass/fail
results, replacing the printing of $index. Consolidate the
string prefix shared between pass/fail into a new local ($title).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231530
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 10 Dec 2015 16:34:43 +0000 (16:34 +0000)]
2015-12-10 Jeff Law <law@redhat.com>
PR tree-optimization/68619
* tree-ssa-dom.c (dom_opt_dom_walker::before_dom_children): Propgate
return value from optimize_stmt.
(dom_opt_dom_walker): Add new argument to dom_walker constructor.
(pass_dominator:execute): If a block has an unreachable edge,
remove all jump threads through any successor of the affected block.
(record_equivalences_from_phis): Ignore alternative if the edge
does not have EDGE_EXECUTABLE set.
(single_incoming_edge_ignoring_loop_edges): Similarly.
(optimize_stmt): If a gimple_code has a compile-time constant
condition, return the edge taken for that constant value. Also
change the condition to true/false as necessary.
* domwalk.h (dom_walker::dom_walker): Add new argument
skip_unreachable_blocks. Don't provide empty constructor body.
(dom_walker::before_dom_children): Change return type.
(dom_walker::bb_reachable): Declare new private method.
(dom_walker::propagate_unreachable_to_edges): Likewise.
(dom_walker::m_unreachable_dom): Declare new private data member.
(dom_walker::m_skip_unreachable_blocks): Likewise.
* domwalk.c: Include dumpfile.h.
(dom_walker::dom_walker): New constructor. Initialize private data
members. If needed, set EDGE_EXECUTABLE for all edges in the CFG,
extracted from tree-ssa-sccvn.c.
(dom_walker::bb_reachable): New method extracted from tree-ssa-sccvn.c
(dom_walker::propagate_unreachable_to_edges): Likewise.
(dom_walker::walk): Only call before_dom_children on reachable
blocks. If before_dom_children returns an edge, then clear
EDGE_EXECUTABLE for all other outgoing edges from the same block.
For unreachable blocks, call propagate_unreachable_to_edges.
Similarly, only call after_dom_children on reachable blocks. For
unreachable blocks, conditionally clear m_unreachable_dom.
* tree-ssa-sccvn.c (sccvn_dom_walker::unreachable_dom): Remove
private data member.
(sccvn_dom_walker::after_dom_children): Use methods from dom_walker
class.
(run_scc_vn): Likewise.
(sccvn_dom_walker::before_dom_children): Likewise. Return the taken
outgoing edge if a COND, SWITCH, or GOTO are optimized.
* compare-elim.c (find_comparison_dom_walker::before_dom_children):
Change return type to an edge. Always return NULL.
* fwprop.c (single_def_use_dom_walker::before_dom_children): Likewise.
* gimple-ssa-strength-reduction.c
(find_candidates_dom_walker::before_dom_children): Likewise.
* ipa-prop.c (analysis_dom_walker::before_dom_children): Likewise.
(ipcp_modif_dom_walker::before_dom_children): Likewise.
* tree-into-ssa.c (rewrite_dom_walker::before_dom_children): Likewise.
(rewrite_update_dom_walker::before_dom_children): Likewise.
(mark_def_dom_children::before_dom_children): Likewise.
* tree-ssa-dse.c (dse_dom_walker::before_dom_children): Likewise.
* tree-ssa-loop-im.c
(invariantness_dom_walker::before_dom_children): Likewise.
(move_computations_dom_walker::before_dom_walker): Likewise.
* tree-ssa-phiopt.c
(nontrapping_dom_walker::before_dom_children): Likewise.
* tree-ssa-pre.c
(eliminate_dom_walker::before_dom_children): Likewise.
* tree-ssa-propagate.c
(substitute_and_fold_dom_walker::before_dom_children): Likewise.
* tree-ssa-strlen.c
(strlen_dom_walker::before_dom_children): Likewise.
* tree-ssa-uncprop.c
(uncprop_dom_walker::before_dom_children): Likewise.
PR tree-optimization/68619
* gcc.dg/tree-ssa/pr68619-1.c: New test.
* gcc.dg/tree-ssa/pr68619-2.c: New test.
* gcc.dg/tree-ssa/pr68619-3.c: New test.
* gcc.dg/tree-ssa/pr68619-4.c: New test.
* gcc.dg/tree-ssa/pr68619-5.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231527
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 10 Dec 2015 16:11:49 +0000 (16:11 +0000)]
PR rtl-optimization/68376
PR rtl-optimization/68670
* ifcvt.c (noce_try_abs): For one_cmpl allow < 0, >= 0
or > -1 conditions regardless of negate, and disallow
all other conditions.
* gcc.c-torture/execute/pr68376-2.c (f5, f6, f7, f8): New
tests.
(main): Call them.
* gcc.dg/pr68670-1.c: New test.
* gcc.dg/pr68670-2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231526
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Thu, 10 Dec 2015 16:01:42 +0000 (16:01 +0000)]
gcc/
* tree-chkp.c (chkp_call_returns_bounds_p): Return true
for VA_ARG call.
(chkp_fixup_inlined_call): New.
* tree-chkp.h (chkp_fixup_inlined_call): New.
* tree-stdarg.c: Include tree-chkp.h.
(expand_ifn_va_arg_1): Fixup bndret calls for removed
VA_ARG calls.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231525
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Thu, 10 Dec 2015 15:45:49 +0000 (15:45 +0000)]
PR c++/68348
* g++.dg/cpp0x/pr68348.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231524
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Thu, 10 Dec 2015 15:40:57 +0000 (15:40 +0000)]
2015-12-10 Martin Jambor <mjambor@suse.cz>
* tree-inline.c (duplicate_remap_omp_clause_seq): New function.
(replace_locals_op): Duplicate gimple sequences in OMP clauses.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231523
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Thu, 10 Dec 2015 15:20:53 +0000 (15:20 +0000)]
Fix -Wmisleading-indentation warning in graphite-optimize-isl.c
../../../src/gcc/graphite-optimize-isl.c: In function ‘isl_union_set* scop_get_domains(scop_p)’:
../../../src/gcc/graphite-optimize-isl.c:362:5: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]
return res;
^~~~~~
In file included from ../../../src/gcc/hash-table.h:236:0,
from ../../../src/gcc/coretypes.h:348,
from ../../../src/gcc/graphite-optimize-isl.c:28:
../../../src/gcc/vec.h:1343:3: note: ...this ‘for’ clause, but it is not
for (I = 0; (V).iterate ((I), &(P)); ++(I))
^
../../../src/gcc/graphite-optimize-isl.c:359:3: note: in expansion of macro ‘FOR_EACH_VEC_ELT’
FOR_EACH_VEC_ELT (scop->pbbs, i, pbb)
^~~~~~~~~~~~~~~~
351 static isl_union_set *
352 scop_get_domains (scop_p scop ATTRIBUTE_UNUSED)
353 {
354 int i;
355 poly_bb_p pbb;
356 isl_space *space = isl_set_get_space (scop->param_context);
357 isl_union_set *res = isl_union_set_empty (space);
358
359 FOR_EACH_VEC_ELT (scop->pbbs, i, pbb)
360 res = isl_union_set_add_set (res, isl_set_copy (pbb->domain));
361
362 return res;
^ warning is here
363 }
gcc/ChangeLog:
* graphite-optimize-isl.c (scop_get_domains): Fix indentation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231522
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Thu, 10 Dec 2015 15:18:26 +0000 (15:18 +0000)]
Fix -Wmisleading-indentation warning in ifcvt.c
../../../src/gcc/ifcvt.c: In function ‘bool noce_try_inverse_constants(noce_if_info*)’:
../../../src/gcc/ifcvt.c:1233:2: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]
seq = end_ifcvt_sequence (if_info);
^~~
../../../src/gcc/ifcvt.c:1230:7: note: ...this ‘if’ clause, but it is not
if (target != if_info->x)
^~
due to the lack of an outdent after the conditional at lines 1230-1:
1220 if (target)
1221 {
1222 rtx_insn *seq = get_insns ();
1223
1224 if (!seq)
1225 {
1226 end_sequence ();
1227 return false;
1228 }
1229
>>1230 if (target != if_info->x)
>>1231 noce_emit_move_insn (if_info->x, target);
1232
>>1233 seq = end_ifcvt_sequence (if_info);
1234
1235 if (!seq)
1236 return false;
1237
1238 emit_insn_before_setloc (seq, if_info->jump,
1239 INSN_LOCATION (if_info->insn_a));
1240 return true;
1241 }
gcc/ChangeLog:
* ifcvt.c (noce_try_inverse_constants): Fix indentation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231521
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Thu, 10 Dec 2015 15:13:49 +0000 (15:13 +0000)]
Fix -Wmisleading-indentation warning in gcc/regrename.c
../../../src/gcc/regrename.c: In function ‘void scan_rtx_address(rtx_insn*, rtx_def**, reg_class, scan_actions, machine_mode, addr_space_t)’:
../../../src/gcc/regrename.c:1314:7: error: statement is indented as if it were guarded by... [-Werror=misleading-indentation]
break;
^
../../../src/gcc/regrename.c:1311:5: note: ...this ‘if’ clause, but it is not
if (!AUTO_INC_DEC)
^
gcc/ChangeLog:
* regrename.c (scan_rtx_address): Fix indentation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231520
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231519
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231518
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231517
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231516
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 10 Dec 2015 14:20:50 +0000 (14:20 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231515
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Dec 2015 14:15:34 +0000 (14:15 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231514
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 10 Dec 2015 14:06:15 +0000 (14:06 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231513
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231512
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 10 Dec 2015 13:46:38 +0000 (13:46 +0000)]
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231511
138bc75d-0d04-0410-961f-
82ee72b054a4
claziss [Thu, 10 Dec 2015 13:40:21 +0000 (13:40 +0000)]
[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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231510
138bc75d-0d04-0410-961f-
82ee72b054a4
claziss [Thu, 10 Dec 2015 13:32:21 +0000 (13:32 +0000)]
[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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231509
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Dec 2015 13:23:22 +0000 (13:23 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231508
138bc75d-0d04-0410-961f-
82ee72b054a4
clyon [Thu, 10 Dec 2015 13:11:27 +0000 (13:11 +0000)]
Revert [testsuite][ARM target attributes] Fix effective_target tests
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231507
138bc75d-0d04-0410-961f-
82ee72b054a4
ebotcazou [Thu, 10 Dec 2015 12:12:59 +0000 (12:12 +0000)]
* alias.c (get_alias_set): Add cut-off for recursion.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231505
138bc75d-0d04-0410-961f-
82ee72b054a4
chrbr [Thu, 10 Dec 2015 11:41:38 +0000 (11:41 +0000)]
fix typo in date format
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231504
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Thu, 10 Dec 2015 11:23:50 +0000 (11:23 +0000)]
gcc/
* tree-vect-stmts.c (vectorizable_assignment): Support
useless boolean conversion.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231503
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Thu, 10 Dec 2015 10:49:52 +0000 (10:49 +0000)]
Correct previous ChangeLog (targets is correct, not hosts)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231501
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231500
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Thu, 10 Dec 2015 10:14:38 +0000 (10:14 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231499
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Dec 2015 09:41:08 +0000 (09:41 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231498
138bc75d-0d04-0410-961f-
82ee72b054a4
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231497
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Dec 2015 09:12:46 +0000 (09:12 +0000)]
2015-12-10 Richard Biener <rguenther@suse.de>
* tree-ssa-structalias.c (create_function_info_for): Add missing
constraint from nonlocal for DECL_RESULT.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231496
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Dec 2015 09:10:40 +0000 (09:10 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231495
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Dec 2015 09:05:58 +0000 (09:05 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231494
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Dec 2015 09:00:58 +0000 (09:00 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231493
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Thu, 10 Dec 2015 09:00:07 +0000 (09:00 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231492
138bc75d-0d04-0410-961f-
82ee72b054a4
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231491
138bc75d-0d04-0410-961f-
82ee72b054a4
marxin [Thu, 10 Dec 2015 08:40:35 +0000 (08:40 +0000)]
Fix memory leaks in tree-vect-data-refs.c
* tree-vect-data-refs.c: Free an overwritten dataref.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231490
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Thu, 10 Dec 2015 01:32:10 +0000 (01:32 +0000)]
* config/pa/fptr.c (__canonicalize_funcptr_for_compare): Remove code
to initialize call to __dl_fixup once.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231486
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Thu, 10 Dec 2015 01:08:13 +0000 (01:08 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231485
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Thu, 10 Dec 2015 00:41:17 +0000 (00:41 +0000)]
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231482
138bc75d-0d04-0410-961f-
82ee72b054a4