aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2016-03-22re PR c++/70295 (bogus -Wnonnull-compare for "dynamic_cast<const FuSelection ↵Jakub Jelinek5-1/+37
*>(this) != nullptr") PR c++/70295 * gimplify.c (gimplify_modify_expr): Call gimple_set_no_warning on assign if (*from_p) is a comparison, set it to TREE_NO_WARNING (*from_p). * c-c++-common/nonnull-1.c (func): Remove parens around cp4 != 0. (func2): New function for cond with parens, xfail warning for c++. * g++.dg/warn/Wnonnull-compare-8.C: New test. From-SVN: r234392
2016-03-22Fix PR c++/70096 (wrong code for pointer-to-member-function copy)Patrick Palka4-0/+57
gcc/cp/ChangeLog: PR c++/70096 * pt.c (tsubst_decl): Clear the DECL_MODE of the new decl. gcc/testsuite/ChangeLog: PR c++/70096 * g++.dg/template/ptrmem30.C: New test. From-SVN: r234391
2016-03-22Fix PR c++/70204 (ICE in non_const_var_error)Patrick Palka5-1/+42
gcc/cp/ChangeLog: PR c++/70204 * constexpr.c (non_const_var_error): Check DECL_INITIALIZED_BY_CONSTANT_EXPRESSION_P. gcc/testsuite/ChangeLog: PR c++/70204 * g++.dg/cpp0x/constexpr-70204a.C: New test. * g++.dg/cpp0x/constexpr-70204b.C: New test. From-SVN: r234390
2016-03-22Daily bump.GCC Administrator1-1/+1
From-SVN: r234389
2016-03-21re PR middle-end/70273 (FAIL: g++.dg/ext/label13a.C -std=gnu++98 execution ↵Richard Henderson2-7/+30
test / scan-assembler _ZN1CC4Ev) PR c++/70273 * decl.c (notice_forced_label_r): New. (cp_finish_decl): Use it. From-SVN: r234386
2016-03-21re PR c++/70285 (ICE on valid code on x86_64-linux-gnu: verify_gimple failed)Jason Merrill3-0/+26
PR c++/70285 * cp-gimplify.c (cp_fold) [COND_EXPR]: Handle bit-fields. From-SVN: r234384
2016-03-21re PR rtl-optimization/70326 (ICE: RTL check: expected elt 3 type 'e' or ↵Jakub Jelinek4-0/+34
'u', have '0' (rtx note) in PATTERN, at rtl.h:1440) PR middle-end/70326 * lra.c (restore_scratches): Ignore deleted insns. * gcc.dg/pr70326.c: New test. From-SVN: r234383
2016-03-21re PR tree-optimization/70317 (folding x<=x to true for large vectors, ↵Marc Glisse4-2/+41
ignoring nans) PR tree-optimization/70317 * match.pd (cmp @0 @0): Pass @0 instead of TYPE_MODE (TREE_TYPE (@0)) to HONOR_NANS. * gcc.dg/pr70317.c: New test. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r234382
2016-03-21re PR target/70327 (ICE: in extract_insn, at recog.c:2287 (unrecognizable ↵Uros Bizjak4-20/+46
insn) with -mavx512ifma and v4ti argument) PR target/70327 * config/i386/i386.md (movxi): Use ix86_expand_vector_move instead of ix86_expand_move. (movoi): Ditto. (movti): Use general_operand for operand 1 predicate. testsuite/ChangeLog: PR target/70327 * gcc.target/i386/pr70327.c: New test. From-SVN: r234380
2016-03-21HSA: enhance dump outputMartin Liska2-1/+11
* hsa-dump.c (dump_hsa_insn_1): dump default branch of SBR insns. (dump_hsa_symbol): Dump BRIG offset of hsa_symbols. From-SVN: r234379
2016-03-21Skip static ctors/dtors in IPA ICF (PR ipa/70306)Martin Liska4-0/+59
* gcc.dg/ipa/pr70306.c: New test. * ipa-icf.c (sem_function::parse): Skip static constructors and destructors. From-SVN: r234378
2016-03-21attr-align1.c: Skip if M-profile.Andre Vieira5-0/+11
2016-03-21 Andre Vieira <andre.simoesdiasvieira@arm> gcc/testsuite/ * gcc.target/arm/attr-align1.c: Skip if M-profile. * gcc.target/arm/attr-align3.c: Likewise. * gcc.target/arm/attr_arm.c: Likewise. * gcc.target/arm/flip-thumb.c: Likewise. From-SVN: r234373
2016-03-21re PR target/70296 (Incorrect handling of vector X; if X is function-like macro)Jakub Jelinek4-1/+74
PR target/70296 * include/cpplib.h (cpp_fun_like_macro_p): New prototype. * macro.c (cpp_fun_like_macro_p): New function. * config/rs6000/rs6000-c.c (rs6000_macro_to_expand): If IDENT is function-like macro, peek following token(s) if it is followed by CPP_OPEN_PAREN token with optional padding in between, and if not, don't treat it like a macro. * gcc.target/powerpc/altivec-36.c: New test. From-SVN: r234371
2016-03-21[nvptx] Don't emit sorry for the stabs debug formatThomas Schwinge2-4/+6
* config/nvptx/nvptx.c (nvptx_option_override): Don't emit sorry for the stabs debug format. Co-Authored-By: Alexander Monakov <amonakov@ispras.ru> From-SVN: r234370
2016-03-21re PR tree-optimization/70310 (wrong code with vector compare at -O0)Richard Biener4-1/+32
2016-03-21 Richard Biener <rguenther@suse.de> PR tree-optimization/70310 * tree-vect-generic.c (expand_vector_condition): Fold the built condition. * gcc.dg/torture/pr70310.c: New testcase. From-SVN: r234369
2016-03-21re PR target/70293 ([ICE, AVX-512] Wrong reg constraints in vec_dup)Kirill Yukhin4-1/+51
PR target/70293 gcc/ * config/i386 (define_insn "*vec_dup<mode>"/AVX2): Block third alternative for AVX-512VL target, gcc/testsuite/ * gcc.target/i386/pr70293.c: New test. From-SVN: r234363
2016-03-21Retry to emit global variables in HSA (PR hsa/70234)Martin Liska4-3/+34
PR hsa/70234 * hsa-brig.c (emit_function_directives): Mark unemitted global variables for emission. * hsa-gen.c (hsa_symbol::hsa_symbol): Initialize a new flag. (get_symbol_for_decl): Likewise. * hsa.h (struct hsa_symbol): New flag. From-SVN: r234362
2016-03-21re PR tree-optimization/70288 (ICE with -O1 -fno-tree-dominator-opts)Richard Biener5-2/+92
2016-03-21 Richard Biener <rguenther@suse.de> PR tree-optimization/70288 * tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Make sure we do not estimate unsimplified all-constant conditionals or switches as optimized away. * gcc.dg/torture/pr70288-1.c: New testcase. * gcc.dg/torture/pr70288-2.c: Likewise. From-SVN: r234361
2016-03-21re PR rtl-optimization/69307 (wrong code with -O2 -fselective-scheduling @ ↵Andrey Belevantsev2-0/+39
armv7a) PR rtl-optimization/69307 * gcc.target/arm/pr69307.c: New test. From-SVN: r234360
2016-03-21re PR rtl-optimization/69102 (ICE: in move_op_ascend, at sel-sched.c:6138 ↵Andrey Belevantsev4-1/+34
with -fselective-scheduling2) gcc/ PR rtl-optimization/69102 * sched-deps.c (sched_analyze_insn): Do not set last_args_size field when we have a readonly dependency context. testsuite/ PR rtl-optimization/69102 * gcc.c-torture/compile/pr69102.c: New test. From-SVN: r234359
2016-03-21Daily bump.GCC Administrator1-1/+1
From-SVN: r234358
2016-03-20Daily bump.GCC Administrator1-1/+1
From-SVN: r234355
2016-03-19re PR fortran/69043 (Trying to include a directory causes an infinite loop)Jerry DeLisle2-1/+6
2016-03-19 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/69043 * scanner.c (load_file): Update to use S_ISREG macro. From-SVN: r234352
2016-03-19Daily bump.GCC Administrator1-1/+1
From-SVN: r234350
2016-03-18re PR c++/70139 (-fno-elide-constructor makes static std::regex to throw)Jason Merrill3-20/+50
PR c++/70139 * constexpr.c (cxx_eval_call_expression): Fix trivial copy. From-SVN: r234345
2016-03-18re PR rtl-optimization/70263 (ICE at -O1 and above in both 32-bit and 64-bit ↵Jeff Law5-2/+68
modes on x86_64-linux-gnu (segmentation fault)) PR rtl-optimization/70263 * ira.c (memref_used_between_p): Assert we found END in the insn chain. (update_equiv_regs): When trying to move a store to after the insn that sets the source of the store, make sure the store occurs after the insn that sets the source of the store. When successful note the REG_EQUIV note created in the dump file. PR rtl-optimization/70263 * gcc.c-torture/compile/pr70263-1.c: New test. * gcc.target/i386/pr70263-2.c: New test. From-SVN: r234344
2016-03-18David Wohlferd's patch to document more issues with basic asmsDavid Wohlferd2-11/+31
* doc/extend.texi: Document more potential problems with basic asms. From-SVN: r234343
2016-03-18Fix PR70278, a problem with the previous split_reg changeBernd Schmidt5-1/+96
PR rtl-optimization/70278 * lra-constraints.c (split_reg): Handle the case where biggest_mode is VOIDmode. testsuite/ * gcc.dg/torture/pr70278.c: New test. * gcc.target/arm/pr70278.c: New test. From-SVN: r234342
2016-03-18PR c/70281: C FE: fix uninitialized range for __builtin_types_compatible_pDavid Malcolm5-2/+44
gcc/c/ChangeLog: PR c/70281 * c-parser.c (c_parser_postfix_expression): Set the source range for uses of "__builtin_types_compatible_p". gcc/testsuite/ChangeLog: PR c/70281 * gcc.dg/plugin/diagnostic-test-expressions-1.c (test_builtin_types_compatible_p): New test function. * gcc.dg/pr70281.c: New test case. From-SVN: r234340
2016-03-18PR c++/70147 - handle primary virtual basesJason Merrill5-17/+131
* class.c (vptr_via_virtual_p): New. (most_primary_binfo): Factor out of build_rtti_vtbl_entries. * cp-ubsan.c (cp_ubsan_dfs_initialize_vtbl_ptrs): Don't clear a vptr from any virtual base in a not-in-charge 'structor. From-SVN: r234335
2016-03-18Avoid clobbering primary virtual base when not in charge.Jason Merrill3-24/+44
* decl.c (build_clobber_this): Factor out of start_preparsed_function and begin_destructor_body. Handle virtual bases better. From-SVN: r234334
2016-03-18class.c (build_if_in_charge): Split out from build_base_path.Jason Merrill5-22/+31
* class.c (build_if_in_charge): Split out from build_base_path. * init.c (expand_virtual_init, expand_default_init): Use it. * call.c (build_special_member_call): Use it. From-SVN: r234333
2016-03-18* calls.c (load_register_parameters): Fix zero size sibcall logic.Jason Merrill3-3/+14
From-SVN: r234332
2016-03-18re PR target/70113 ([AArch64] -mpc-relative-literal-loads conflicts with ↵Christophe Lyon2-1/+6
fix-cortex-a53-843419) 2016-03-18 Christophe Lyon <christophe.lyon@linaro.org> PR target/70113 * gcc.target/aarch64/pr63304_1.c: Add -mno-fix-cortex-a53-843419. From-SVN: r234330
2016-03-18sse.md: Use vpbroadcastq for broadcasting DF values to 128b regs.Kirill Yukhin2-1/+13
gcc/ * config/i386/sse.md: Use vpbroadcastq for broadcasting DF values to 128b regs. From-SVN: r234325
2016-03-18re PR tree-optimization/70252 (ICE in vect_get_vec_def_for_stmt_copy with ↵Ilya Enkovich4-4/+46
-O3 -march=skylake-avx512.) gcc/ PR tree-optimization/70252 * tree-vect-stmts.c (supportable_widening_operation): Check resulting boolean vector has a proper number of elements. (supportable_narrowing_operation): Likewise. gcc/testsuite/ PR tree-optimization/70252 * gcc.dg/pr70252.c: New test. From-SVN: r234323
2016-03-18Add testcases for pr70161Tom de Vries3-0/+19
2016-03-18 Tom de Vries <tom@codesourcery.com> * gcc.dg/pr70161-2.c: New test. * gcc.dg/pr70161.c: New test. From-SVN: r234322
2016-03-18Set dump_file to NULL in cgraph_node::get_bodyTom de Vries4-0/+18
2016-03-18 Tom de Vries <tom@codesourcery.com> PR ipa/70269 * cgraph.c (cgraph_node::get_body): Set dump_file to NULL after save. * gcc.dg/pr70269.c: New test. From-SVN: r234321
2016-03-18reload1.c (emit_input_reload_insns): Use simplify_replace_rtx instead of ↵Jakub Jelinek2-1/+8
replace_rtx for DEBUG_INSNs. * reload1.c (emit_input_reload_insns): Use simplify_replace_rtx instead of replace_rtx for DEBUG_INSNs. From-SVN: r234320
2016-03-18re PR c++/70267 (ICE on invalid code at -O1 and above on x86_64-linux-gnu in ↵Jakub Jelinek4-0/+58
propagate_necessity, at tree-ssa-dce.c:924) PR c++/70267 * init.c (build_new_1): Complain and return error_mark_node if alloc_fn is not _Jv_AllocObject function returning pointer. * g++.dg/ext/java-3.C: New test. From-SVN: r234319
2016-03-18Fix latencies in znver1.mdVenkataramanan Kumar2-45/+50
2016-03-18 Venkataramanan Kumar <venkataramanan.kumar@amd.com> * config/i386/znver1.md : Fix latencies of FP/SSE/AVX load type reservations. From-SVN: r234318
2016-03-18Fix PR c++/70205 (ICE on valid call to qualified static member function)Patrick Palka4-1/+26
gcc/cp/ChangeLog: PR c++/70205 * search.c (adjust_result_of_qualified_name_lookup): Don't update the BASELINK_BINFO of DECL if the second call to lookup_base fails. gcc/testsuite/ChangeLog: PR c++/70205 * g++.dg/lookup/pr70205.C: New test. From-SVN: r234317
2016-03-18Fix PR c++/70218 (illegal access to private field succeeds)Patrick Palka4-2/+31
gcc/cp/ChangeLog: PR c++/70218 * parser.c (cp_parser_lambda_expression): Move call to pop_deferring_access_checks ahead of the call to cp_parser_end_tentative_firewall. gcc/testsuite/ChangeLog: PR c++/70218 * g++.dg/cpp0x/lambda/lambda-70218.C: New test. From-SVN: r234316
2016-03-18Daily bump.GCC Administrator1-1/+1
From-SVN: r234315
2016-03-18re PR middle-end/70280 (-fcompare-debug failure (length) with ↵Jakub Jelinek2-3/+13
--param=integer-share-limit=4016 -mavx512bw) PR c/70280 * c-typeck.c (composite_type): Don't count void_list_node into len, if the list is terminated by void_list_node, start with void_list_node instead of NULL for newargs. Stop at void_list_node. From-SVN: r234312
2016-03-17re PR target/70188 (gcc 4.9+ miscompiles code on hppa)John David Anglin2-2/+8
PR target/70188 * config/pa/constraints.md: Revert 2015-02-13 change. Use define_constraint for "Q" and "T" constraints. From-SVN: r234308
2016-03-17Tweak the pipeline model for Exynos M1Evandro Menezes2-1/+8
* gcc/config/aarch64/aarch64.c (exynosm1_tunings): Enable the weak prefetching model. From-SVN: r234307
2016-03-17re PR c/69407 (-Wunused-value on __atomic_fetch_OP and __atomic_OP_fetch)Marek Polacek4-0/+26
PR c/69407 * c-common.c (resolve_overloaded_builtin): Set TREE_USED for the fetch operations. * gcc.dg/atomic-op-6.c: New test. From-SVN: r234304
2016-03-17PR c/70264: fix crash in compatible_locations_p with BUILTINS_LOCATIONDavid Malcolm4-0/+30
In r234088 my fix for PR c++/70105 didn't allow for the possibility that when comparing a pair of macro expansion histories that one of the macros in the history might not be located within a line-map, and PR c/70264 reports a crash due to encountering BUILTINS_LOCATION within the traversal. Fixed thusly. Successfully bootstrapped on x86_64-pc-linux-gnu; adds 4 PASS results to gcc.sum and 12 to g++.sum. gcc/ChangeLog: PR c/70264 * diagnostic-show-locus.c (compatible_locations_p): Handle the case where one or both locations aren't within a line_map. gcc/testsuite/ChangeLog: PR c/70264 * c-c++-common/pr70264.c: New test case. From-SVN: r234303
2016-03-17re PR tree-optimization/70144 (g++ ICE at -O1 and above on valid code on ↵Jakub Jelinek6-11/+58
x86_64-linux-gnu in "copy_reference_ops_from_ref") PR c++/70144 * cp-tree.h (magic_varargs_p): Return int instead of bool. * call.c (magic_varargs_p): Return int instead of bool, return 2 for Cilk+ reductions, otherwise 1 for magic varargs and 0 for normal varargs. (build_over_call): If magic_varargs_p == 2, call reject_gcc_builtin, if magic_varargs_p == 1, call decay_conversion instead of mark_type_use. Don't store error_mark_node arguments to argarray, instead return error_mark_node. * c-c++-common/pr70144-1.c: New test. * c-c++-common/pr70144-2.c: New test. From-SVN: r234297