redi [Tue, 12 Jan 2016 19:39:47 +0000 (19:39 +0000)]
Extend std::function test for PR 68995
* testsuite/20_util/function/68995.cc: Test reference_wrapper cases.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232294
138bc75d-0d04-0410-961f-
82ee72b054a4
andris [Tue, 12 Jan 2016 18:36:00 +0000 (18:36 +0000)]
Enable LTO for DJGPP
* configure.ac: enable LTO
* configure: Regenerate
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232290
138bc75d-0d04-0410-961f-
82ee72b054a4
hainque [Tue, 12 Jan 2016 17:53:14 +0000 (17:53 +0000)]
Prevent "undef var" errors on gcc --help or --version with self-specs
* gcc.c (spec_undefvar_allowed): New global.
(process_command): Set to true when running for --version or --help,
alone or together.
(getenv_spec_function): When the variable is not defined, use the
variable name as the variable value if we're allowed not to issue
a fatal error.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232287
138bc75d-0d04-0410-961f-
82ee72b054a4
amker [Tue, 12 Jan 2016 17:49:51 +0000 (17:49 +0000)]
PR tree-optimization/68911
* tree-vrp.c (adjust_range_with_scev): Check overflow in range
information computed for expression "init + nit * step".
gcc/testsuite/ChangeLog
PR tree-optimization/68911
* gcc.c-torture/execute/pr68911.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232286
138bc75d-0d04-0410-961f-
82ee72b054a4
sandra [Tue, 12 Jan 2016 17:34:37 +0000 (17:34 +0000)]
2016-01-12 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* doc/invoke.texi (Invoking GCC): Copy-edit. Incorporate information
about name of GCC executable. Remove deleted node from menu.
(Directory Options) <-B>: Remove cross-reference to deleted node.
(Target Options): Delete section.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232285
138bc75d-0d04-0410-961f-
82ee72b054a4
jnorris [Tue, 12 Jan 2016 17:03:03 +0000 (17:03 +0000)]
* libgomp.texi: Updates for OpenACC.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232283
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Tue, 12 Jan 2016 16:48:29 +0000 (16:48 +0000)]
PR c++/68979
* constexpr.c (cxx_eval_check_shift_p): Use permerror rather than
error_at and adjust the return value.
* g++.dg/warn/permissive-1.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232280
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 12 Jan 2016 16:27:09 +0000 (16:27 +0000)]
Sync top-level configure.ac with binutils-gdb
Sync with binutils-gdb:
2015-10-21 Nick Clifton <nickc@redhat.com>
PR gas/19109
* configure.ac: Note the 'none' is an acceptable argument to
--enable-compressed-debug-sections.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232279
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 12 Jan 2016 15:21:27 +0000 (15:21 +0000)]
PR objc++/68511
PR c++/69213
* cp-gimplify.c (cp_gimplify_expr) <case INIT_EXPR>: Don't return
GS_ERROR whenever seen_error (), only if *expr_p contains
cilk spawn stmt, but cilk_detect_spawn_and_unwrap failed.
* g++.dg/opt/pr69213.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232278
138bc75d-0d04-0410-961f-
82ee72b054a4
edlinger [Tue, 12 Jan 2016 15:13:02 +0000 (15:13 +0000)]
PR bootstrap/69134
* Makefile.def (mpfr): Disable assembler.
* Makefile.in: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232277
138bc75d-0d04-0410-961f-
82ee72b054a4
chrbr [Tue, 12 Jan 2016 15:01:12 +0000 (15:01 +0000)]
PR target/69180
* config/arm/arm-c.c (arm_pragma_target_parse): Set NODE_CONDITIONAL
for __ARM_NEON_FP, __ARM_FP, _ARM_FEATURE_LDREX.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232276
138bc75d-0d04-0410-961f-
82ee72b054a4
torvald [Tue, 12 Jan 2016 14:57:45 +0000 (14:57 +0000)]
libitm: Remove dead code and data.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232275
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Tue, 12 Jan 2016 14:54:33 +0000 (14:54 +0000)]
Prevent recursive instantiation in std::function
PR libstdc++/69005
PR libstdc++/69222
* include/std/functional (function::_Invoke): Remove, use result_of.
(function::_Callable): Replace alias template with class template
and use partial specialization instead of _NotSelf alias template.
(function(_Functor)): Add "not self" constraint so that _Callable is
not used while type is incomplete.
* testsuite/20_util/function/69222.cc: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232273
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 12 Jan 2016 14:22:40 +0000 (14:22 +0000)]
2016-01-12 Richard Biener <rguenther@suse.de>
PR lto/69077
lto/
* lto-symtab.c (lto_symtab_prevailing_virtual_decl): Properly
merge TREE_ADDRESSABLE and DECL_POSSIBLY_INLINED flags.
* g++.dg/lto/pr69077_0.C: New testcase.
* g++.dg/lto/pr69077_1.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232272
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 12 Jan 2016 13:20:33 +0000 (13:20 +0000)]
PR target/69198
* config/i386/i386.c (ix86_expand_special_args_builtin): Ensure
aligned_mem is properly set for AVX512-VL floating point masked
stores.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232268
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 12 Jan 2016 13:19:49 +0000 (13:19 +0000)]
PR target/69175
* ifcvt.c (cond_exec_process_if_block): When removing the last
insn from then_bb, remove also any possible barriers that follow it.
* g++.dg/opt/pr69175.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232267
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 12 Jan 2016 13:16:53 +0000 (13:16 +0000)]
Define STDINT_LONG32 and add predefined integer types for IAMCU
Define STDINT_LONG32 to 0, add SIZE_TYPE, PTRDIFF_TYPE and WCHAR_TYPE
for IAMCU to make integer types compatible with i386 Linux.
PR target/68456
PR target/69226
* config/i386/iamcu.h (SIZE_TYPE): New macro.
(PTRDIFF_TYPE): Likewise.
(WCHAR_TYPE): Likewise.
(WCHAR_TYPE_SIZE): Likewise.
(STDINT_LONG32): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232266
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Tue, 12 Jan 2016 12:28:47 +0000 (12:28 +0000)]
Cleanup vect testsuite includes
* gcc.dg/vect/fast-math-bb-slp-call-3.c: Declare functions as 'extern'
rather than #including math.h & stdlib.h.
* gcc.dg/vect/pr47001.c: Declare abort as 'extern', remove stdlib.h.
* gcc.dg/vect/pr49771.c: Likewise.
* gcc.dg/vect/vect-10-big-array.c: Likewise.
* gcc.dg/vect/vect-neg-store-1.c: Likewise.
* gcc.dg/vect/vect-neg-store-2.c: Likewise.
* gcc.dg/vect/slp-37.c: Change NULL to 0, remove stdlib.h.
* gcc.dg/vect/pr40254.c: Remove unnecessary include of stdlib.h.
* gcc.dg/vect/pr44507.c: Likewise.
* gcc.dg/vect/pr45902.c: Likewise.
* gcc.dg/vect/slp-widen-mult-half.c: Likewise.
* gcc.dg/vect/vect-117.c: Likewise.
* gcc.dg/vect/vect-99.c: Likewise.
* gcc.dg/vect/vect-aggressive-1.c: Likewise.
* gcc.dg/vect/vect-cond-1.c: Likewise.
* gcc.dg/vect/vect-cond-2.c: Likewise.
* gcc.dg/vect/vect-cond-3.c: Likewise.
* gcc.dg/vect/vect-cond-4.c: Likewise.
* gcc.dg/vect/vect-mask-load-1.c: Likewise.
* gcc.dg/vect/vect-mask-loadstore-1.c: Likewise.
* gcc.dg/vect/vect-over-widen-1-big-array.c: Likewise.
* gcc.dg/vect/vect-over-widen-1.c: Likewise.
* gcc.dg/vect/vect-over-widen-2-big-array.c: Likewise.
* gcc.dg/vect/vect-over-widen-2.c: Likewise.
* gcc.dg/vect/vect-over-widen-3-big-array.c: Likewise.
* gcc.dg/vect/vect-over-widen-3.c: Likewise.
* gcc.dg/vect/vect-over-widen-4-big-array.c: Likewise.
* gcc.dg/vect/vect-over-widen-4.c: Likewise.
* gcc.dg/vect/vect-widen-mult-const-s16.c: Likewise.
* gcc.dg/vect/vect-widen-mult-const-u16.c: Likewise.
* gcc.dg/vect/vect-widen-mult-half-u8.c: Likewise.
* gcc.dg/vect/vect-widen-mult-half.c: Likewise.
* gcc.dg/vect/no-trapping-math-vect-ifcvt-11.c: Remove unnecessary
include of signal.h.
* gcc.dg/vect/no-trapping-math-vect-ifcvt-12.c: Likewise.
* gcc.dg/vect/no-trapping-math-vect-ifcvt-13.c: Likewise.
* gcc.dg/vect/no-trapping-math-vect-ifcvt-14.c: Likewise.
* gcc.dg/vect/no-trapping-math-vect-ifcvt-15.c: Likewise.
* gcc.dg/vect/no-trapping-math-vect-ifcvt-16.c: Likewise.
* gcc.dg/vect/vect-ifcvt-16.c: Likewise.
* gcc.dg/vect/vect-ifcvt-17.c: Likewise.
* gcc.dg/vect/vect-ifcvt-2.c: Likewise.
* gcc.dg/vect/vect-ifcvt-3.c: Likewise.
* gcc.dg/vect/vect-ifcvt-4.c: Likewise.
* gcc.dg/vect/vect-ifcvt-5.c: Likewise.
* gcc.dg/vect/vect-ifcvt-5.c: Likewise.
* gcc.dg/vect/vect-ifcvt-6.c: Likewise.
* gcc.dg/vect/vect-ifcvt-7.c: Likewise.
* gcc.dg/vect/vect-ifcvt-9.c: Likewise.
* gcc.dg/vect/vect-outer-5.c: Likewise.
* gcc.dg/vect/vect-outer-6.c: Likewise.
* gcc.dg/vect/vect-strided-u8-i8-gap4-unknown.c: Remove unnecessary
include of stdio.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232265
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Tue, 12 Jan 2016 11:43:59 +0000 (11:43 +0000)]
PR target/68913
* gcc.dg/lto/pr61886_0.c: Rename the external function called
to fread so that it will be found in all target runtimes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232264
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 12 Jan 2016 11:41:16 +0000 (11:41 +0000)]
2016-01-12 Richard Biener <rguenther@suse.de>
PR tree-optimization/69053
* tree-vect-loop.c (get_initial_def_for_reduction): Properly
convert initial value for cond reductions.
* g++.dg/torture/pr69053.C: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232263
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 12 Jan 2016 11:39:54 +0000 (11:39 +0000)]
2016-01-12 Richard Biener <rguenther@suse.de>
PR tree-optimization/69007
* tree-vect-patterns.c (vect_vect_recog_func_ptrs): Move
widen_sum after dot_prod and sad.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232262
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 12 Jan 2016 08:36:24 +0000 (08:36 +0000)]
2016-01-12 Richard Biener <rguenther@suse.de>
PR tree-optimization/69168
* tree-vect-loop.c (vect_analyze_loop_2): Reset both main and
pattern stmt SLP type.
* tree-vect-slp.c (vect_detect_hybrid_slp_stmts): Patterns may
end up unused so cope with that case.
* gcc.dg/torture/pr69168.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232261
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Tue, 12 Jan 2016 08:30:44 +0000 (08:30 +0000)]
2016-01-12 Richard Biener <rguenther@suse.de>
PR tree-optimization/69157
* tree-vect-stmts.c (vectorizable_mask_load_store): Check
stmts def type only during analyze phase.
(vectorizable_call): Likewise.
(vectorizable_simd_clone_call): Likewise.
(vectorizable_conversion): Likewise.
(vectorizable_assignment): Likewise.
(vectorizable_shift): Likewise.
(vectorizable_operation): Likewise.
(vectorizable_store): Likewise.
(vectorizable_load): Likewise.
* gcc.dg/torture/pr69157.c: New testcase.
2016-01-12 Richard Biener <rguenther@suse.de>
PR tree-optimization/69174
* tree-vect-stmts.c (vect_mark_relevant): Remove excessive vertical
space.
(vectorizable_load): Properly compute the number of loads needed
for permuted strided SLP loads and do not spuriously assign
to SLP_TREE_VEC_STMTS.
* gcc.dg/torture/pr69174.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232260
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Tue, 12 Jan 2016 08:21:53 +0000 (08:21 +0000)]
PR c++/66808
PR c++/69000
* pt.c (tsubst_decl): If not local_p, clear DECL_TEMPLATE_INFO.
* g++.dg/tls/pr66808.C: New test.
* g++.dg/tls/pr69000.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232259
138bc75d-0d04-0410-961f-
82ee72b054a4
andris [Tue, 12 Jan 2016 04:57:10 +0000 (04:57 +0000)]
[PATCH 5/6] [DJGPP] Update DJGPP configuration related files
* config/i386/djgpp.h (PREFERRED_DEBUGGING_TYPE): Define to DWARF2
(TARGET_ASM_OUTPUT_IDENT): Define to default_asm_output_ident_directive
(MD_EXEC_PREFIX): Remove.
(MD_STARTFILE_PREFIX) Removee.
(FILE_NAME_ABSOLUTE_P): Remove.
(CPP_SPEC): Do not read macros from sys/version.h.
(LINK_COMMAND_SPEC): Remove.
(LOCAL_INCLUDE_DIR): Remove.
(TARGET_ASM_NAMED_SECTION): Define to i386_djgpp_asm_named_section
(TARGET_OS_CPP_BUILTINS): Add DJGPP (non ISO only), __DJGPP, __DJGPP__, unix.
(POST_LINK_SPEC): Define to invoke stubify after linker
(LIBSTDCXX): Remove define
(DBX_REGISTER_NUMBER): Define to svr4_dbx_register_map.
(DEFAULT_PCC_STRUCT_RETURN): Define to 1.
(SUBTARGET_OVERRIDE_OPTIONS): Remove warning about -mbnu2210.
(SUBTARGET_OVERRIDE_OPTIONS): Ignore -fPIC and generate message.
(SUBTARGET_OVERRIDE_OPTIONS): Default to DWARF2 debugging info.
(IX86_MAYBE_NO_LIBGCC_TFMODE): Remove.
(i386_djgpp_asm_named_section): Add propotype of new procedure
* config/i386/xm-djgpp.h (NATIVE_SYSTEM_HEADER_DIR): Define.
(MD_EXEC_PREFIX): Define (moved from config/i386/djgpp.h).
(STANDARD_STARTFILE_PREFIX_1): Define (moved from MD_STARTFILE_PREFIX in config/i386/djgpp.h).
(STANDARD_STARTFILE_PREFIX_2): Define identical to STANDARD_STARTFILE_PREFIX_1.
(LOCAL_INCLUDE_DIR): Define (moved from config/i386/djgpp.h).
(GCC_DRIVER_HOST_INITIALIZATION): Fix reporting fatal installation errors.
(MAX_OFILE_ALIGNMENT): Define to 128.
(HAVE_FTW_H): Undefine as DJGPP do not have nftw, but have ftw.h.
* config/i386/djgpp.c: New file. Add implementation of i386_djgpp_asm_named_section.
* config/i386/djgpp.opt: Remove obsolete option -mbnu210.
* config/i386/t-djgpp: New file. Add djgpp.o to EXTRA_OBJS.
Add rule for building djgpp.o.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232258
138bc75d-0d04-0410-961f-
82ee72b054a4
wschmidt [Tue, 12 Jan 2016 04:49:55 +0000 (04:49 +0000)]
[gcc]
2016-01-11 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (v2df_reduction_p): New function.
(rtx_is_swappable_p): Reductions are swappable.
(insn_is_swappable_p): V2DF reductions are swappable.
[gcc/testsuite]
2016-01-11 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* gcc.target/powerpc/swaps-p8-23.c: New test.
* gcc.target/powerpc/swaps-p8-24.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232257
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Tue, 12 Jan 2016 02:06:20 +0000 (02:06 +0000)]
PR tree-optimization/68356
* gcc.dg/torture/pr68264.c: Disable exp2 ERANGE test on hppa unix.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232256
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Tue, 12 Jan 2016 01:35:23 +0000 (01:35 +0000)]
* config/pa/pa.c (pa_emit_move_sequence): Handle floating point
reloads for other unsupported memory operands.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232253
138bc75d-0d04-0410-961f-
82ee72b054a4
kugan [Tue, 12 Jan 2016 00:40:54 +0000 (00:40 +0000)]
gcc/ChangeLog:
2016-01-12 Kugan Vivekanandarajah <kuganv@linaro.org>
Jim Wilson <jim.wilson@linaro.org>
PR target/69194
* config/arm/arm-builtins.c (arm_expand_neon_args): Call
copy_to_mode_reg instead of force_reg.
gcc/testsuite/ChangeLog:
2016-01-12 Kugan Vivekanandarajah <kuganv@linaro.org>
Jim Wilson <jim.wilson@linaro.org>
PR target/69194
* gcc.target/arm/pr69194.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232251
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Tue, 12 Jan 2016 00:30:30 +0000 (00:30 +0000)]
Set FLT_EVAL_METHOD to 2 only if 387 FPU is used
When 387 FPU isn't used, there is no excess precision. We should set
FLT_EVAL_METHOD to 2 only if 387 FPU is used.
gcc/
PR target/69225
* config/i386/i386.h (TARGET_FLT_EVAL_METHOD): Set to 2 only if
TARGET_80387 is true.
gcc/testsuite
PR target/69225
* gcc.target/i386/pr69225-1.c: New test.
* gcc.target/i386/pr69225-2.c: Likewise.
* gcc.target/i386/pr69225-3.c: Likewise.
* gcc.target/i386/pr69225-4.c: Likewise.
* gcc.target/i386/pr69225-5.c: Likewise.
* gcc.target/i386/pr69225-6.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232249
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Tue, 12 Jan 2016 00:16:11 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232248
138bc75d-0d04-0410-961f-
82ee72b054a4
jsm28 [Mon, 11 Jan 2016 23:56:35 +0000 (23:56 +0000)]
* zh_CN.po: Update.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232244
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 11 Jan 2016 20:53:07 +0000 (20:53 +0000)]
PR c++/69131
* method.c (walk_field_subobs): Add dtor_from_ctor parm.
(process_subob_fn): Likewise. Don't consider triviality if true.
(synthesize_method_walk): Pass it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232243
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 11 Jan 2016 19:07:31 +0000 (19:07 +0000)]
PR target/67462
* gcc.dg/ifcvt-3.c: Only compile on lp64 targets, include also i?86
if lp64.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232242
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 11 Jan 2016 19:06:34 +0000 (19:06 +0000)]
PR target/69071
* lra-eliminations.c (move_plus_up): Only move plus up
if subreg of the constant can be simplified into constant
and use the simplified subreg of the constant instead of
the original constant.
* gcc.dg/pr69071.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232241
138bc75d-0d04-0410-961f-
82ee72b054a4
dmalcolm [Mon, 11 Jan 2016 18:03:15 +0000 (18:03 +0000)]
PR c++/68795: fix uninitialized close_paren_loc in cp_parser_postfix_expression
gcc/cp/ChangeLog:
PR c++/68795
* parser.c (cp_parser_postfix_expression): Initialize
close_paren_loc to UNKNOWN_LOCATION; only use it if
it has been written to by
cp_parser_parenthesized_expression_list.
(cp_parser_parenthesized_expression_list): Document the behavior
with respect to the CLOSE_PAREN_LOC param.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232238
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 11 Jan 2016 17:59:22 +0000 (17:59 +0000)]
PR c++/69211
* cp-gimplify.c (cp_fold): If COMPOUND_EXPR or MODIFY_EXPR
folded operands have side-effects, but folding changed any of them,
build a new tree with the folded operands instead of returning the
unfolded tree.
* g++.dg/opt/pr69211.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232237
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 11 Jan 2016 17:57:43 +0000 (17:57 +0000)]
* fold-const.c (fold_convertible_p): Don't return true
for conversion of VECTOR_TYPE to same sized integral type.
(fold_convert_loc): Fix up formatting. Fold conversion of
VECTOR_TYPE to same sized integral type using VIEW_CONVERT_EXPR
instead of NOP_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232236
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 11 Jan 2016 17:56:39 +0000 (17:56 +0000)]
PR tree-optimization/69214
* tree-vrp.c (simplify_cond_using_ranges): Don't propagate
innerop into a comparison if SSA_NAME_OCCURS_IN_ABNORMAL_PHI.
Formatting fix.
* gcc.c-torture/compile/pr69214.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232235
138bc75d-0d04-0410-961f-
82ee72b054a4
ian [Mon, 11 Jan 2016 17:55:39 +0000 (17:55 +0000)]
PR 68980
libgo/testsuite: portable ps usage in gotest
gotest is using "ps" to list descendant sleep
processes in its timeout handling, grepping
the command name.
We are currently using the "cmd" ps output
formatter, which is non-portable. We should
use "comm" which is part of the POSIX
standard, and outputs only the command name
and not the arguments.
Fixes https://gcc.gnu.org/PR68980
Reviewed-on: https://go-review.googlesource.com/18426
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232234
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Mon, 11 Jan 2016 17:55:38 +0000 (17:55 +0000)]
PR tree-optimization/69207
* tree-vect-slp.c (vect_get_constant_vectors): For
VECTOR_BOOLEAN_TYPE_P, assert op has integral type instead of
fold_convertible_p to vector_type's element type, and always
use VCE for non-VECTOR_BOOLEAN_TYPE_P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232233
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Mon, 11 Jan 2016 16:47:58 +0000 (16:47 +0000)]
allocator_traits<allocator<T>> partial specialization
PR libstdc++/60976
* include/bits/alloc_traits.h (allocator_traits<allocator<_Tp>>):
Define partial specialization.
* testsuite/20_util/shared_ptr/cons/58659.cc: Add construct and
destroy members to std::allocator explicit specialization.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232232
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 11 Jan 2016 16:31:55 +0000 (16:31 +0000)]
* gcc.target/i386/pr66232-10.c: Do not compile on ia32 target.
* gcc.target/i386/pr66232-11.c: Ditto.
* gcc.target/i386/pr66232-12.c: Ditto.
* gcc.target/i386/pr66232-13.c: Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232231
138bc75d-0d04-0410-961f-
82ee72b054a4
rguenth [Mon, 11 Jan 2016 16:02:23 +0000 (16:02 +0000)]
2016-01-11 Richard Biener <rguenther@suse.de>
PR tree-optimization/69173
* tree-vect-loop.c (vect_fixup_scalar_cycles_with_patterns): Only
fixup the cycle if all stmts are in a pattern.
* gcc.dg/torture/pr69173.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232230
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Mon, 11 Jan 2016 15:48:40 +0000 (15:48 +0000)]
PR middle-end/68999
* alias.c (base_alias_check): Move check for addresses with
alignment ANDs before the call for compare_base_decls.
(memrefs_conflict_p): Return -1 for different decls
that went through alignment adjustments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232229
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Mon, 11 Jan 2016 14:44:22 +0000 (14:44 +0000)]
[AArch64] PR rtl-optimization/68796: Add patterns for QImode and HImode comparison with zero
PR rtl-optimization/68796
* config/aarch64/aarch64.md (*and<mode>_compare0): New pattern.
* config/aarch64/aarch64.c (aarch64_select_cc_mode): Handle HImode
and QImode comparisons against zero with CC_NZmode.
* config/aarch64/iterators.md (short_mask): New mode_attr.
* gcc.target/aarch64/tst_5.c: New test.
* gcc.target/aarch64/tst_6.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232228
138bc75d-0d04-0410-961f-
82ee72b054a4
amonakov [Mon, 11 Jan 2016 12:55:31 +0000 (12:55 +0000)]
nvptx plugin: do not force JIT target SM version
When link_ptx runs, a CUDA device is already bound to current thread, so the
driver library knows the target architecture. There isn't any benefit from
forcing a specific target here; on the contrary, hardcoding sm_30 breaks
offloading on later (Maxwell, sm_5x) devices.
* plugin/plugin-nvptx.c (link_ptx): Do not set CU_JIT_TARGET.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232227
138bc75d-0d04-0410-961f-
82ee72b054a4
hjl [Mon, 11 Jan 2016 12:33:25 +0000 (12:33 +0000)]
Remove snprintf from <avx512>_(load|store)<mode>_mask
This patch removes snprintf from <avx512>_(load|store)<mode>_mask
patterns.
* config/i386/sse.md (<avx512>_load<mode>_mask): Remove
snprintf.
(<avx512>_store<mode>_mask): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232225
138bc75d-0d04-0410-961f-
82ee72b054a4
ktkachov [Mon, 11 Jan 2016 12:13:50 +0000 (12:13 +0000)]
[RTL-ifcvt] PR rtl-optimization/68841: Make sure one basic block doesn't clobber CC reg usage of the other
PR rtl-optimization/68841
* ifcvt.c (struct noce_if_info): Add orig_x field.
(bbs_ok_for_cmove_arith): Add to_rename parameter.
Don't record conflicts on to_rename if it's present.
Allow memory destinations in sets.
(noce_try_cmove_arith): Call bbs_ok_for_cmove_arith even on simple
blocks, passing orig_x to the checks.
(noce_process_if_block): Set if_info->orig_x appropriately.
* gcc.dg/pr68841.c: New test.
* gcc.c-torture/execute/pr68841.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232223
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 11 Jan 2016 12:08:38 +0000 (12:08 +0000)]
Add missing phi args in create_parallel_loop
2016-01-11 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/69069
* tree-parloops.c (create_parallel_loop): Add missing phi args.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232221
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Mon, 11 Jan 2016 12:07:31 +0000 (12:07 +0000)]
gcc/
2016-01-11 Yuri Rumyantsev <ysrumyan@gmail.com>
PR rtl-optimization/68920
* config/i386/i386.c (ix86_option_override_internal): Restrict number
of conditional moves for RTL if-conversion to 1 for
TARGET_ONE_IF_CONV_INSN.
* config/i386/i386.h (TARGET_ONE_IF_CONV_INSN): New macros.
* config/i386/x86-tune.def (X86_TUNE_ONE_IF_CONV_INSN): New macros.
* params.def (PARAM_MAX_RTL_IF_CONVERSION_INSNS) : Introduce new
parameter to restirct number of conditional moves for
RTL if-conversion.
* doc/invoke.texi (max-rtl-if-conversion-insns): Document it.
* ifcvt.c (bb_ok_for_noce_convert_multiple_sets): Limit number of
conditionl moves.
gcc/testsuite/
2016-01-11 Yuri Rumyantsev <ysrumyan@gmail.com>
PR rtl-optimization/68920
* gcc.dg/ifcvt-4.c: Add "--param max-rtl-if-conversion-insns=3" option
for ix86 targets.
* gcc.dg/ifcvt-5.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232220
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Mon, 11 Jan 2016 10:40:33 +0000 (10:40 +0000)]
[PR69123] fix handling of MEMs in VTA to avoid dataflow oscillation
The problem arises because we used to drop overwritten MEMs from loc
lists of VALUEs, but not of other onepart variables, and it just so
happens that, by doing so, block 6 in the testcase has no D#5 in its
output in the first pass, because the MEM holding its (previous) value
was correctly dropped from value 88:88, but gains it in the second
pass because D#5 has the MEM location incoming directly in its loc
list, rather than indirectly in a VALUE.
This incorrect binding enables other blocks to believe they have a
tentative binding for D#5 in some cycles, but others, still operating
on the early conclusion, believe there isn't, and they oscillate from
that.
Since we check for escaping MEMs in clobbers, we won't lose anything
relevant by dropping call-clobbered or overwritten MEMs in all onepart
variables, and this ensures the loc intersection operation in onepart
vars won't let a MEM through that wasn't present in earlier
iterations.
for gcc/ChangeLog
PR bootstrap/69123
* var-tracking.c (drop_overlapping_mem_locs): Operate on all
onepart vars. Fix typo in comment. Fix reversed condition in
unshare test.
(dataflow_set_remove_mem_locs): Operate on all onepart vars.
for gcc/testsuite/ChangeLog
PR bootstrap/69123
* g++.dg/pr69123.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232218
138bc75d-0d04-0410-961f-
82ee72b054a4
aoliva [Mon, 11 Jan 2016 10:40:12 +0000 (10:40 +0000)]
[PR69123] make dataflow_set_different details more verbose
for gcc/ChangeLog
PR bootstrap/69123
* var-tracking.c (dump_onepart_variable_differences): New.
(dataflow_set_different): If a detailed dump is requested,
delay early returns and dump differences between onepart
variables present before and after, and added variables.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232217
138bc75d-0d04-0410-961f-
82ee72b054a4
ienkovich [Mon, 11 Jan 2016 10:27:17 +0000 (10:27 +0000)]
gcc/
PR target/69010
* expr.c (expand_expr_real_1): For boolean vector constants
with a scalar mode use const_scalar_mask_from_tree.
(const_scalar_mask_from_tree): New.
* optabs.c (expand_vec_cond_mask_expr): Use mask mode
assigned to a mask type to handle constants.
gcc/testsuite/
PR target/69010
* gcc.target/i386/pr69010.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232216
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Mon, 11 Jan 2016 10:09:17 +0000 (10:09 +0000)]
[PR ipa/69044] Do not clone for param removal when not possible
2016-01-11 Martin Jambor <mjambor@suse.cz>
PR ipa/69044
* ipa-cp.c (estimate_local_effects): Do not clone for removal of
useless parameters if we cannot change function signature.
testsuite/
* gcc.target/i386/chkp-pr69044.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232215
138bc75d-0d04-0410-961f-
82ee72b054a4
jamborm [Mon, 11 Jan 2016 10:03:44 +0000 (10:03 +0000)]
[PR ipa/66616] Copy can_change_signature flag to artificial thunks
2016-01-11 Martin Jambor <mjambor@suse.cz>
PR ipa/66616
* cgraphclones.c (duplicate_thunk_for_node): Copy can_change_signature
flag.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232214
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 11 Jan 2016 09:38:28 +0000 (09:38 +0000)]
Don't allow latch with phi in try_transform_to_exit_first_loop_alt
2016-01-11 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/69109
* tree-parloops.c (try_transform_to_exit_first_loop_alt): Don't allow
latch with phi.
* gcc.dg/autopar/pr69109-2.c: New test.
* gcc.dg/autopar/pr69109.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232212
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 11 Jan 2016 09:19:33 +0000 (09:19 +0000)]
Handle case that outer phi res is not used in a phi in gather_scalar_reductions
2016-01-11 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/69108
* tree-parloops.c (gather_scalar_reductions): Handle case that outer phi
res is not used in a phi.
* gcc.dg/autopar/pr69108.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232211
138bc75d-0d04-0410-961f-
82ee72b054a4
ygribov [Mon, 11 Jan 2016 09:06:14 +0000 (09:06 +0000)]
Fix docs for -frandom-seed.
2016-01-11 Yury Gribov <y.gribov@samsung.com>
PR 67425
* common.opt (frandom-seed): Fix parameter name.
* doc/invoke.texi (frandom-seed): Ditto and describe parameter.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232209
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Mon, 11 Jan 2016 08:55:16 +0000 (08:55 +0000)]
Don't parallelize loops if libgomp not supported
2016-01-11 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/69058
* tree-parloops.c (pass_parallelize_loops::execute): Return 0 if libgomp
not supported.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232208
138bc75d-0d04-0410-961f-
82ee72b054a4
amylaar [Mon, 11 Jan 2016 04:11:19 +0000 (04:11 +0000)]
2016-01-11 Andrew Burgess <andrew.burgess@embecosm.com>
* config/arc/arc.opt (mdiv-rem): Add period to the end.
(mcode-density): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232207
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Mon, 11 Jan 2016 00:16:14 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232206
138bc75d-0d04-0410-961f-
82ee72b054a4
ppalka [Sun, 10 Jan 2016 16:39:39 +0000 (16:39 +0000)]
Fix -Wmisleading indentation false-positive for do-while statement
gcc/c-family/ChangeLog:
PR c++/69029
* c-indentation.c (should_warn_for_misleading_indentation):
Don't warn about do-while statements.
gcc/testsuite/ChangeLog:
PR c++/69029
* c-c++-common/Wisleading-indentation.c: Augment test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232202
138bc75d-0d04-0410-961f-
82ee72b054a4
tkoenig [Sun, 10 Jan 2016 13:18:54 +0000 (13:18 +0000)]
2016-01-10 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/69154
* frontend-passes.c (in_where): New variable.
(inline_matmul_assign): Don't try this if we are within
a WHERE statement.
(gfc_code_walker): Keep track of in_where.
2016-01-10 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/69154
* gfortran.dg/inline_matmul_12.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232201
138bc75d-0d04-0410-961f-
82ee72b054a4
pault [Sun, 10 Jan 2016 12:56:28 +0000 (12:56 +0000)]
2016-01-10 Paul Thomas <pault@gcc.gnu.org>
PR fortran/67779
* trans_array.c (gfc_conv_scalarized_array_ref): Add missing
se->use_offset from condition for calculation of 'base'.
2016-01-10 Paul Thomas <pault@gcc.gnu.org>
PR fortran/67779
* gfortran.dg/actual_array_offset_1: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232200
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Sun, 10 Jan 2016 12:44:57 +0000 (12:44 +0000)]
Don't parallelize loops containing phis with addr_exprs
2016-01-10 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/69062
* tree-parloops.c (loop_has_phi_with_address_arg): New function.
(parallelize_loops): Don't paralelize loop that has phi with address
arg.
* gcc.dg/autopar/pr69062.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232199
138bc75d-0d04-0410-961f-
82ee72b054a4
tschwinge [Sun, 10 Jan 2016 12:12:38 +0000 (12:12 +0000)]
Fix scan-tree-dump syntax
gcc/testsuite/
* gcc.dg/vect/slp-perm-1.c: Fix scan-tree-dump syntax.
* gcc.dg/vect/slp-perm-2.c: Likewise.
* gcc.dg/vect/slp-perm-3.c: Likewise.
* gcc.dg/vect/slp-perm-5.c: Likewise.
* gcc.dg/vect/slp-perm-6.c: Likewise.
* gcc.dg/vect/slp-perm-7.c: Likewise.
* gcc.dg/vect/slp-perm-8.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232197
138bc75d-0d04-0410-961f-
82ee72b054a4
vries [Sun, 10 Jan 2016 09:12:03 +0000 (09:12 +0000)]
Only allow single exit phi for reduction in try_create_reduction_list
2016-01-10 Tom de Vries <tom@codesourcery.com>
PR tree-optimization/69039
* tree-parloops.c (try_create_reduction_list): Only allow single exit
phi for reduction.
* gcc.dg/autopar/pr69039.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232196
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sun, 10 Jan 2016 00:16:13 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232194
138bc75d-0d04-0410-961f-
82ee72b054a4
danglin [Sat, 9 Jan 2016 18:13:44 +0000 (18:13 +0000)]
PR middle-end/68743
* match.pd: Require target has function_c99_misc before doing
truncl(extend(x)) and trunc(extend(x)) -> extend(truncf(x)), etc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232191
138bc75d-0d04-0410-961f-
82ee72b054a4
gerald [Sat, 9 Jan 2016 13:25:22 +0000 (13:25 +0000)]
* configure.ac (isl_options_set_schedule_serialize_sccs): Also
use GMPINC.
* configure: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232190
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Sat, 9 Jan 2016 11:15:26 +0000 (11:15 +0000)]
PR c++/69113
* decl2.c (comdat_linkage): Only set DECL_COMDAT if TREE_PUBLIC is set.
* g++.dg/pr69113.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232189
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Sat, 9 Jan 2016 07:37:04 +0000 (07:37 +0000)]
PR middle-end/50865
PR tree-optimization/69097
* fold-const.h (expr_not_equal_to): New prototype.
* fold-const.c: Include stringpool.h and tree-ssanames.h.
(expr_not_equal_to): New function.
* match.pd (X % -Y is the same as X % Y): Don't optimize
unless X is known not to be equal to minimum or Y is known
not to be equal to -1.
* tree-vrp.c (simplify_div_or_mod_using_ranges): Add GSI argument.
fold TRUNC_MOD_EXPR if the second argument is not a power of two.
(simplify_stmt_using_ranges): Adjust caller.
(vrp_finalize): Call set_value_range on SSA_NAMEs before calling
substitute_and_fold.
* gcc.c-torture/execute/pr50865.c: New test.
* gcc.c-torture/execute/pr69097-1.c: New test.
* gcc.c-torture/execute/pr69097-2.c: New test.
* gcc.dg/pr69097-1.c: New test.
* gcc.dg/pr69097-2.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232188
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Sat, 9 Jan 2016 07:34:41 +0000 (07:34 +0000)]
PR c++/69164
* class.c (layout_class_type): Use copy_node to copy FIELD_DECLs.
* g++.dg/opt/pr69164.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232187
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Sat, 9 Jan 2016 05:12:03 +0000 (05:12 +0000)]
PR c++/69158
* constexpr.c (cxx_fold_indirect_ref): Handle array type differing
in completion.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232186
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Sat, 9 Jan 2016 00:16:11 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232184
138bc75d-0d04-0410-961f-
82ee72b054a4
hubicka [Fri, 8 Jan 2016 21:19:04 +0000 (21:19 +0000)]
* ipa-icf.c (sem_item_optimizer::merge_classes): Do not ICE on VAR_DECL
w/o DECL_NAME.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232179
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 8 Jan 2016 20:50:24 +0000 (20:50 +0000)]
PR tree-optimization/69167
* gimple-fold.c (replace_stmt_with_simplification): Also punt if
new SSA_NAME_OCCURS_IN_ABNORMAL_PHI SSA_NAMEs appear in operands of
ops[0] comparison.
* gimple-match-head.c (maybe_push_res_to_seq): Likewise.
* gcc.dg/pr69167.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232178
138bc75d-0d04-0410-961f-
82ee72b054a4
mpolacek [Fri, 8 Jan 2016 19:08:37 +0000 (19:08 +0000)]
PR c++/68449
* constexpr.c (cxx_eval_constant_expression): Handle NULL initializer.
* g++.dg/pr68449.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232176
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Fri, 8 Jan 2016 18:02:35 +0000 (18:02 +0000)]
[PATCH] Fix PR68707
gcc/:
* tree-vect-slp.c (vect_analyze_slp_instance): Cancel permuted SLP
instances that can be handled via vect_load_lanes.
gcc/testsuite/:
* lib/target-supports.exp (check_effective_target_vect_load_lanes): New.
* gcc.dg/vect/slp-perm-1.c: Look for vect_load_lanes instead of SLP
on platforms supporting it.
* gcc.dg/vect/slp-perm-2.c: Likewise.
* gcc.dg/vect/slp-perm-3.c: Likewise.
* gcc.dg/vect/slp-perm-5.c: Likewise.
* gcc.dg/vect/slp-perm-7.c: Likewise.
* gcc.dg/vect/slp-perm-8.c: Likewise.
* gcc.dg/vect/slp-perm-6.c: Look for vect_load_lanes in addition to SLP
on platforms supporting it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232174
138bc75d-0d04-0410-961f-
82ee72b054a4
uros [Fri, 8 Jan 2016 16:13:18 +0000 (16:13 +0000)]
* symtab.c (symtab_node::equal_address_to): Return -1 instead of 2
if we can't determine address equivalence.
* alias.c (compare_base_decl): Update for changed return value of
symtab_node::equal_address_to.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232172
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 8 Jan 2016 16:01:17 +0000 (16:01 +0000)]
* constexpr.c (cxx_eval_call_expression): Remove convert_to_void
workaround.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232168
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 8 Jan 2016 16:01:12 +0000 (16:01 +0000)]
PR c++/68983 (BE)
PR c++/67557
gcc/
* function.c (assign_temp): Guard against TREE_ADDRESSABLE types here.
* expr.c (store_field): Not here.
* tree-cfgcleanup.c (fixup_noreturn_call): Don't clear LHS of a
call with TREE_ADDRESSABLE type.
* tree-cfg.c (verify_gimple_call): Adjust.
gcc/cp/
* cvt.c (convert_to_void): Don't strip a TARGET_EXPR of
TREE_ADDRESSABLE type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232167
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 8 Jan 2016 16:01:05 +0000 (16:01 +0000)]
PR c++/68983 (FE)
PR c++/67557
* call.c (unsafe_copy_elision_p): Look through COMPOUND_EXPR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232166
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 8 Jan 2016 14:59:36 +0000 (14:59 +0000)]
Use -std option in test for C99 macros in <cmath>
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++.cc: Rename to ...
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++98.cc: Here and add -std=gnu++98.
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++0x.cc: Rename to ...
* testsuite/26_numerics/headers/cmath/
c99_classification_macros_c++11.cc: Here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232165
138bc75d-0d04-0410-961f-
82ee72b054a4
hainque [Fri, 8 Jan 2016 14:34:08 +0000 (14:34 +0000)]
* config/vxworks.h (VXWORKS_LIBGCC_SPEC): Don't link shared RTPs with
libc_internal.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232164
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 8 Jan 2016 13:19:25 +0000 (13:19 +0000)]
Fix PR number in previous commit
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232163
138bc75d-0d04-0410-961f-
82ee72b054a4
redi [Fri, 8 Jan 2016 13:14:01 +0000 (13:14 +0000)]
Add missing include for std::__addressof
PR libstdc++/69160
* include/bits/uses_allocator.h: Add missing include.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232162
138bc75d-0d04-0410-961f-
82ee72b054a4
alalaw01 [Fri, 8 Jan 2016 11:15:58 +0000 (11:15 +0000)]
[PATCH][RS6000] Migrate reduction optabs in paired.md
* gcc.target/rs6000/paired.md (reduc_smax_v2sf): Rename to...
(reduc_smax_scal_v2sf): ...here, make result SFmode, extract element.
(reduc_smin_v2sf): Rename to...
(reduc_smin_scal_v2sf): ...here, make result SFmode, extract element.
(reduc_splus_v2sf): Rename to...
(reduc_plus_scal_v2sf): ...here, make result SFmode, extract element.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232158
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 8 Jan 2016 10:14:29 +0000 (10:14 +0000)]
PR tree-optimization/69162
* gimplify.c (gimplify_va_arg_expr): Encode original type of
valist argument in another argument.
(gimplify_modify_expr): Adjust for the above change. Cleanup.
* tree-stdarg.c (expand_ifn_va_arg_1): Use new 3rd argument
to determine the va_list type, build a MEM_REF instead of
build_fold_indirect_ref.
* gcc.dg/pr69162.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232156
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 8 Jan 2016 10:13:23 +0000 (10:13 +0000)]
PR tree-optimization/69172
* gimple-fold.c (gimple_fold_builtin_memory_chk): Pass type to
gimple_build.
* gcc.dg/pr69172.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232155
138bc75d-0d04-0410-961f-
82ee72b054a4
thopre01 [Fri, 8 Jan 2016 09:21:19 +0000 (09:21 +0000)]
2016-01-08 Thomas Preud'homme <thomas.preudhomme@arm.com>
gcc/
PR tree-optimization/67781
* tree-ssa-math-opts.c (find_bswap_or_nop): Zero out bytes in cmpxchg
and cmpnop in two steps: first the ones not accessed in original
gimple expression in a endian independent way and then the ones not
accessed in the final result in an endian-specific way.
gcc/testsuite/
PR tree-optimization/67781
* gcc.c-torture/execute/pr67781.c: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232154
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 8 Jan 2016 08:37:17 +0000 (08:37 +0000)]
PR tree-optimization/69083
* tree-vect-slp.c (vect_get_constant_vectors): For
VECTOR_BOOLEAN_TYPE_P assert op is fold_convertible_p to vector_type's
element type. If op is fold_convertible_p to vector_type's element
type, use NOP_EXPR instead of VCE.
* gcc.dg/vect/pr69083.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232153
138bc75d-0d04-0410-961f-
82ee72b054a4
ssaraswati [Fri, 8 Jan 2016 08:35:02 +0000 (08:35 +0000)]
Restrict to linux and gnu targets as not all math.h implementations support the
issignaling macro. Use -fexcess-precision=standard for compiler options. Use fabs()
only when __FLT_EVAL_METHOD__ == 0.
gcc/testsuite/
* gcc.dg/pr61441.c: Restrict to linux and gnu targets.
Use -fexcess-precision=standard for compiler options.
Use fabs() only when __FLT_EVAL_METHOD__ == 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232152
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 8 Jan 2016 06:45:18 +0000 (06:45 +0000)]
PR fortran/69128
* trans.h (OMPWS_SCALARIZER_BODY): Define.
(OMPWS_NOWAIT): Renumber.
* trans-stmt.c (gfc_trans_where_3): Only set OMPWS_SCALARIZER_WS
if OMPWS_SCALARIZER_BODY is not set already, and set also
OMPWS_SCALARIZER_BODY until the final loop creation.
* trans-expr.c (gfc_trans_assignment_1): Likewise.
* trans-openmp.c (gfc_trans_omp_workshare): Also clear
OMPWS_SCALARIZER_BODY.
* trans-array.c (gfc_trans_scalarized_loop_end): Don't create
OMP_FOR if OMPWS_SCALARIZER_BODY is set.
* gfortran.dg/gomp/pr69128.f90: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232151
138bc75d-0d04-0410-961f-
82ee72b054a4
jakub [Fri, 8 Jan 2016 06:43:31 +0000 (06:43 +0000)]
PR c++/69145
* files.c (cpp_included_before): If IS_ADHOC_LOC (location), lookup
real location from the line_table.
* g++.dg/ext/pr69145-1.C: New test.
* g++.dg/ext/pr69145-2-very-long-filename.cc: New file.
* g++.dg/ext/pr69145-2.h: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232150
138bc75d-0d04-0410-961f-
82ee72b054a4
segher [Fri, 8 Jan 2016 03:58:40 +0000 (03:58 +0000)]
shrink-wrap: Once more PRs 67778, 68634, and now 68909
If a candidate PRE cannot get the prologue because a block BB is
reachable from it, but PRE does not dominate BB, we try again with the
dominators of PRE. That "try again" needs to again consider BB though,
we aren't done with it.
PR rtl-optimization/67778
PR rtl-optimization/68634
PR rtl-optimization/68909
* shrink-wrap.c (try_shrink_wrapping): Add comment. Don't pop
block from the stack until done with it. Remove a superfluous
bitmap set. Remove a superfluous bitmap test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232148
138bc75d-0d04-0410-961f-
82ee72b054a4
msebor [Fri, 8 Jan 2016 01:00:25 +0000 (01:00 +0000)]
PR c/68966 - atomic_fetch_* on atomic_bool not diagnosed
gcc/ChangeLog:
* doc/extend.texi (__atomic Builtins, __sync Builtins): Document
constraint on the type of arguments.
gcc/c-family/ChangeLog:
* c-common.c (sync_resolve_size): Reject first argument when it's
a pointer to _Bool.
gcc/testsuite/ChangeLog:
* gcc.dg/atomic-fetch-bool.c: New test.
* gcc.dg/sync-fetch-bool.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232147
138bc75d-0d04-0410-961f-
82ee72b054a4
gccadmin [Fri, 8 Jan 2016 00:16:15 +0000 (00:16 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232146
138bc75d-0d04-0410-961f-
82ee72b054a4
vapier [Thu, 7 Jan 2016 22:18:09 +0000 (22:18 +0000)]
longlong: fix sh -Wundef builds
This file fails when building for SuperH as it assumes __SHMEDIA__
is always defined. Update the code to check if it's defined.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@232143
138bc75d-0d04-0410-961f-
82ee72b054a4