1. 14 May, 2017 3 commits
    • allow auto_bitmap to use other bitmap obstacks · 4b5c84f4
      gcc/ChangeLog:
      
      2017-05-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* bitmap.h (class auto_bitmap): New constructor taking
      	bitmap_obstack * argument.
      
      From-SVN: r248018
      Trevor Saunders committed
    • store the bitmap_head within the auto_bitmap · a4d51bfb
      This gets rid of one allocation per bitmap.  Often the bitmap_head is
      now on the stack, when it isn't its part of some other struct on the
      heap instead of being refered to by that struct.  On 64 bit platforms
      this will increase the size of such structs by 24 bytes, but its an over
      all win since we don't need an 8 byte pointer pointing at the
      bitmap_head.  Given that the auto_bitmap owns the bitmap_head anyway we
      know there would never be a place where two auto_bitmaps would refer to
      the same bitmap_head object.
      
      gcc/ChangeLog:
      
      2017-05-13  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* bitmap.h (class auto_bitmap): Change type of m_bits to
      	bitmap_head, and adjust ctor / dtor and member operators.
      
      From-SVN: r248017
      Trevor Saunders committed
    • Daily bump. · 470e7e56
      From-SVN: r248016
      GCC Administrator committed
  2. 13 May, 2017 7 commits
    • re PR fortran/80442 (Rejects DATA statement with array slice) · 28ae01cd
      
      2017-05-09  Nicolas Koenig  <koenigni@student.ethz.ch>
      
      	PR fortran/80442
      	* array.c (gfc_ref_dimen_size): Simplify stride
      	expression
      	* data.c (gfc_advance_section): Simplify start,
      	end and stride expressions
      	(gfc_advance_section): Simplify start and end
      	expressions
      	(gfc_get_section_index): Simplify start expression 
      
      2017-05-09  Nicolas Koenig  <koenigni@student.ethz.ch>
      
      	PR fortran/80442
      	* gfortran.dg/impl_do_var_data.f90: New Test
      
      From-SVN: r248012
      Nicolas Koenig committed
    • compare-elim.c (equivalent_reg_at_start): Return NULL_RTX when returned register… · 36449020
      compare-elim.c (equivalent_reg_at_start): Return NULL_RTX when returned register mode doesn't match original mode.
      
      	* compare-elim.c (equivalent_reg_at_start): Return NULL_RTX
      	when returned register mode doesn't match original mode.
      
      From-SVN: r248009
      Uros Bizjak committed
    • io.c (gfc_resolve_dt): Fix returns to bool type. · 2263019d
      2017-05-13  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	* io.c (gfc_resolve_dt): Fix returns to bool type.
      
      From-SVN: r248008
      Jerry DeLisle committed
    • mn10300.c (mn10300_match_ccmode): Fix where we look for cc setter after the compare-elim changes. · 65fdd5e9
      2017-05-12  Jeff Law  <law@redhat.com>
      	    Jakub Jelinek  <jakub@redhat.com>
      
      	* config/mn10300/mn10300.c (mn10300_match_ccmode): Fix where
      	we look for cc setter after the compare-elim changes.
      	* config/mn10300/mn10300.md (addsi3_flags): Fix order of patterns
      	within the vector to match what compare-elim now expects.
      	(subsi3_flags, andsi3_flags, iorsi3_flags): Likewise.
      	(xorsi3_flags, one_cmplsi2_flags): Likewise.
      
      	* config/rx/rx.c (rx_match_ccmode): Fix where we look cc setter
      	after the compare-elim changes.
      	* config/rx/rx.md (abssi2_flags): Fix order of patterns within
      	the vector to match what compare-elim now expects.
      	(addsi3_flags, adc_flags, addsi3_flags peepholes): Likewise.
      	(andsi3_flags, negsi2_flags, one_cmplsi2_flags): Likewise.
      	(iorsi3_flags, rotlsi3_flags, rotrsi3_flags): Likewise.
      	(ashrsi3_flags, lshrsi3_flags, ashlsi3_flags): Likewise.
      	(ssaddsi3, subsi3_flags, sbb_flags, xorsi3_flags): Likewise.
      
      	* config/visium/visium.c (single_set_and_flags): Fix where
      	we look for cc setter after the compare-elim changes.
      	* config/visium/visium.md (flags_subst_logic): Fix order of patterns
      	with the vector to match what compare-elim now expects.
      	(flags_subst_arith, add<mode>3_insn_set_carry): Likewise.
      	(add<mode>3_insn_set_overflow, addsi3_insn_set_carry): Likewise.
      	(addsi3_insn_set_overflow, sub<mode>3_insn_set_carry): Likewise.
      	(sub<mode>3_insn_set_overflow, subsi3_insn_set_carry): Likewise.
      	(subsi3_insn_set_overflow, negsi2_insn_set_carry): Likewise.
      	(neg<mode>2_insn_set_overflow): Likewise.
      
      Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
      
      From-SVN: r248007
      Jeff Law committed
    • BRIG FE: Fix an assertion when doing an 'lda' of · c7488b4f
      a private array offset.
      
      From-SVN: r248006
      Pekka Jääskeläinen committed
    • Patch for RTL expand bug affecting aarch64 vector code. · f96bf49a
      	gcc/
      	PR middle-end/79794
          	* expmed.c (extract_bit_field_1): Add alt_rtl argument.  Before
      	maybe_expand_insn call, set ops[0].target.  If still set after call,
      	set alt_rtl.  Add extra arg to recursive calls.
      	(extract_bit_field): Add alt_rtl argument.  Pass to
      	extract_bit_field.
      	* expmed.h (extract_bit_field): Fix prototype.
      	* expr.c (emit_group_load_1, copy_blkmode_from_reg)
      	(copy_blkmode_to_reg, read_complex_part, store_field): Pass extra NULL
      	to extract_bit_field_calls.
      	(expand_expr_real_1): Pass alt_rtl to expand_expr_real instead of 0.
      	Pass alt_rtl to extract_bit_field calls.
      	* calls.c (store_unaligned_arguments_into_psuedos)
      	load_register_parameters): Pass extra NULL to extract_bit_field calls.
      	* optabs.c (maybe_legitimize_operand): Clear op->target when call
      	gen_reg_rtx.
      	* optabs.h (struct expand_operand): Add target bitfield.
      
      From-SVN: r248004
      Jim Wilson committed
    • Daily bump. · 7f390a7b
      From-SVN: r248003
      GCC Administrator committed
  3. 12 May, 2017 30 commits
    • Revert revision 247926. · 3838e0c0
      From-SVN: r247998
      François Dumont committed
    • * sv.po: Update. · e9cd48dc
      From-SVN: r247996
      Joseph Myers committed
    • re PR testsuite/80643 (NA->FAIL: gcc.dg/pr79214.c gcc.dg/pr79222.c… · 9b5f12ae
      re PR testsuite/80643 (NA->FAIL: gcc.dg/pr79214.c gcc.dg/pr79222.c gcc.dg/pr79223.c gcc.dg/tree-ssa/builtins-folding-gimple-ub.c)
      
      gcc/testsuite/ChangeLog:
      
      	PR testsuite/80643
      	* gfortran.dg/mvbits_7.f90: Prune diagnostic output incidental
      	to the purpose of the test.
      
      From-SVN: r247993
      Martin Sebor committed
    • compare-elim.c (try_eliminate_compare): Canonicalize operation with embedded… · 4f0473fe
      compare-elim.c (try_eliminate_compare): Canonicalize operation with embedded compare to [(set (reg:CCM) (compare:CCM...
      
      	* compare-elim.c (try_eliminate_compare): Canonicalize
      	operation with embedded compare to
      	[(set (reg:CCM) (compare:CCM (operation) (immediate)))
      	 (set (reg) (operation)].
      
      	* config/i386/i386.c (TARGET_FLAGS_REGNUM): New define.
      
      From-SVN: r247992
      Uros Bizjak committed
    • re PR target/80723 (FAIL gcc.target/i386/cadd.c scan assembler sbb) · 88ce9dc3
      	PR target/80723
      	* config/i386/i386.c (ix86_rtx_cost) [case PLUS]: Ignore the
      	cost of adding a carry flag for ADC instruction.
      	[case MINUS]: Ignore the cost of subtracting a carry flag
      	for SBB instruction.
      
      From-SVN: r247991
      Uros Bizjak committed
    • config.gcc (powerpc*-*-*): Add bmi2intrin.h, bmiintrin.h, and x86intrin.h · b76f1550
      
      [gcc]
      
      2017-05-12  Steven Munroe  <munroesj@gcc.gnu.org>
      
      	* config.gcc (powerpc*-*-*): Add bmi2intrin.h, bmiintrin.h,
      	and x86intrin.h
      	* config/rs6000/bmiintrin.h: New file.
      	* config/rs6000/bmi2intrin.h: New file.
      	* config/rs6000/x86intrin.h: New file.
      
      
      
      [gcc/testsuite]
      
      2017-05-12  Steven Munroe  <munroesj@gcc.gnu.org>
      
      	* gcc.target/powerpc/bmi-andn-1.c: New file
      	* gcc.target/powerpc/bmi-andn-2.c: New file.
      	* gcc.target/powerpc/bmi-bextr-1.c: New file.
      	* gcc.target/powerpc/bmi-bextr-2.c: New file.
      	* gcc.target/powerpc/bmi-bextr-4.c: New file.
      	* gcc.target/powerpc/bmi-bextr-5.c: New file.
      	* gcc.target/powerpc/bmi-blsi-1.c: New file.
      	* gcc.target/powerpc/bmi-blsi-2.c: New file.
      	* gcc.target/powerpc/bmi-blsmsk-1.c: new file.
      	* gcc.target/powerpc/bmi-blsmsk-2.c: New file.
      	* gcc.target/powerpc/bmi-blsr-1.c: New file.
      	* gcc.target/powerpc/bmi-blsr-2.c: New File.
      	* gcc.target/powerpc/bmi-check.h: New File.
      	* gcc.target/powerpc/bmi-tzcnt-1.c: new file.
      	* gcc.target/powerpc/bmi-tzcnt-2.c: New file.
      	* gcc.target/powerpc/bmi2-bzhi32-1.c: New file.
      	* gcc.target/powerpc/bmi2-bzhi64-1.c: New file.
      	* gcc.target/powerpc/bmi2-bzhi64-1a.c: New file.
      	* gcc.target/powerpc/bmi2-check.h: New file.
      	* gcc.target/powerpc/bmi2-mulx32-1.c: New file.
      	* gcc.target/powerpc/bmi2-mulx32-2.c: New file.
      	* gcc.target/powerpc/bmi2-mulx64-1.c: New file.
      	* gcc.target/powerpc/bmi2-mulx64-2.c: New file.
      	* gcc.target/powerpc/bmi2-pdep32-1.c: New file.
      	* gcc.target/powerpc/bmi2-pdep64-1.c: New file.
      	* gcc.target/powerpc/bmi2-pext32-1.c: New File.
      	* gcc.target/powerpc/bmi2-pext64-1.c: New file.
      	* gcc.target/powerpc/bmi2-pext64-1a.c: New File.
      
      From-SVN: r247988
      Steven Munroe committed
    • re PR c++/60430 (static_assert and reference to const/constexpr) · 2a3fa75a
      2017-05-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/60430
      	* g++.dg/cpp0x/pr60430.C: New.
      
      From-SVN: r247986
      Paolo Carlini committed
    • tree-vrp.c (vrp_dom_walker::before_dom_childern): Push unwinding markers. · e8bf7c7b
      	* tree-vrp.c (vrp_dom_walker::before_dom_childern): Push unwinding
      	markers.
      
      	* g++.dg/tree-ssa/ssa-dom-thread-4.c: Update expected output.
      
      From-SVN: r247985
      Jeff Law committed
    • re PR middle-end/80707 (r247844 causes error: extra outgoing edge) · 284d1f76
      gcc/
      	PR middle-end/80707
      	* tree-cfg.c: Remove cfg edges of unreachable case statements.
      
      gcc/testsuite/
      	PR middle-end/80707
      	* g++.dg/pr80707.C: New test.
      
      From-SVN: r247984
      Peter Bergner committed
    • compiler: add calling Bfunction Backend::call_expression · da55a299
          
          Pass in the calling (containing) Bfunction when invoking the Backend
          method call_expression(), so as to handle the case where generation of
          the call forces the creation of a temp var within the calling
          function.
          
          Reviewed-on: https://go-review.googlesource.com/43270
      
      From-SVN: r247981
      Than McIntosh committed
    • re PR ada/80117 (Standard'Word_Size is wrong for aarch64 ILP32) · 9dd19976
      	* system-linux-arm.ads (Memory_Size): Use Long_Integer'Size
      	instead of Word_Size.
      
      	Revert
      	2017-03-28  Andreas Schwab  <schwab@suse.de>
      
      	PR ada/80117
      	* system-linux-aarch64-ilp32.ads: New file.
      	* gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS_COMMON): Rename
      	from LIBGNAT_TARGET_PAIRS.
      	(LIBGNAT_TARGET_PAIRS_32, LIBGNAT_TARGET_PAIRS_64): Define.
      	(LIBGNAT_TARGET_PAIRS): Use LIBGNAT_TARGET_PAIRS_COMMON, and
      	LIBGNAT_TARGET_PAIRS_64 or LIBGNAT_TARGET_PAIRS_32 for -mabi=lp64
      	or -mabi=ilp32, resp.
      
      From-SVN: r247979
      Eric Botcazou committed
    • rs6000.c (rs6000_gimple_fold_builtin): Add handling for early expansion of vector divide builtins. · 302a0e37
      [gcc]
      
      2017-05-10  Will Schmidt  <will_schmidt@vnet.ibm.com>
      
      	* config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Add handling for
      	early expansion of vector divide builtins.
      	(builtin_function_type): Add VSX_BUILTIN_UDIV_V2DI to the list of
      	builtins identified as having unsigned arguments.
      
      
      [gcc/testsuite]
      
      2017-05-10  Will Schmidt  <will_schmidt@vnet.ibm.com>
      
      	* gcc.target/powerpc/fold-vec-div-float.c: New.
      	* gcc.target/powerpc/fold-vec-div-floatdouble.c: New.
      	* gcc.target/powerpc/fold-vec-div-longlong.c: New.
      
      From-SVN: r247977
      Will Schmidt committed
    • rs6000.c (gimple-fold.h): New #include. · a7785078
      [gcc]
      
      2017-05-10  Will Schmidt  <will_schmidt@vnet.ibm.com>
      
      	* config/rs6000/rs6000.c (gimple-fold.h): New #include.
      	(rs6000_gimple_fold_builtin): Add handling for early GIMPLE
      	expansion of vector logical operations (and, andc, or, xor,
      	nor, orc, nand)
      
      [gcc/testsuite]
      
      2017-05-10  Will Schmidt  <will_schmidt@vnet.ibm.com>
      
      	* gcc.target/powerpc/fold-vec-logical-ands-char.c: New.
      	* gcc.target/powerpc/fold-vec-logical-ands-int.c: New.
      	* gcc.target/powerpc/fold-vec-logical-ands-longlong.c: New.
      	* gcc.target/powerpc/fold-vec-logical-ands-short.c: New.
      	* gcc.target/powerpc/fold-vec-logical-ors-char.c: New.
      	* gcc.target/powerpc/fold-vec-logical-ors-int.c: New.
      	* gcc.target/powerpc/fold-vec-logical-ors-longlong.c: New.
      	* gcc.target/powerpc/fold-vec-logical-ors-short.c: New.
      	* gcc.target/powerpc/fold-vec-logical-other-char.c: New.
      	* gcc.target/powerpc/fold-vec-logical-other-int.c: New.
      	* gcc.target/powerpc/fold-vec-logical-other-longlong.c: New.
      	* gcc.target/powerpc/fold-vec-logical-other-short.c: New.
      
      From-SVN: r247976
      Will Schmidt committed
    • gimple-fold.c (create_tmp_reg_or_ssa_name): Remove static declaration. · edc19e03
      2017-05-12  Will Schmidt  <will_schmidt@vnet.ibm.com>
      
      [gcc]
              * gimple-fold.c (create_tmp_reg_or_ssa_name): Remove static declaration.
              * gimple-fold.h (create_tmp_reg_or_ssa_name): New prototype.
      
      From-SVN: r247975
      Will Schmidt committed
    • rs6000.c (rs6000_gimple_fold_builtin): Add handling for early GIMPLE expansion… · d6bb7841
      rs6000.c (rs6000_gimple_fold_builtin): Add handling for early GIMPLE expansion of vector multiplies.
      
      [gcc]
      
      2017-05-12  Will Schmidt  <will_schmidt@vnet.ibm.com>
      
              * config/rs6000/rs6000.c (rs6000_gimple_fold_builtin): Add handling for
              early GIMPLE expansion of vector multiplies.
      
      From-SVN: r247974
      Will Schmidt committed
    • PR libstdc++/78939 make tuple_size<cv T> depend on tuple_size<T> · f859f912
      	PR libstdc++/78939
      	* include/std/utility (tuple_size<cv T>): Only define partial
      	specializations when tuple_size<T>::value is valid.
      	* testsuite/20_util/tuple/78939.cc: New.
      	* testsuite/20_util/tuple/cv_tuple_size_neg.cc: New.
      
      From-SVN: r247973
      Jonathan Wakely committed
    • [ARM] Add missing TARGET_32BIT conditional to movsi · 82600dfc
      2017-05-12  Prakhar Bahuguna  <prakhar.bahuguna@arm.com>
      
          gcc/
          * config/arm/arm.md (movsi): Add TARGET_32BIT in addition to the
          TARGET_HAVE_MOVT conditional.
          (movt splitter): Likewise.
      
      From-SVN: r247971
      Prakhar Bahuguna committed
    • re PR c++/49604 (forward-declared enum's elements in class scope gets default… · 9206028e
      re PR c++/49604 (forward-declared enum's elements in class scope gets default access (class vs struct))
      
      2017-05-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/49604
      	* g++.dg/cpp0x/forw_enum14.C: New.
      	* g++.dg/cpp0x/forw_enum15.C: Likewise.
      
      From-SVN: r247969
      Paolo Carlini committed
    • runtime: fix build for non-split-stack systems · 06ace75d
          
          Change memory allocation accounting for stacks to use stacks_sys,
          since that seems to be what it is for.
          
          Reviewed-on: https://go-review.googlesource.com/43297
      
      From-SVN: r247967
      Ian Lance Taylor committed
    • tree-ssa-sccvn.h (has_VN_INFO): Declare. · 7af1c0ad
      2017-05-12  Richard Biener  <rguenther@suse.de>
      
      	* tree-ssa-sccvn.h (has_VN_INFO): Declare.
      	* tree-ssa-pre.c (eliminate_dom_walker::before_dom_children):
      	Fold all stmts not inplace.
      
      	* g++.dg/tree-ssa/ssa-dse-2.C: Adjust.
      
      From-SVN: r247966
      Richard Biener committed
    • re PR c++/67687 (ICE initializing constexpr member with constexpr constructor) · f7e95bdb
      2017-05-12  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/67687
      	* g++.dg/cpp0x/constexpr-ice17.C: New.
      
      From-SVN: r247964
      Paolo Carlini committed
    • re PR tree-optimization/80713 (recent crash in update_dep_bb) · 53e788d0
      2017-05-12  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/80713
      	* tree-ssa-pre.c (remove_dead_inserted_code): Clear
      	inserted_exprs bit for not removed stmts.
      
      	* gcc.dg/torture/pr80713.c: New testcase.
      
      From-SVN: r247963
      Richard Biener committed
    • Limit perf data buffer during profiling · 2ead1ab9
      With high -j parallelism the autofdo tests can randomly fail.
      autofdo uses Linux perf to record profiling data.
      Linux perf uses a locked perf buffer. By default it has
      around 516k buffer per uid (/proc/sys/kernel/perf_event_mlock_kb).
      
      An individual perf record tries to grab the full 516k,
      which makes parallel perf record fail.
      
      This patch limits the perf buffer for individual perf record to 8k.
      With the default settings this allows a parallelism of the test
      cases of 16, which is hopefully good enough
      
      (if not would need to add some kind of semaphore, or ask
      the user to increase the limit as root)
      
      I also removed an unneeded -o perf.data option
      
      Thanks to Marcin to finally spotting the problem.
      
      Passes bootstrap and test on x86_64-linux. Ok for trunk?
      
      gcc/testsuite/:
      
      2017-05-12  Andi Kleen  <ak@linux.intel.com>
      
      	PR testsuite/77684
      	* lib/target-supports.exp (profopt-perf-wrapper):
      	Add -m8 option to increase parallelism.
      
      From-SVN: r247962
      Andi Kleen committed
    • OpenACC C front end maintenance: c_parser_oacc_single_int_clause · 1e47f02b
      	gcc/c/
      	* c-parser.c (c_parser_omp_clause_num_gangs)
      	(c_parser_omp_clause_num_workers)
      	(c_parser_omp_clause_vector_length): Merge functions into...
      	(c_parser_oacc_single_int_clause): ... this new function.  Adjust
      	all users.
      	gcc/testsuite/
      	* c-c++-common/goacc/parallel-dims-1.c: New file.
      	* c-c++-common/goacc/parallel-dims-2.c: Likewise.
      
      From-SVN: r247960
      Thomas Schwinge committed
    • Load new scanlang.exp · 62ffe920
      	libitm:
      	* testsuite/lib/libitm.exp: Load scanlang.exp.
      
      	libgomp:
      	* testsuite/lib/libgomp.exp: Load scanlang.exp.
      
      	libatomic:
      	* testsuite/lib/libatomic.exp: Load scanlang.exp.
      
      From-SVN: r247959
      Rainer Orth committed
    • [PR middle-end/69921] Use "oacc kernels parallelized" attribute for parallelized OpenACC kernels · b0f271ce
      	gcc/
      	PR middle-end/69921
      	* tree-parloops.c (create_parallel_loop): Set "oacc kernels
      	parallelized" attribute for parallelized OpenACC kernels.
      	* omp-offload.c (execute_oacc_device_lower): Use it.
      	gcc/testsuite/
      	* c-c++-common/goacc/classify-kernels-unparallelized.c: Adjust.
      	* c-c++-common/goacc/classify-kernels.c: Likewise.
      	* c-c++-common/goacc/kernels-counter-vars-function-scope.c:
      	Likewise.
      	* c-c++-common/goacc/kernels-double-reduction-n.c: Likewise.
      	* c-c++-common/goacc/kernels-double-reduction.c: Likewise.
      	* c-c++-common/goacc/kernels-loop-2.c: Likewise.
      	* c-c++-common/goacc/kernels-loop-3.c: Likewise.
      	* c-c++-common/goacc/kernels-loop-g.c: Likewise.
      	* c-c++-common/goacc/kernels-loop-mod-not-zero.c: Likewise.
      	* c-c++-common/goacc/kernels-loop-n.c: Likewise.
      	* c-c++-common/goacc/kernels-loop-nest.c: Likewise.
      	* c-c++-common/goacc/kernels-loop.c: Likewise.
      	* c-c++-common/goacc/kernels-one-counter-var.c: Likewise.
      	* c-c++-common/goacc/kernels-reduction.c: Likewise.
      	* gfortran.dg/goacc/classify-kernels-unparallelized.f95: Likewise.
      	* gfortran.dg/goacc/classify-kernels.f95: Likewise.
      	* gfortran.dg/goacc/kernels-loop-2.f95: Likewise.
      	* gfortran.dg/goacc/kernels-loop-data-2.f95: Likewise.
      	* gfortran.dg/goacc/kernels-loop-data-enter-exit-2.f95: Likewise.
      	* gfortran.dg/goacc/kernels-loop-data-enter-exit.f95: Likewise.
      	* gfortran.dg/goacc/kernels-loop-data-update.f95: Likewise.
      	* gfortran.dg/goacc/kernels-loop-data.f95: Likewise.
      	* gfortran.dg/goacc/kernels-loop-n.f95: Likewise.
      	* gfortran.dg/goacc/kernels-loop.f95: Likewise.
      
      From-SVN: r247957
      Thomas Schwinge committed
    • Use "oacc kernels" attribute for OpenACC kernels · 25651634
      	gcc/
      	* omp-expand.c (expand_omp_target) <GF_OMP_TARGET_KIND_OACC_KERNELS>:
      	Set "oacc kernels" attribute.
      	* omp-general.c (oacc_set_fn_attrib): Remove is_kernel formal
      	parameter.  Adjust all users.
      	(oacc_fn_attrib_kernels_p): Remove function.
      	* omp-offload.c (execute_oacc_device_lower): Look for "oacc
      	kernels" attribute instead of calling oacc_fn_attrib_kernels_p.
      	* tree-ssa-loop.c (gate_oacc_kernels): Likewise.
      	* tree-parloops.c (create_parallel_loop): If oacc_kernels_p,
      	assert "oacc kernels" attribute is set.
      	gcc/testsuite/
      	* c-c++-common/goacc/classify-kernels-unparallelized.c: Adjust.
      	* c-c++-common/goacc/classify-kernels.c: Likewise.
      	* c-c++-common/goacc/classify-parallel.c: Likewise.
      	* c-c++-common/goacc/classify-routine.c: Likewise.
      	* gfortran.dg/goacc/classify-kernels-unparallelized.f95: Likewise.
      	* gfortran.dg/goacc/classify-kernels.f95: Likewise.
      	* gfortran.dg/goacc/classify-parallel.f95: Likewise.
      	* gfortran.dg/goacc/classify-routine.f95: Likewise.
      
      From-SVN: r247955
      Thomas Schwinge committed
    • Test cases to check OpenACC offloaded function's attributes and classification · ee58b02f
      	gcc/testsuite/
      	* c-c++-common/goacc/classify-kernels-unparallelized.c: New file.
      	* c-c++-common/goacc/classify-kernels.c: Likewise.
      	* c-c++-common/goacc/classify-parallel.c: Likewise.
      	* c-c++-common/goacc/classify-routine.c: Likewise.
      	* gfortran.dg/goacc/classify-kernels-unparallelized.f95: Likewise.
      	* gfortran.dg/goacc/classify-kernels.f95: Likewise.
      	* gfortran.dg/goacc/classify-parallel.f95: Likewise.
      	* gfortran.dg/goacc/classify-routine.f95: Likewise.
      
      From-SVN: r247953
      Thomas Schwinge committed
    • Typo fixes for "Don't assume __secure_getenv is available" · 9ef6dfba
      	libgfortran/
      	* runtime/environ.c (weak_secure_getenv): Fix "__secure_gettime"
      	vs. "__secure_getenv" typo.
      	(secure_getenv): Fix "HAVE__SECURE_GETENV"
      	vs. "HAVE___SECURE_GETENV" typo.
      
      From-SVN: r247952
      Thomas Schwinge committed