aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-01-22ipa-inline.c (can_inline_edge_p): Back out overzealous check on ↵Eric Botcazou2-6/+7
flag_non_call_exceptions compatibility. * ipa-inline.c (can_inline_edge_p): Back out overzealous check on flag_non_call_exceptions compatibility. From-SVN: r232722
2016-01-22re PR c++/55843 (ICE after exceeding template instantiation depth)Paolo Carlini2-0/+32
2016-01-22 Paolo Carlini <paolo.carlini@oracle.com> PR c++/55843 * g++.dg/template/pr55843.C: New. From-SVN: r232721
2016-01-22[Testsuite] Fix PR66877Alan Lawrence2-1/+8
* gcc.dg/vect/vect-over-widen-3-big-array.c: Only look for 1 vect_recog_over_widening_pattern in dump if we have vect_widen_shift. From-SVN: r232720
2016-01-22re PR debug/66668 (FAIL: gcc.dg/debug/dwarf2/stacked-qualified-types-3.c ↵Jakub Jelinek2-12/+148
scan-assembler-times DIE \\([^\n]*\\) DW_TAG_(?:const|volatile|atomic|restrict)_type 8) PR debug/66668 * dwarf2out.c (add_child_die_after): New function. (dwarf_qual_info_t): New type. (dwarf_qual_info): New variable. (qualified_die_p): New function. (modified_type_die): For -fdebug-types-section, ensure canonical order of qualifiers. Put qualified DIEs adjacent to the corresponding non-qualified type DIE and search there for existing qualified DIEs. From-SVN: r232719
2016-01-22extend.texi (scalar_storage_order type attribute): Document restriction on ↵Eric Botcazou2-5/+14
type punning and aliasing, and remove future tense. * doc/extend.texi (scalar_storage_order type attribute): Document restriction on type punning and aliasing, and remove future tense. From-SVN: r232718
2016-01-22re PR testsuite/67489 (FAIL: gcc.target/powerpc/p8vector-builtin-8.c (test ↵Bill Schmidt2-1/+9
for excess errors)) 2016-01-21 Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR testsuite/67489 * gcc.target/powerpc/p8vector-builtin-8.c: Remove { target int128 } from dg-do compile directive, and instead add { dg-require-effective-target int128 }. From-SVN: r232717
2016-01-22Daily bump.GCC Administrator1-1/+1
From-SVN: r232716
2016-01-21PR c/69405 - [6 Regression] ICE in c_tree_printer on an invalidMartin Sebor4-3/+132
PR c/69405 - [6 Regression] ICE in c_tree_printer on an invalid __atomic_fetch_add gcc/testsuite/ChangeLog: 2016-01-20 Martin Sebor <msebor@redhat.com> PR c/69405 * gcc.dg/sync-fetch.c: New test. gcc/c-family/ChangeLog: 2016-01-20 Martin Sebor <msebor@redhat.com> PR c/69405 * c-common.c (sync_resolve_size): Avoid printing diagnostic about an incompatible argument when the argument isn't a valid tree node. From-SVN: r232713
2016-01-21re PR target/69252 (gcc.dg/vect/vect-iv-9.c FAILs with -Os -fmodulo-sched ↵Jeff Law4-1/+45
-fmodulo-sched-allow-regmoves -fsched-pressure) PR target/69252 * modulo-sched.c (optimize_sc): Allow branch-scheduling to add a new first stage. PR target/69252 * gcc.target/powerpc/pr69252.c: New test. From-SVN: r232712
2016-01-21[PATCH] [PR tree-optimization/69347] Fix memory consumption in threader & ↵Jeff Law3-5/+12
minor speed improvement PR middle-end/69347 * tree-ssa-dom.c (dom_opt_dom_walker::thread_across_edge): Avoid useless call to record_temporary_equivalences. * tree-ssa-threadbackward.c (find_jump_threads_backwards): Just allocate 10 slots in the bb_path vector and let it grow as needed. (fsm_find_control_statement_thread_paths): Similarly for the next_path vector. From-SVN: r232711
2016-01-21re PR fortran/65996 (gfortran ICE with -dH)Jerry DeLisle4-2/+34
2016-01-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/65996 * error.c (gfc_error): Save the state of abort_on_error and set it to false for buffered errors to allow normal processing. Restore the state before leaving. 2016-01-21 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/65996 gfortran.dg/pr65996.f90: New test. From-SVN: r232707
2016-01-21re PR c++/68810 (FAIL: g++.dg/cpp0x/constexpr-reinterpret1.C -- test for ↵Dominik Vogt2-4/+8
errors -- -m32) PR c++/68810 * g++.dg/cpp0x/constexpr-reinterpret1.C: Fix line number that is expected to generate an error. From-SVN: r232705
2016-01-21re PR c++/59281 (attribute((constructor)) accepts enum class as integer ↵Jason Merrill1-0/+5
constant) PR c++/59281 * g++.dg/ext/attr-constructor1.C: New. From-SVN: r232704
2016-01-21re PR c++/65687 (Inconsistent behavior for __attribute__((__deprecated__)) ↵Jason Merrill3-3/+24
between C and C++.) PR c++/65687 * decl.c (type_is_deprecated): Don't look into a typedef. From-SVN: r232703
2016-01-21re PR c++/40751 (G++ never packs typedef'd enums)Jason Merrill3-2/+16
PR c++/40751 PR c++/64987 * decl.c (copy_type_enum): Respect TYPE_USER_ALIGN. From-SVN: r232702
2016-01-21re PR c++/43407 (Specifying visibility attribute of C++0x enum class emits ↵Jason Merrill7-60/+133
warning) PR c++/43407 * decl.c (start_enum): Add attributes parameter. * parser.c (cp_parser_enum_specifier): Pass it. * pt.c (lookup_template_class_1): Pass it. * cp-tree.h: Adjust. From-SVN: r232701
2016-01-21Record configure regenerateDavid Edelsohn1-0/+1
From-SVN: r232698
2016-01-21configure.ac (gcc_cv_as_powerpc_mfcrf, [...]): Detangle.David Edelsohn3-8/+23
* configure.ac (gcc_cv_as_powerpc_mfcrf, gcc_cv_as_machine_directive): Detangle. From-SVN: r232697
2016-01-21Add missing fileMichael Meissner1-0/+25
From-SVN: r232695
2016-01-21aix71.h (ASM_CPU_SPEC): Add entry for Power9.Pat Haugen3-0/+8
* config/rs6000/aix71.h (ASM_CPU_SPEC): Add entry for Power9. * config/rs6000/driver-rs6000.c (struct asm_names): Likewise. From-SVN: r232694
2016-01-21libitm: Disable testing transaction-safe exceptions on Darwin and AIX.Torvald Riegel2-1/+9
* testsuite/libitm.c++/libstdc++-safeexc.C: Not supported on darwin or AIX. From-SVN: r232693
2016-01-21Fix missed comment fix in last change.Bernd Schmidt1-3/+3
From-SVN: r232690
2016-01-21Fix PR66178, ICE due to misexpansion of constant expressions involving labels.Bernd Schmidt7-7/+56
PR middle-end/66178 * expr.c (expand_expr_real_2) [PLUS_EXPR, MINUS_EXPR]: Don't drop EXPAND_INITIALIZER. * rtl.h (contains_symbolic_reference_p): Declare. * rtlanal.c (contains_symbolic_reference_p): New function. * simplify-rtx.c (simplify_binary_operation_1): Don't turn a subtraction into a NOT if symbolic constants are involved. testsuite/ PR middle-end/66178 gcc.dg/torture/pr66178.c: New test. From-SVN: r232689
2016-01-21float128-sed: New files to convert TF names to KF names for PowerPC IEEE ↵Michael Meissner18-3/+1581
128-bit floating... 2016-01-21 Michael Meissner <meissner@linux.vnet.ibm.com> Steven Munroe <munroesj@linux.vnet.ibm.com> Tulio Magno Quites Machado Filho <tulioqm@br.ibm.com> * config/rs6000/float128-sed: New files to convert TF names to KF names for PowerPC IEEE 128-bit floating point support. * config/rs6000/float128-sed-hw: Likewise. * config/rs6000/float128-hw.c: New file for ISA 3.0 IEEE 128-bit floating point hardware support. * config/rs6000/float128-ifunc.c: New file to pick either IEEE 128-bit floating point software emulation or use ISA 3.0 hardware support if it is available. * config/rs6000/quad-float128.h: New file to support IEEE 128-bit floating point. * config/rs6000/extendkftf2-sw.c: New file, convert IEEE 128-bit floating point to IBM extended double. * config/rs6000/trunctfkf2-sw.c: New file, convert IBM extended double to IEEE 128-bit floating point. * config/rs6000/t-float128: New Makefile fragments to enable building __float128 emulation support. * config/rs6000/t-float128-hw: Likewise. * config/rs6000/sfp-exceptions.c: New file to provide exception support for IEEE 128-bit floating point. * config/rs6000/floattikf.c: New files for converting between IEEE 128-bit floating point and signed/unsigned 128-bit integers. * config/rs6000/fixunskfti.c: Likewise. * config/rs6000/fixkfti.c: Likewise. * config/rs6000/floatuntikf.c: Likewise. * config/rs6000/sfp-machine.h (_FP_W_TYPE_SIZE): Use 64-bit types when building on 64-bit systems, or when VSX is enabled. (_FP_W_TYPE): Likewise. (_FP_WS_TYPE): Likewise. (_FP_I_TYPE): Likewise. (TItype): Define on 64-bit systems. (UTItype): Likewise. (TI_BITS): Likewise. (_FP_MUL_MEAT_D): Add support for using 64-bit types. (_FP_MUL_MEAT_Q): Likewise. (_FP_DIV_MEAT_D): Likewise. (_FP_DIV_MEAT_Q): Likewise. (_FP_NANFRAC_D): Likewise. (_FP_NANFRAC_Q): Likewise. (ISA_BIT): Add exception support if we are being compiled on a machine with hardware floating point support to build the IEEE 128-bit emulation functions. (FP_EX_INVALID): Likewise. (FP_EX_OVERFLOW): Likewise. (FP_EX_UNDERFLOW): Likewise. (FP_EX_DIVZERO): Likewise. (FP_EX_INEXACT): Likewise. (FP_EX_ALL): Likewise. (__sfp_handle_exceptions): Likewise. (FP_HANDLE_EXCEPTIONS): Likewise. (FP_RND_NEAREST): Likewise. (FP_RND_ZERO): Likewise. (FP_RND_PINF): Likewise. (FP_RND_MINF): Likewise. (FP_RND_MASK): Likewise. (_FP_DECL_EX): Likewise. (FP_INIT_ROUNDMODE): Likewise. (FP_ROUNDMODE): Likewise. * libgcc/config.host (powerpc*-*-linux*): If compiler can compile VSX code, enable IEEE 128-bit floating point. If the compiler can compile IEEE 128-bit floating point code with ISA 3.0 IEEE 128-bit floating point hardware instructions and it supports declaring functions with the ifunc attribute, enable ifunc functions to switch between software and hardware support. * configure.ac (powerpc*-*-linux*): Likewise. * configure: Regenerate. Co-Authored-By: Steven Munroe <munroesj@linux.vnet.ibm.com> Co-Authored-By: Tulio Magno Quites Machado Filho <tulioqm@br.ibm.com> From-SVN: r232685
2016-01-21re PR target/63354 (gcc -pg -mprofile-kernel creates unused stack frames on ↵Anton Blanchard5-0/+37
leaf functions on ppc64le) [gcc] 2016-01-21 Anton Blanchard <anton@samba.org> Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR target/63354 * config/rs6000/linux64.h (TARGET_KEEP_LEAF_WHEN_PROFILED): New #define. * config/rs6000/rs6000.c (rs6000_keep_leaf_when_profiled): New function. [gcc/testsuite] 2016-01-21 Anton Blanchard <anton@samba.org> Bill Schmidt <wschmidt@linux.vnet.ibm.com> PR target/63354 * gcc.target/powerpc/pr63354.c: New test. Co-Authored-By: Bill Schmidt <wschmidt@linux.vnet.ibm.com> From-SVN: r232684
2016-01-21Issue wic prefetch instruction at call site. Ajit Agarwal4-0/+183
This optimization is enabled with microblaze target flag mxl-prefetch. From-SVN: r232683
2016-01-21Mark r20 as fixed. Mark r21 not fixed & allocatable in callee.Ajit Agarwal2-2/+8
From-SVN: r232682
2016-01-21re PR rtl-optimization/68920 (Undesirable if-conversion for a rarely taken ↵Yuri Rumyantsev2-1/+9
branch) gcc/ 2016-01-21 Yuri Rumyantsev <ysrumyan@gmail.com> PR rtl-optimization/68920 * ifcvt.c (cond_move_process_if_block): Limit number of conditional moves. From-SVN: r232680
2016-01-21re PR rtl-optimization/68990 (wrong code at -O3 on x86_64-pc-linux-gnu in ↵Vladimir Makarov4-15/+70
32-bit mode.) 2016-01-21 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/68990 * lra-coalesce.c (lra_coalesce): Invalidate value for the result pseudo instead of inheritance ones. 2016-01-21 Vladimir Makarov <vmakarov@redhat.com> PR rtl-optimization/68990 * gcc.target/i386/pr68990: New. From-SVN: r232679
2016-01-21Fix typoDavid Edelsohn2-2/+0
From-SVN: r232675
2016-01-21re PR target/69129 (ICE in get_attr_got, at config/mips/mips.md:694 on ↵Nick Clifton4-8/+63
mips-linux-gnu) PR target/69129 PR target/69012 * config/mips/mips.c (mips_compute_frame_info): Initialise args_size and hard_frame_pointer_offset fields of the frame structure before calling mips_global_pointer. PR target/69129 * gcc.target/mips/pr69129.c: New. From-SVN: r232674
2016-01-21configure.ac (gcc_cv_as_dwloc): Test support for debug frame section label ↵David Edelsohn3-15/+19
reference. * configure.ac (gcc_cv_as_dwloc): Test support for debug frame section label reference. * configure: Regenerate. From-SVN: r232673
2016-01-21libstdc++/69406 Fix test to check for supported headersJonathan Wakely8-6/+45
PR libstdc++/69406 * include/bits/cpp_type_traits.h: Ensure C++ language linkage. * include/ext/type_traits.h: Likewise. * testsuite/17_intro/headers/c++2011/linkage.cc: Check autoconf macros for presence of C headers. * testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Adjust dg-error line number. * testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise. * testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise. * testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Likewise. From-SVN: r232672
2016-01-21re PR c++/58046 (template operator= in SFINAE class)Paolo Carlini2-0/+44
2016-01-21 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58046 * g++.dg/cpp0x/pr58046.C: New. From-SVN: r232671
2016-01-21graphite-optimize-isl.c (get_schedule_map): Fix typo.Richard Biener2-1/+5
2016-01-21 Richard Biener <rguenther@suse.de> * graphite-optimize-isl.c (get_schedule_map): Fix typo. From-SVN: r232670
2016-01-21S/390: Fix missing .size directives.Marcin Kościelnicki2-1/+8
It seems at some point the .size hook was hijacked to emit some machine-specific directives, and the actual .size directive was forgotten. This caused problems for split-stack support, since linker couldn't scan the function body for non-split-stack calls. gcc/ChangeLog: * config/s390/s390.c (s390_asm_declare_function_size): Add code to actually emit the .size directive. From-SVN: r232669
2016-01-21re PR target/69187 (ICE: Aborted when native compiling neon code with ↵Stefan Sørensen4-1/+32
__builtin_neon_vmlals_lanev4hi) PR target/69187 PR target/65624 * config/arm/arm-builtins.c (arm_expand_neon_builtin): Increase args array size by one to avoid buffer overflow. * gcc.target/arm/pr69187.c: New test. From-SVN: r232668
2016-01-21S/390: Use proper read-only data section for literals.Marcin Kościelnicki2-2/+16
Previously, .rodata was hardcoded. For C++ vague linkage functions, this resulted in needlessly duplicated literals. With the new split stack support, this resulted in link errors, due to .rodata containing relocations to the discarded text sections. gcc/ChangeLog: * config/s390/s390.md (pool_section_start): Use switch_to_section to select proper read-only data section instead of hardcoding .rodata. (pool_section_end): Use switch_to_section to match the above. From-SVN: r232667
2016-01-21re PR tree-optimization/69378 (FAIL: g++.dg/tree-ssa/pr61034.C)Richard Biener2-12/+100
2016-01-21 Richard Biener <rguenther@suse.de> PR tree-optimization/69378 * tree-ssa-sccvn.c (dominated_by_p_w_unex): New function. (set_ssa_val_to): Use it for dominance checks taking into account not executable edges. From-SVN: r232666
2016-01-21re PR tree-optimization/69355 (Wrong results with -O1 optimization)Jakub Jelinek4-1/+162
PR c++/69355 * tree-dfa.c (get_ref_base_and_extent): Use GET_MODE_BITSIZE (mode) for bitsize instead of GET_MODE_PRECISION (mode). * g++.dg/torture/pr69355.C: New test. From-SVN: r232663
2016-01-20PR c/52291 - __sync_fetch_and_add and friends poorly specified for pointerMartin Sebor2-6/+27
PR c/52291 - __sync_fetch_and_add and friends poorly specified for pointer types 2016-01-20 Martin Sebor <msebor@redhat.com> * extend.texi (__sync Builtins): Clarify the semantics of __sync_fetch_and_OP built-ins on pointers. (__atomic Builtins): Same. From-SVN: r232662
2016-01-21fix codegen error exposed by compute isl flow patchAditya Kumar4-19/+50
we used to fail using an iv from a different loop. * graphite-isl-ast-to-gimple.c (enum phi_node_kind): New. (class translate_isl_ast_to_gimple): Use phi_node_kind instead of bool. (is_valid_rename): Same. (translate_isl_ast_to_gimple::get_rename): Same. (translate_isl_ast_to_gimple::rename_all_uses): Same. (translate_isl_ast_to_gimple::rename_uses): Same. (get_new_name): Check for close_phi nodes. (copy_loop_phi_args): Use phi_node_kind. (translate_isl_ast_to_gimple::copy_loop_close_phi_args): Same. (translate_isl_ast_to_gimple::copy_cond_phi_args): Same. gcc/testsuite * gfortran.dg/graphite/interchange-3.f90: Adjust pattern. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r232660
2016-01-21fix pr68692: reinstantiate the copy of internal parametersAditya Kumar5-1/+195
Adding a testcase and reverting this patch: [PATCH] remove parameter_rename_map This map was used in the transition to the new scop detection: with the new scop detection, we do not need this map anymore. * graphite-isl-ast-to-gimple.c (gcc_expression_from_isl_ast_expr_id): Remove use of parameter_rename_map. (copy_def): Remove. (copy_internal_parameters): Remove. (graphite_regenerate_ast_isl): Remove call to copy_internal_parameters. * sese.c (new_sese_info): Do not initialize parameter_rename_map. (free_sese_info): Do not free parameter_rename_map. (set_rename): Do not use parameter_rename_map. (rename_uses): Update call to set_rename. (graphite_copy_stmts_from_block): Do not use parameter_rename_map. * sese.h (parameter_rename_map_t): Remove. (struct sese_info_t): Remove field parameter_rename_map. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r232659
2016-01-21fix PR68976: only add loop close phi for names defined in loopAditya Kumar5-3/+38
* graphite-isl-ast-to-gimple.c: Fix comment. * graphite-scop-detection.c (defined_in_loop_p): New. (canonicalize_loop_closed_ssa): Do not add close phi nodes for SSA names defined in loop. gcc/testsuite * gcc.dg/graphite/pr68976.c: New test. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r232658
2016-01-21check for unstructured control flowAditya Kumar2-0/+18
* graphite-scop-detection.c (scop_detection::harmful_loop_in_region): Discard unstructured if-then-else regions. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r232657
2016-01-21rewrite computation of iteration domainsAditya Kumar2-215/+204
* graphite-sese-to-poly.c (set_scop_parameter_dim): Remove. (cleanup_loop_iter_dom): Remove. (build_loop_iteration_domains): Remove. (build_scop_context): Remove. (build_scop_iteration_domain): Remove. (add_loop_constraints): New. (build_iteration_domains): New. (build_poly_scop): Call build_iteration_domains. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r232656
2016-01-21fix memory leak in scop-detectionAditya Kumar2-3/+18
* graphite-scop-detection.c (scop_detection::harmful_loop_in_region): Free dom and loops. (scop_detection::loop_body_is_valid_scop): Free bbs. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r232655
2016-01-21record loops in execution orderAditya Kumar4-67/+40
* graphite-scop-detection.c (record_loop_in_sese): New. (gather_bbs::before_dom_children): Call record_loop_in_sese. (build_scops): Remove call to build_sese_loop_nests. * sese.c (sese_record_loop): Remove. (build_sese_loop_nests): Remove. (new_sese_info): Remove region->loops. (free_sese_info): Same. * sese.h (sese_contains_loop): Same. (build_sese_loop_nests): Remove. (sese_contains_loop): Remove. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r232654
2016-01-21check that all loops are valid in the combined regionAditya Kumar2-14/+49
the bug was exposed by rewriting an if condition into an assert in the computation of the loop iteration domains. * graphite-scop-detection.c (loop_is_valid_scop): Renamed loop_is_valid_in_scop. (scop_detection::harmful_stmt_in_region): Renamed harmful_loop_in_region. Call loop_is_valid_in_scop. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r232653
2016-01-21add missing ast node for isl 0.15Aditya Kumar2-0/+16
* graphite-isl-ast-to-gimple.c (translate_isl_ast): Also handle isl_ast_node_mark. Co-Authored-By: Sebastian Pop <s.pop@samsung.com> From-SVN: r232652