aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2017-08-03re PR target/81621 (ICE in delete_insn, at cfgrtl.c:167 with s390x cross ↵Jakub Jelinek4-5/+23
compiler) PR target/81621 * bb-reorder.c (pass_partition_blocks::execute): Return TODO_df_finish after setting changeable df flags. * gcc.dg/pr81621.c: New test. From-SVN: r250857
2017-08-03lto-symtab.h (lto_symtab_prevail_decl): Do not use DECL_ABSTRACT_ORIGIN as ↵Richard Biener2-4/+11
flag we can end up using that. 2017-08-03 Richard Biener <rguenther@suse.de> * lto-symtab.h (lto_symtab_prevail_decl): Do not use DECL_ABSTRACT_ORIGIN as flag we can end up using that. Instead use DECL_LANG_FLAG_0. (lto_symtab_prevail_decl): Likewise. From-SVN: r250856
2017-08-03tree-ssa-reassoc.c (should_break_up_subtract): Also break up if the use is ↵Richard Biener4-4/+17
in USE - X. 2017-08-03 Richard Biener <rguenther@suse.de> * tree-ssa-reassoc.c (should_break_up_subtract): Also break up if the use is in USE - X. * gcc.dg/tree-ssa/reassoc-23.c: Adjust to fool early folding and CSE. From-SVN: r250855
2017-08-03toplev: avoid recursive emergency_dump_functionAlexander Monakov2-0/+18
* toplev.c (dumpfile.h): New include. (internal_error_reentered): New static function. Use it... (internal_error_function): ...here to handle reentered internal_error. From-SVN: r250854
2017-08-03re PR sanitizer/81148 (UBSAN: two more false positives)Richard Biener4-52/+112
2017-08-03 Richard Biener <rguenther@suse.de> PR middle-end/81148 * fold-const.c (split_tree): Add minus_var and minus_con arguments, remove unused loc arg. Never generate NEGATE_EXPRs here but always use minus_*. (associate_trees): Assert we never associate with MINUS_EXPR and NULL first operand. Do not recurse for PLUS_EXPR operands when associating as MINUS_EXPR either. (fold_binary_loc): Track minus_var and minus_con. * c-c++-common/ubsan/pr81148.c: New testcase. From-SVN: r250853
2017-08-03Apply finish_options on DECL_FUNCTION_SPECIFIC_OPTIMIZATION for ACCEL_COMPILERTom de Vries2-0/+23
2017-08-03 Tom de Vries <tom@codesourcery.com> PR lto/81430 * tree-streamer-in.c (lto_input_ts_function_decl_tree_pointers): If ACCEL_COMPILER, apply finish_options on DECL_FUNCTION_SPECIFIC_OPTIMIZATION. From-SVN: r250852
2017-08-03Error out on nvptx for fpatchable-function-entryTom de Vries4-0/+30
2017-08-03 Tom de Vries <tom@codesourcery.com> PR target/81662 * config/nvptx/nvptx.c (nvptx_option_override): Emit sorry if function_entry_patch_area_size > 0. * gcc.target/nvptx/patchable_function_entry-default.c: New test. From-SVN: r250851
2017-08-03re PR driver/81650 (gcc -m32 mishandles ↵Jakub Jelinek4-12/+38
-Walloc-size-larger-than=9223372036854775807) PR driver/81650 * calls.c (alloc_max_size): Use HOST_WIDE_INT_UC (10??) instead of 10??LU, perform unit multiplication in wide_int, don't change alloc_object_size_limit if the limit is larger than SSIZE_MAX. * gcc.dg/pr81650.c: New test. From-SVN: r250850
2017-08-03re PR tree-optimization/81655 (new test case gcc.dg/tree-ssa/pr81588.c fails ↵Jakub Jelinek2-4/+21
on powerpc64) PR tree-optimization/81655 PR tree-optimization/81588 * tree-ssa-reassoc.c (optimize_range_tests_var_bound): Handle also the case when ranges[i].low and high are 1 for unsigned type with precision 1. From-SVN: r250849
2017-08-03re PR c++/71440 (ICE on invalid C++ code in instantiate_type, at ↵Paolo Carlini4-3/+36
cp/class.c:8247) /cp 2017-08-03 Paolo Carlini <paolo.carlini@oracle.com> PR c++/71440 * typeck.c (build_x_unary_op): Avoid pretty-printing constructor / destructor as expressions. /testsuite 2017-08-03 Paolo Carlini <paolo.carlini@oracle.com> PR c++/71440 * g++.dg/template/crash127.C: New. From-SVN: r250848
2017-08-03re PR middle-end/81052 (ICE in verify_dominators, at dominance.c:1184)Jakub Jelinek4-2/+41
PR middle-end/81052 * omp-low.c (diagnose_sb_0): Handle flag_openmp_simd like flag_openmp. (pass_diagnose_omp_blocks::gate): Enable also for flag_openmp_simd. * c-c++-common/pr81052.c: New test. From-SVN: r250847
2017-08-03tree-vrp.h: Add include guard.Prathamesh Kulkarni2-0/+8
2017-08-03 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> * tree-vrp.h: Add include guard. From-SVN: r250846
2017-08-03Require alias for gcc.dg/pr56727-2.cTom de Vries2-0/+5
2017-08-03 Tom de Vries <tom@codesourcery.com> * gcc.dg/pr56727-2.c: Require alias. From-SVN: r250845
2017-08-03Require alloca for gcc.dg/attr-noipa.cTom de Vries2-0/+5
2017-08-03 Tom de Vries <tom@codesourcery.com> * gcc.dg/attr-noipa.c: Require alloca. From-SVN: r250844
2017-08-03Require label_values for gcc.dg/torture/pr80163.cTom de Vries2-0/+5
2017-08-03 Tom de Vries <tom@codesourcery.com> * gcc.dg/torture/pr80163.c: Require label_values. From-SVN: r250843
2017-08-03Skip fpatchable-function-entry tests for nvptxTom de Vries4-3/+10
2017-08-03 Tom de Vries <tom@codesourcery.com> PR target/81662 * c-c++-common/patchable_function_entry-decl.c: Skip for nvptx. * c-c++-common/patchable_function_entry-default.c: Same. * c-c++-common/patchable_function_entry-definition.c: Same. From-SVN: r250842
2017-08-03Daily bump.GCC Administrator1-1/+1
From-SVN: r250841
2017-08-02compiler: only finalize embedded fields before finalizing methodsIan Lance Taylor2-8/+35
When finalizing the methods of a named struct type, we used to finalize all the field types first. That can fail if the field types refer indirectly to the named type. Change it to just finalize the embedded field types first, and the rest of the fields later. Fixes golang/go#21253 Reviewed-on: https://go-review.googlesource.com/52570 From-SVN: r250832
2017-08-02* ChangeLog: Fix my last entry.Uros Bizjak1-1/+1
From-SVN: r250831
2017-08-02re PR target/81644 (ICE in rtl_verify_bb_insn, BBRO pass duplicates BB that ↵Uros Bizjak5-1/+42
ends with flow control insn) PR target/81644 * config/i386/i386.md (unspecv): Add UNSPECV_UD2. (ud2): New insn pattern. * config/i386/i386.c (ix86_expand_epilogue): Generate ud2 instead of trap insn. testsuite/ChangeLog: PR target/81644 * gcc.target/i386/pr81644.c: New test. From-SVN: r250830
2017-08-02re PR other/81667 (trunk/gcc/alloc-pool.h:239: possible missing initialiser ?)Marek Polacek2-2/+8
PR other/81667 * alloc-pool.h (base_pool_allocator): Initialize m_elt_size. From-SVN: r250829
2017-08-02Use relative line number in gcc.dg/Walloca-14.cTom de Vries2-1/+5
2017-08-02 Tom de Vries <tom@codesourcery.com> * gcc.dg/Walloca-14.c: Use relative line number. From-SVN: r250828
2017-08-02funcspec-56.inc (no_3dnowa): Properly test "no-3dnowa" target attribute.Uros Bizjak2-1/+6
* gcc.target/i386/funcspec-56.inc (no_3dnowa): Properly test "no-3dnowa" target attribute. From-SVN: r250826
2017-08-02Add missing probabilities in nvptx_lock{less,full}_updateTom de Vries2-1/+11
2017-08-02 Tom de Vries <tom@codesourcery.com> Cesar Philippidis <cesar@codesourcery.com> * config/nvptx/nvptx.c (nvptx_lockless_update, nvptx_lockfull_update): Add missing edge probabilities. Co-Authored-By: Cesar Philippidis <cesar@codesourcery.com> From-SVN: r250823
2017-08-02re PR c/81448 (False positive -Werror=multistatement-macros in openssl)Marek Polacek4-21/+144
PR c/81448 PR c/81306 * c-warn.c (warn_for_multistatement_macros): Prevent bogus warnings. Avoid walking MACRO_MAP_LOCATIONS. * c-c++-common/Wmultistatement-macros-13.c: New test. From-SVN: r250822
2017-08-02re PR c/81289 (ICE in libcpp/line-map.c)Marek Polacek4-3/+21
PR c/81289 * c-parser.c (c_parser_unary_expression): Use set_error. * gcc.dg/noncompile/pr81289.c: New test. From-SVN: r250821
2017-08-02pr25967-1.c: DeleteUros Bizjak9-321/+23
* gcc.dg/guality/pr25967-1.c: Delete * gcc.dg/guality/pr25967-2.c: Delete * gcc.dg/guality/pr25967-3.c: Rename to pr25967-1.c. * gcc.dg/guality/pr25967-4.c: Rename to pr25967-2.c. * gcc.dg/torture/pr25967-1.c: Delete * gcc.dg/torture/pr25967-2.c: Delete * gcc.dg/torture/pr25967-3.c: Rename to pr25967-1.c. * gcc.dg/torture/pr25967-4.c: Rename to pr25967-2.c. From-SVN: r250820
2017-08-02aarch64.c (aarch64_reinterpret_float_as_int): Correct endianness.Tamar Christina2-3/+13
2017-08-02 Tamar Christina <tamar.christina@arm.com> * config/aarch64/aarch64.c (aarch64_reinterpret_float_as_int): Correct endianness. From-SVN: r250818
2017-08-02re PR c++/81640 (ICE in lookup_fnfields_slot_nolazy w/ ↵Jakub Jelinek4-1/+31
-Wshadow=compatible-local) PR c++/81640 * call.c (build_user_type_conversion_1): Only call lookup_fnfields_slot if totype is CLASS_TYPE_P. * g++.dg/warn/Wshadow-compatible-local-2.C: New test. From-SVN: r250816
2017-08-02re PR middle-end/79499 (ICE in rtl_verify_bb_insns, at cfgrtl.c:2661)Jakub Jelinek4-7/+55
PR middle-end/79499 * function.c (thread_prologue_and_epilogue_insns): Determine blocks for find_many_sub_basic_blocks bitmap by looking up BLOCK_FOR_INSN of first NONDEBUG_INSN_P in each of the split_prologue_seq and prologue_seq sequences - if any. * gcc.dg/pr79499.c: New test. From-SVN: r250814
2017-08-02tree-vect-stmts.c (vectorizable_store): Perform vector extracts via vectors ↵Richard Biener2-1/+57
if supported... 2017-08-02 Richard Biener <rguenther@suse.de> * tree-vect-stmts.c (vectorizable_store): Perform vector extracts via vectors if supported, integer extracts via punning if supported or otherwise vector extracts. From-SVN: r250813
2017-08-02tree-ssa-pre.c (bitmap_insert_into_set_1): Remove and inline into ...Richard Biener2-16/+16
2017-08-02 Richard Biener <rguenther@suse.de> * tree-ssa-pre.c (bitmap_insert_into_set_1): Remove and inline into ... (bitmap_insert_into_set): ... this. From-SVN: r250812
2017-08-02re PR tree-optimization/81633 (Incorrect floating point result with tree ↵Richard Biener4-31/+73
vectoriser) 2017-08-02 Richard Biener <rguenther@suse.de> PR tree-optimization/81633 Revert 2015-08-17 Alan Hayward <alan.hayward@arm.com> PR tree-optimization/71752 * tree-vect-slp.c (vect_get_slp_defs): Handle null operands. * gcc.dg/vect/pr81633.c: New testcase. From-SVN: r250811
2017-08-02Daily bump.GCC Administrator1-1/+1
From-SVN: r250810
2017-08-02* fr.po: Update.Joseph Myers2-6/+10
From-SVN: r250805
2017-08-01[i386] Remove ix86_frame::outlined_save_offset and ↵Daniel Santos3-26/+16
machine_function::call_ms2sysv_pad_out ix86_frame::outlined_save_offset isn't used and machine_function::call_ms2sysv_pad_out is an ineffective strategy. 2017-08-01 Daniel Santos <daniel.santos@pobox.com> * config/i386/i386.h (ix86_frame::outlined_save_offset): Remove field. (machine_function::call_ms2sysv_pad_out): Remove field. * config/i386/i386.c (xlogue_layout::get_stack_space_used): Modify. (ix86_compute_frame_layout): Likewise. From-SVN: r250803
2017-08-01c-ada-spec.c (has_static_fields): Look only into fields.Eric Botcazou2-17/+29
* c-ada-spec.c (has_static_fields): Look only into fields. (dump_generic_ada_node): Small tweak. (dump_nested_types): Look only into fields. (print_ada_declaration): Look only into methods. Small tweak. (print_ada_struct_decl): Look only into fields. Use DECL_VIRTUAL_P. From-SVN: r250802
2017-08-01i386: Add more naked attribute testsH.J. Lu5-0/+262
Add some tests for implementing interrupt handlers with naked attribute and without asm statements. * gcc.dg/guality/pr25967-3.c: New test. * gcc.dg/guality/pr25967-4.c: Likewise. * gcc.dg/torture/pr25967-3.c: Likewise. * gcc.dg/torture/pr25967-4.c: Likewise. From-SVN: r250800
2017-08-01i386: Add some naked attribute testsH.J. Lu5-0/+298
Add some tests for implementing interrupt handlers with naked attribute. * gcc.dg/guality/pr25967-1.c: New test. * gcc.dg/guality/pr25967-2.c: Likewise. * gcc.dg/torture/pr25967-1.c: Likewise. * gcc.dg/torture/pr25967-2.c: Likewise. From-SVN: r250799
2017-08-01c-ada-spec.c (print_generic_ada_decl): Pass correctly-typed constant.Eric Botcazou2-3/+17
* c-ada-spec.c (print_generic_ada_decl): Pass correctly-typed constant. (dump_ada_function_declaration): Likewise. (dump_generic_ada_node): Likewise. (print_ada_declaration): Add support for const-qualified variables. From-SVN: r250797
2017-08-01386: Disallow naked attribute with interrupt attributeH.J. Lu4-0/+23
gcc/ PR target/81654 * config/i386/i386.c (ix86_set_func_type): Disallow naked attribute with interrupt attribute. gcc/testsuite/ PR target/81654 * gcc.target/i386/pr81654.c: New test. From-SVN: r250793
2017-08-01re PR fortran/79312 (Empty array in assignment not correctly type-checked)Thomas Koenig4-3/+26
2017-08-01 Thomas König <tkoenig@gcc.gnu.org> PR fortran/79312 * intrisic.c (gfc_convert_type_warn): Only set typespec for empty array constructors which don't have it already. 2017-08-01 Thomas König <tkoenig@gcc.gnu.org> PR fortran/79312 * gfortran.dg/logical_assignment_1.f90: New test. From-SVN: r250792
2017-08-01re PR fortran/45435 (Automatically generate C interop interface blocks from ↵Thomas Koenig7-0/+313
C code) 2017-08-01 Thomas Koenig <tkoenig@gcc.gnu.org> PR fortran/45435 * lang.opt (fc-prototypes): Add option. * gfortran.h (gfc_typespec): Add interop_kind to struct. (gfc_dump_c_prototypes): Add prototype. * decl.c (gfc_match_kind_spec): Copy symbol used for kind to typespec. * parse.c (gfc_parse_file): Call gfc_dump_prototypes. * dump-parse-tree.c (gfc_dump_c_prototypes): New function. (type_return): New enum. (get_c_type_name): New function. (write_decl): New function. (write_type): New function. (write_variable): New function. (write_proc): New function. (write_interop_decl): New function. * invoke.texi: Document -fc-prototypes. From-SVN: r250791
2017-08-01tree-ssa-scopedtables.c (hashable_expr_equal_p): Check BIT_INSERT_EXPR's ↵Andrew Pinski2-0/+15
operand 1 to see if the types precision matches. 2017-08-01 Andrew Pinski <apinski@cavium.com> * tree-ssa-scopedtables.c (hashable_expr_equal_p): Check BIT_INSERT_EXPR's operand 1 to see if the types precision matches. From-SVN: r250790
2017-08-01Make mempcpy more optimal (PR middle-end/70140).Martin Liska4-172/+168
2017-08-01 Martin Liska <mliska@suse.cz> PR middle-end/70140 * gcc.dg/string-opt-1.c: Adjust test-case to scan for memcpy. 2017-08-01 Martin Liska <mliska@suse.cz> PR middle-end/70140 * builtins.c (expand_builtin_memcpy_args): Remove. (expand_builtin_memcpy): Call newly added function expand_builtin_memory_copy_args. (expand_builtin_memcpy_with_bounds): Likewise. (expand_builtin_mempcpy): Remove last argument. (expand_builtin_mempcpy_with_bounds): Likewise. (expand_builtin_memory_copy_args): New function created from expand_builtin_mempcpy_args with small modifications. (expand_builtin_mempcpy_args): Remove. (expand_builtin_stpcpy): Remove unused argument. (expand_builtin): Likewise. (expand_builtin_with_bounds): Likewise. From-SVN: r250789
2017-08-01Revert r250771Martin Liska4-110/+177
2017-08-01 Martin Liska <mliska@suse.cz> Revert r250771 Make mempcpy more optimal (PR middle-end/70140). 2017-08-01 Martin Liska <mliska@suse.cz> Revert r250771 Make mempcpy more optimal (PR middle-end/70140). From-SVN: r250788
2017-08-01* decl.c (declare_global_var): Set DECL_CONTEXT.Jason Merrill2-0/+5
From-SVN: r250786
2017-08-01re PR target/81622 (ICE on invalid altivec code with ppc64{,le})Jakub Jelinek4-24/+54
PR target/81622 * config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): For __builtin_vec_cmpne verify both arguments are compatible vectors before looking at TYPE_MODE on the element type. For __builtin_vec_ld verify arg1_type is a pointer or array type. For __builtin_vec_st, move computation of aligned to after checking the argument types. Formatting fixes. * gcc.target/powerpc/pr81622.c: New test. From-SVN: r250785
2017-08-01re PR target/80846 (auto-vectorized AVX2 horizontal sum should narrow to ↵Jakub Jelinek2-2/+9
128b right away, to be more efficient for Ryzen and Intel) PR target/80846 * config/rs6000/vsx.md (vextract_fp_from_shorth, vextract_fp_from_shortl): Add element mode after mode in gen_vec_init* calls. From-SVN: r250784
2017-08-01re PR tree-optimization/80925 (vect peeling failures)Steve Ellcey8-14/+20
2017-08-01 Steve Ellcey <sellcey@cavium.com> PR tree-optimization/80925 * gcc.dg/vect/vect-28.c: Add --param vect-max-peeling-for-alignment=0 option. Remove unaligned access and peeling checks. * gcc.dg/vect/vect-33-big-array.c: Ditto. * gcc.dg/vect/vect-70.c: Ditto. * gcc.dg/vect/vect-87.c: Ditto. * gcc.dg/vect/vect-88.c: Ditto. * gcc.dg/vect/vect-91.c: Ditto. * gcc.dg/vect/vect-93.c: Ditto. From-SVN: r250783