1. 09 Oct, 2017 10 commits
    • [BRIGFE] Support BRIG_KIND_NONE directives. · 14108eda
      These directives are legal everywhere.  They can be used to
      patch away BRIG entries at the binary level.
      
      Also add extra error detection for zeroed regions: make sure
      the byteCount field is never zero.
      
      The call code still failed a few PRM test cases. Now all PRM
      branch cases pass again.
      
      From-SVN: r253545
      Pekka Jääskeläinen committed
    • S/390: Fix vec_nabs and vec_vfi builtin flags · 63eea5dc
      gcc/ChangeLog:
      
      2017-10-09  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	* config/s390/s390-builtins.def (vec_nabs, vec_vfi): Fix builtin
      	flags.
      
      From-SVN: r253544
      Andreas Krebbel committed
    • S/390: PR82463: Fix vec_madd header file definition · ad2c91b2
      The builtin was not correctly defined in the vecintrin.h header file.
      
      gcc/testsuite/ChangeLog:
      
      2017-10-09  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	PR target/82463
      	* gcc.target/s390/zvector/pr82463.c: New test.
      
      gcc/ChangeLog:
      
      2017-10-09  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	PR target/82463
      	* config/s390/vecintrin.h (vec_madd, vec_msub): Fix macro
      	definitions.
      
      From-SVN: r253543
      Andreas Krebbel committed
    • S/390: PR82465: Fix vec_sqrt builtin flags · 3141e768
      The vector double variant is available with z13.  A wrong flag in the
      s390-builtins.def file triggered an error when compiling for z13.
      
      gcc/testsuite/ChangeLog:
      
      2017-10-09  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	PR target/82465
      	* gcc.target/s390/zvector/pr82465.c: New test.
      
      gcc/ChangeLog:
      
      2017-10-09  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>
      
      	PR target/82465
      	* config/s390/s390-builtins.def (vec_sqrt): Fix builtin flags.
      
      From-SVN: r253542
      Andreas Krebbel committed
    • re PR target/82464 (s390x z14: vector float: invalid parameter combination for… · 85f59ae7
      re PR target/82464 (s390x z14: vector float: invalid parameter combination for intrinsic '__builtin_s390_vec_xor')
      
      	PR target/82464
      	* config/s390/s390-builtins.def (s390_vec_xor_flt_a,
      	s390_vec_xor_flt_b, s390_vec_xor_flt_c): New.
      
      From-SVN: r253541
      Jakub Jelinek committed
    • Fix ssa-dse-26.c · 8d9c7f8a
      Add missing -fno-short-enums to ensure this test passes on arm-none-eabi
      which uses short enums.
      
          gcc/testsuite/
      	* gcc.dg/tree-ssa/ssa-dse-26.c (dg-options): Add -fno-short-enums.
      
      From-SVN: r253540
      Wilco Dijkstra committed
    • Allow non-wi <op> wi · 7b27cb4b
      This patch uses global rather than member operators for wide-int.h,
      so that the first operand can be a non-wide-int type.
      
      The patch also removes the and_not and or_not member functions.
      It was already inconsistent to have member functions for these
      two operations (one of which was never used) and not other wi::
      ones like udiv.  After the operator change, we'd have the additional
      inconsistency that "non-wi & wi" would work but "non-wi.and_not (wi)"
      wouldn't.
      
      2017-10-09  Richard Sandiford  <richard.sandiford@linaro.org>
      
      gcc/
      	* wide-int.h (WI_BINARY_OPERATOR_RESULT): New macro.
      	(WI_BINARY_PREDICATE_RESULT): Likewise.
      	(wi::binary_traits::operator_result): New type.
      	(wi::binary_traits::predicate_result): Likewise.
      	(generic_wide_int::operator~, unary generic_wide_int::operator-)
      	(generic_wide_int::operator==, generic_wide_int::operator!=)
      	(generic_wide_int::operator&, generic_wide_int::and_not)
      	(generic_wide_int::operator|, generic_wide_int::or_not)
      	(generic_wide_int::operator^, generic_wide_int::operator+
      	(binary generic_wide_int::operator-, generic_wide_int::operator*):
      	Delete.
      	(operator~, unary operator-, operator==, operator!=, operator&)
      	(operator|, operator^, operator+, binary operator-, operator*): New
      	functions.
      	* expr.c (get_inner_reference): Use wi::bit_and_not.
      	* fold-const.c (fold_binary_loc): Likewise.
      	* ipa-prop.c (ipa_compute_jump_functions_for_edge): Likewise.
      	* tree-ssa-ccp.c (get_value_from_alignment): Likewise.
      	(bit_value_binop): Likewise.
      	* tree-ssa-math-opts.c (find_bswap_or_nop_load): Likewise.
      	* tree-vrp.c (zero_nonzero_bits_from_vr): Likewise.
      	(extract_range_from_binary_expr_1): Likewise.
      	(masked_increment): Likewise.
      	(simplify_bit_ops_using_ranges): Likewise.
      
      From-SVN: r253539
      Richard Sandiford committed
    • [PR 82416] Do not extend operands to at least 32 bits · 191411e4
      2017-10-09  Martin Jambor  <mjambor@suse.cz>
      
      	PR hsa/82416
      gcc/
      	* hsa-common.h (hsa_op_with_type): New method extend_int_to_32bit.
      	* hsa-gen.c (hsa_extend_inttype_to_32bit): New function.
      	(hsa_type_for_scalar_tree_type): Use it.  Always force min32int for
      	COMPLEX types.
      	(hsa_fixup_mov_insn_type): New function.
      	(hsa_op_with_type::get_in_type): Use it.
      	(hsa_build_append_simple_mov): Likewise.  Allow sub-32bit
      	immediates in an assert.
      	(hsa_op_with_type::extend_int_to_32bit): New method.
      	(gen_hsa_insns_for_bitfield): Fixup instruction and intermediary
      	types.  Convert to dest type if necessary.
      	(gen_hsa_insns_for_bitfield_load): Fixup load type if necessary.
      	(reg_for_gimple_ssa): Pass false as min32int to
      	hsa_type_for_scalar_tree_type.
      	(gen_hsa_addr): Fixup type when creating addresable temporary.
      	(gen_hsa_cmp_insn_from_gimple): Extend operands if necessary.
      	(gen_hsa_unary_operation): Extend operands and convert to dest type if
      	necessary.  Call hsa_fixup_mov_insn_type.
      	(gen_hsa_binary_operation): Changed operand types to hsa_op_with_type,
      	extend operands and convert to dest type if necessary.
      	(gen_hsa_insns_for_operation_assignment): Extend operands and convert
      	to dest type if necessary.
      	(set_output_in_type): Call hsa_fixup_mov_insn_type.  Just ude dest
      	if conversion nt necessary and size matches.
      	(gen_hsa_insns_for_load): Call hsa_fixup_mov_insn_type, convert
      	to dest type if necessary.
      	(gen_hsa_insns_for_store): Call hsa_fixup_mov_insn_type.
      	(gen_hsa_insns_for_switch_stmt): Likewise. Also extend operands if
      	necessary.
      	(gen_hsa_clrsb): Likewise.
      	(gen_hsa_ffs): Likewise.
      	(gen_hsa_divmod): Extend operands and convert to dest type if
      	necessary.
      	(gen_hsa_atomic_for_builtin): Change type of op to hsa_op_with_type.
      
      libgomp/
      	* testsuite/libgomp.hsa.c/pr82416.c: New test.
      
      From-SVN: r253538
      Martin Jambor committed
    • Fix gcc.dg/cold-1.c · b7807e11
      2017-10-09  Tom de Vries  <tom@codesourcery.com>
      
      	* gcc.dg/cold-1.c (foo1): Fix warning line number.  Make warning line
      	number relative.
      	(abort): Declare.
      
      From-SVN: r253537
      Tom de Vries committed
    • Daily bump. · 86a6f91e
      From-SVN: r253536
      GCC Administrator committed
  2. 08 Oct, 2017 14 commits
  3. 07 Oct, 2017 10 commits
    • builtins.def (BUILT_IN_SETJMP): Declare as library builtin instead of GCC builtin if... · 06fc54dd
      	* builtins.def (BUILT_IN_SETJMP): Declare as library builtin instead
      	of GCC builtin if DONT_USE_BUILTIN_SETJMP is defined.
      	* except.c (sjlj_emit_function_enter): If DONT_USE_BUILTIN_SETJMP is
      	defined, force the creation of a new block for a dispatch label.
      
      From-SVN: r253515
      Eric Botcazou committed
    • re PR fortran/82375 (PDT components in PDT declarations fail to compile) · 2fcd5884
      2017-10-07  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/82375
      	* class.c (gfc_find_derived_vtab): Return NULL for a passed
      	pdt template to prevent bad procedures from being written.
      	* decl.c (gfc_get_pdt_instance): Do not use the default
      	initializer for pointer and allocatable pdt type components. If
      	the component is allocatbale, set the 'alloc_comp' attribute of
      	'instance'.
      	* module.c : Add a prototype for 'mio_actual_arglist'. Add a
      	boolean argument 'pdt'.
      	(mio_component): Call it for the parameter list of pdt type
      	components with 'pdt' set to true.
      	(mio_actual_arg): Add the boolean 'pdt' and, if it is set, call
      	mio_integer for the 'spec_type'.
      	(mio_actual_arglist): Add the boolean 'pdt' and use it in the
      	call to mio_actual_arg.
      	(mio_expr, mio_omp_udr_expr): Call mio_actual_arglist with
      	'pdt' set false.
      	* resolve.c (get_pdt_spec_expr): Add the parameter name to the
      	KIND parameter error.
      	(get_pdt_constructor): Check that cons->expr is non-null.
      	* trans-array.c (structure_alloc_comps): For deallocation of
      	allocatable components, ensure that parameterized components
      	are deallocated first. Likewise, when parameterized components
      	are allocated, nullify allocatable components first. Do not
      	recurse into pointer or allocatable pdt components while
      	allocating or deallocating parameterized components. Test that
      	parameterized arrays or strings are allocated before freeing
      	them.
      	(gfc_trans_pointer_assignment): Call the new function. Tidy up
      	a minor whitespace issue.
      	trans-decl.c (gfc_trans_deferred_vars): Set 'tmp' to NULL_TREE
      	to prevent the expression from being used a second time.
      
      2017-10-07  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/82375
      	* gfortran.dg/pdt_13.f03 : New test.
      	* gfortran.dg/pdt_14.f03 : New test.
      	* gfortran.dg/pdt_15.f03 : New test.
      
      From-SVN: r253514
      Paul Thomas committed
    • invoke.texi (Wsuggest-attribute=cold): Document. · 12b9f3ac
      	* invoke.texi (Wsuggest-attribute=cold): Document.
      	* common.opt (Wsuggest-attribute=cold): New
      	* ipa-pure-const.c (warn_function_cold): New function.
      	* predict.c (compute_function_frequency): Use it.
      	* predict.h (warn_function_cold): Declare.
      
      	* gcc.dg/cold-1.c: New testcase.
      
      From-SVN: r253513
      Jan Hubicka committed
    • tree-switch-conversion.c (do_jump_if_equal, [...]): Update profile. · 59e2f25e
      
      	* tree-switch-conversion.c (do_jump_if_equal, emit_cmp_and_jump_insns):
      	Update profile.
      
      From-SVN: r253512
      Jan Hubicka committed
    • re PR c++/80805 (ICE in sufficiently complex code with -g (dump_aggr_type)) · b8f49e4a
      2017-10-07  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/80805
      	* g++.dg/cpp0x/pr80805.C: New.
      
      From-SVN: r253511
      Paolo Carlini committed
    • re PR c++/80805 (ICE in sufficiently complex code with -g (dump_aggr_type)) · 53214bd1
      2017-10-07  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/80805
      	* g++.dg/cpp0x/pr80805.C: New.
      
      From-SVN: r253510
      Paolo Carlini committed
    • re PR fortran/49232 (Pointer assignment of stride to CONTIGUOUS pointer not diagnosed as invalid) · 5abde510
      2017-10-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/49232
      	* expr.c (gfc_check_pointer_assign): Error
      	for non-contiguous rhs.
      
      2017-10-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/49232
      	* gfortran.dg/contiguous_4.f90: New test.
      
      From-SVN: r253509
      Thomas Koenig committed
    • gfortran.h (async_io_dt): Add external reference. · a4792d44
      2017-10-07  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	* gfortran.h (async_io_dt): Add external reference.
      	* io.c (async_io_dt): Add variable.
      	(compare_to_allowed_values): Add prototyte. Add optional argument
      	num. If present, set it to the number of the entry that was
      	matched.
      	(check_io_constraints): If this is for an asynchronous I/O
      	statement, set async_io_dt and set the asynchronous flag for
      	a SIZE tag.
      	* resolve.c (resolve_transfer): If async_io_dt is set, set
      	the asynchronous flag on the variable.
      	(resolve_fl_namelist): If async_io_dt is set, set the asynchronous
      	flag on all elements of the namelist.
      
      From-SVN: r253508
      Thomas Koenig committed
    • Fix libgomp.oacc-fortran/{firstprivate-1,parallel-reduction}.f90 for non-nvidia devices · e923330e
      2017-10-07  Tom de Vries  <tom@codesourcery.com>
      
      	* testsuite/libgomp.oacc-fortran/firstprivate-1.f90 (firstprivate):
      	Remove acc_device_nvidia references.
      	* testsuite/libgomp.oacc-fortran/parallel-reduction.f90 (reduction):
      	Same.
      
      From-SVN: r253507
      Tom de Vries committed
    • Daily bump. · 06833311
      From-SVN: r253506
      GCC Administrator committed
  4. 06 Oct, 2017 6 commits