1. 21 Jan, 2016 38 commits
    • Add missing file · e271cba1
      From-SVN: r232695
      Michael Meissner committed
    • aix71.h (ASM_CPU_SPEC): Add entry for Power9. · 2e987dd5
      	* config/rs6000/aix71.h (ASM_CPU_SPEC): Add entry for Power9.
      	* config/rs6000/driver-rs6000.c (struct asm_names): Likewise.
      
      From-SVN: r232694
      Pat Haugen committed
    • libitm: Disable testing transaction-safe exceptions on Darwin and AIX. · 0b96ffdb
      	* testsuite/libitm.c++/libstdc++-safeexc.C: Not supported on darwin
      	or AIX.
      
      From-SVN: r232693
      Torvald Riegel committed
    • Fix missed comment fix in last change. · 2efc1455
      From-SVN: r232690
      Bernd Schmidt committed
    • Fix PR66178, ICE due to misexpansion of constant expressions involving labels. · 9776e692
      	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
      Bernd Schmidt committed
    • float128-sed: New files to convert TF names to KF names for PowerPC IEEE 128-bit floating... · a71c0334
      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
      Michael Meissner committed
    • re PR target/63354 (gcc -pg -mprofile-kernel creates unused stack frames on leaf… · c8d3e088
      re PR target/63354 (gcc -pg -mprofile-kernel creates unused stack frames on 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
      Anton Blanchard committed
    • Issue wic prefetch instruction at call site. · b638c908
      This optimization is enabled with  microblaze target flag mxl-prefetch.
      
      From-SVN: r232683
      Ajit Agarwal committed
    • re PR rtl-optimization/68920 (Undesirable if-conversion for a rarely taken branch) · c7b19145
      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
      Yuri Rumyantsev committed
    • re PR rtl-optimization/68990 (wrong code at -O3 on x86_64-pc-linux-gnu in 32-bit mode.) · 35b707ff
      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
      Vladimir Makarov committed
    • Fix typo · 975b10da
      From-SVN: r232675
      David Edelsohn committed
    • re PR target/69129 (ICE in get_attr_got, at config/mips/mips.md:694 on mips-linux-gnu) · 157b0829
      	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
      Nick Clifton committed
    • configure.ac (gcc_cv_as_dwloc): Test support for debug frame section label reference. · a52f938b
      * configure.ac (gcc_cv_as_dwloc): Test support for debug frame section
      label reference.
      * configure: Regenerate.
      
      From-SVN: r232673
      David Edelsohn committed
    • libstdc++/69406 Fix test to check for supported headers · ab56cbed
      	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
      Jonathan Wakely committed
    • re PR c++/58046 (template operator= in SFINAE class) · aede6748
      2016-01-21  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/58046
      	* g++.dg/cpp0x/pr58046.C: New.
      
      From-SVN: r232671
      Paolo Carlini committed
    • graphite-optimize-isl.c (get_schedule_map): Fix typo. · 3e0c32df
      2016-01-21  Richard Biener  <rguenther@suse.de>
      
      	* graphite-optimize-isl.c (get_schedule_map): Fix typo.
      
      From-SVN: r232670
      Richard Biener committed
    • S/390: Fix missing .size directives. · d45ef29e
      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
      Marcin Kościelnicki committed
    • re PR target/69187 (ICE: Aborted when native compiling neon code with… · 6d31cc75
      re PR target/69187 (ICE: Aborted when native compiling neon code with __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
      Stefan Sørensen committed
    • S/390: Use proper read-only data section for literals. · b929b470
      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
      Marcin Kościelnicki committed
    • re PR tree-optimization/69378 (FAIL: g++.dg/tree-ssa/pr61034.C) · fac40b02
      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
      Richard Biener committed
    • re PR tree-optimization/69355 (Wrong results with -O1 optimization) · 5463c2c8
      	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
      Jakub Jelinek committed
    • PR c/52291 - __sync_fetch_and_add and friends poorly specified for pointer · 2ef59b98
      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
      Martin Sebor committed
    • fix codegen error exposed by compute isl flow patch · fa28f32b
      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
      Aditya Kumar committed
    • fix pr68692: reinstantiate the copy of internal parameters · 1d198f09
      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
      Aditya Kumar committed
    • fix PR68976: only add loop close phi for names defined in loop · b920a047
              * 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
      Aditya Kumar committed
    • check for unstructured control flow · 8f225262
      	* 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
      Aditya Kumar committed
    • rewrite computation of iteration domains · d8d262cf
              * 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
      Aditya Kumar committed
    • fix memory leak in scop-detection · eaca025e
              * 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
      Aditya Kumar committed
    • record loops in execution order · 5431c9ea
      	* 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
      Aditya Kumar committed
    • check that all loops are valid in the combined region · d7eff5b2
      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
      Aditya Kumar committed
    • add missing ast node for isl 0.15 · f5d8368a
      	* 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
      Aditya Kumar committed
    • remove unused variable · 0d12d32c
      	* graphite-poly.c (new_poly_bb): Remove use of PBB_IS_REDUCTION.
      	* graphite.h (struct poly_bb): Remove field is_reduction.
              (PBB_IS_REDUCTION): Remove.
      
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r232651
      Aditya Kumar committed
    • add more coalescing to simplify constraints · 14b1747c
      	* graphite-dependences.c (constrain_domain): Add call to isl_*_coalesce.
      	(add_pdr_constraints): Same.
      	(scop_get_reads): Same.
      	(scop_get_must_writes): Same.
      	(scop_get_may_writes): Same.
      	(scop_get_original_schedule): Same.
      	(extend_schedule): Same.
      	(apply_schedule_on_deps): Same.
      	(carries_deps): Same.
      	(compute_deps): Same.
      	(scop_get_dependences): Same.
      	* graphite-isl-ast-to-gimple.c
      	(translate_isl_ast_to_gimple::generate_isl_schedule): Same.
      	* graphite-optimize-isl.c (get_schedule_for_band): Same.
      	(get_schedule_for_band_list): Same.
      	(get_schedule_map): Same.
      	(apply_schedule_map_to_scop): Same.
      	* graphite-sese-to-poly.c (build_pbb_scattering_polyhedrons): Same.
      	(build_loop_iteration_domains): Same.
      	(add_condition_to_pbb): Same.
      	(add_param_constraints): Same.
      	(pdr_add_memory_accesses): Same.
      	(pdr_add_data_dimensions): Same.
      
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r232650
      Aditya Kumar committed
    • invoke.texi (Instrumentation Options): Clarify -mmpx linking requirements. · 42d4fbb0
      2016-01-20  Sandra Loosemore <sandra@codesourcery.com>
      
      	gcc/
      	* doc/invoke.texi (Instrumentation Options): Clarify -mmpx linking
      	requirements.
      
      From-SVN: r232648
      Sandra Loosemore committed
    • common.opt (feliminate-dwarf2-dups): Replace references to "DWARF 2" with just "DWARF". · a1a3812d
      2016-01-20  Sandra Loosemore <sandra@codesourcery.com>
      
      	gcc/
      	* common.opt (feliminate-dwarf2-dups): Replace references to
      	"DWARF 2" with just "DWARF".
      	* config/ia64/ia64.opt (mdwarf2-asm): Likewise.
      	* doc/extend.texi: Likewise.
      	* doc/cpp.texi: Likewise.
      	* doc/invoke.texi: Likewise.
      	(Option Summary): Add -gdwarf to list of Debugging Options.
      	(Debugging Options): Document -gdwarf.
      	* doc/contrib.texi: Spell "DWARF" like that.
      
      From-SVN: r232647
      Sandra Loosemore committed
    • libtool-version: Remove. · cc60e898
      2016-01-20  Matthias Klose  <doko@ubuntu.com>
      
              * libtool-version: Remove.
      
      From-SVN: r232645
      Matthias Klose committed
    • Daily bump. · 0a1ca72c
      From-SVN: r232644
      GCC Administrator committed
  2. 20 Jan, 2016 2 commits