1. 19 Nov, 2017 6 commits
    • [phoenix] Remove semicolon after do {} while (0) in TARGET_OS_CPP_BUILTINS · 3412efc8
      2017-11-19  Tom de Vries  <tom@codesourcery.com>
      
      	* config/phoenix.h (TARGET_OS_CPP_BUILTINS): Remove semicolon after
      	"do {} while (0)".
      
      From-SVN: r254928
      Tom de Vries committed
    • [visium] Remove semicolon after ASM_OUTPUT_CASE_END · b08c57ef
      2017-11-19  Tom de Vries  <tom@codesourcery.com>
      
      	* config/visium/visium.h (ASM_OUTPUT_CASE_END): Remove semicolon after
      	macro body.
      
      From-SVN: r254927
      Tom de Vries committed
    • [ft32, spu] Remove semicolon after do {} while (0) in REGISTER_TARGET_PRAGMAS · f8575ee9
      2017-11-19  Tom de Vries  <tom@codesourcery.com>
      
      	* config/ft32/ft32.h (REGISTER_TARGET_PRAGMAS): Remove semicolon after
      	"do {} while (0)".
      	* config/spu/spu.h (REGISTER_TARGET_PRAGMAS): Same.
      
      From-SVN: r254926
      Tom de Vries committed
    • [mcore] Remove semicolon after do {} while (0) in MCORE_EXPORT_NAME · 60141420
      2017-11-19  Tom de Vries  <tom@codesourcery.com>
      
      	* config/mcore/mcore-elf.h (MCORE_EXPORT_NAME): Remove semicolon after
      	"do {} while (0)".
      	* config/mcore/mcore.h (ASM_OUTPUT_ALIGNED_COMMON): After missing
      	semicolon after MCORE_EXPORT_NAME call.
      
      From-SVN: r254925
      Tom de Vries committed
    • PR libstdc++/pr66689 - comp_ellint_3 and ellint_3 return garbage values · b4688136
      2017-11-18  Edward Smith-Rowland  <3dw4rd@verizon.net>
      
      	PR libstdc++/pr66689 - comp_ellint_3 and ellint_3 return garbage values
      	* include/tr1/ell_integral.tcc: Correct the nu sign convention
      	in ellint_3 and comp_ellint_3.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	06_comp_ellint_3/check_value.cc: Regen with correct values.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	14_ellint_3/check_value.cc: Ditto.
      	* testsuite/special_functions/06_comp_ellint_3/check_value.cc: Ditto.
      	* testsuite/special_functions/13_ellint_3/check_value.cc: Ditto.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	01_assoc_laguerre/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	02_assoc_legendre/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	03_beta/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	04_comp_ellint_1/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	05_comp_ellint_2/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	07_conf_hyperg/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	08_cyl_bessel_i/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	09_cyl_bessel_j/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	10_cyl_bessel_k/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	11_cyl_neumann/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	12_ellint_1/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	13_ellint_2/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	15_expint/check_value_neg.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	16_hermite/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	17_hyperg/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	18_laguerre/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	19_legendre/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	20_riemann_zeta/check_value_neg.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	21_sph_bessel/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	22_sph_legendre/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	23_sph_neumann/check_value.cc: Regen.
      	* testsuite/ext/special_functions/conf_hyperg/check_value.cc: Regen.
      	* testsuite/ext/special_functions/hyperg/check_value.cc: Regen.
      	* testsuite/special_functions/01_assoc_laguerre/check_value.cc: Regen.
      	* testsuite/special_functions/02_assoc_legendre/check_value.cc: Regen.
      	* testsuite/special_functions/03_beta/check_value.cc: Regen.
      	* testsuite/special_functions/04_comp_ellint_1/check_value.cc: Regen.
      	* testsuite/special_functions/05_comp_ellint_2/check_value.cc: Regen.
      	* testsuite/special_functions/07_cyl_bessel_i/check_value.cc: Regen.
      	* testsuite/special_functions/08_cyl_bessel_j/check_value.cc: Regen.
      	* testsuite/special_functions/09_cyl_bessel_k/check_value.cc: Regen.
       	* testsuite/special_functions/10_cyl_neumann/check_value.cc: Regen.
      	* testsuite/special_functions/11_ellint_1/check_value.cc: Regen.
      	* testsuite/special_functions/12_ellint_2/check_value.cc: Regen.
      	* testsuite/special_functions/14_expint/check_value.cc: Regen.
      	* testsuite/special_functions/15_hermite/check_value.cc: Regen.
      	* testsuite/special_functions/16_laguerre/check_value.cc: Regen.
      	* testsuite/special_functions/17_legendre/check_value.cc: Regen.
      	* testsuite/special_functions/18_riemann_zeta/check_value.cc: Regen.
      	* testsuite/special_functions/19_sph_bessel/check_value.cc: Regen.
      	* testsuite/special_functions/20_sph_legendre/check_value.cc: Regen.
      	* testsuite/special_functions/21_sph_neumann/check_value.cc: Regen.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	06_comp_ellint_3/pr66689.cc: New.
      	* testsuite/tr1/5_numerical_facilities/special_functions/
      	14_ellint_3/pr66689.cc: New.
      	* testsuite/special_functions/06_comp_ellint_3/pr66689.cc: New.
      	* testsuite/special_functions/13_ellint_3/pr66689.cc: New.
      
      From-SVN: r254924
      Edward Smith-Rowland committed
    • Daily bump. · d4321083
      From-SVN: r254923
      GCC Administrator committed
  2. 18 Nov, 2017 9 commits
    • [vms] Add missing vmsdbgout_early_finish · 33f4e967
      2017-11-19  Tom de Vries  <tom@codesourcery.com>
      
      	PR target/82961
      	* vmsdbgout.c (vmsdbgout_early_finish): New function.
      	(vmsdbg_debug_hooks): Set early_finish field to vmsdbgout_early_finish.
      
      From-SVN: r254920
      Tom de Vries committed
    • cgraphclones.c (cgraph_edge::clone): Rename gcov_count to prof_count. · 517048ce
      
      	* cgraphclones.c (cgraph_edge::clone): Rename gcov_count to prof_count.
      	(cgraph_edge::clone): Cleanup updating of profile.
      	* ipa-cp.c (update_profiling_info): Likewise.
      	* ipa-inline-transform.c (inline_transform): Likewise.
      	* ipa-inline.c (inline_small_functions): Add missing space to dump.
      	* ipa-split.c (execute_split_functions): Do not split when function
      	is cold.
      	* predict.c (estimate_bb_frequencies): Cleanup updating of profile.
      	* profile-count.c (profile_count::dump): Add global0.
      	(profile_count::to_cgraph_frequency): Do not ICE when entry is
      	undefined.
      	(profile_count::to_sreal_scale): Likewise.
      	(profile_count::adjust_for_ipa_scaling): Fix typo in comment.
      	(profile_count::combine_with_ipa_count): New function.
      	* profile-count.h (profile_guessed_global0adjusted): New.
      	(profile_count::adjusted_zero): New.
      	(profile_count::global0adjusted): New.
      	(profile_count::combine_with_ipa_count): New.
      	* tree-inline.c (copy_edges_for_bb): Add NUM/DEN arugment;
      	correct profile of return block of split functions.
      	(copy_cfg_body): Remove unused profile_count.
      	(copy_body): Likewise.
      	(expand_call_inline): Update.
      	(tree_function_versioning): Update.
      
      From-SVN: r254919
      Jan Hubicka committed
    • PR 44292 Handle large record lengths · 2563a16d
      Now that the ABI supports large record lengths, there's a few places
      in libgfortran where we need to use larger types. For internal units
      which by definition are in-memory, it's enought to use ptrdiff_t, for
      external units gfc_offset.
      
      Regtested on x86_64-pc-linux-gnu?
      
      libgfortran/ChangeLog:
      
      2017-11-19  Janne Blomqvist  <jb@gcc.gnu.org>
      
              PR fortran/44292
      	* io/transfer.c (skip_record): Use gfc_offset to handle large
      	records.
      	(next_record_r): Likewise.
      	(sset): Likewise.
      	(next_record_w): Use gfc_offset/ptrdiff_t appropriately.
      
      From-SVN: r254918
      Janne Blomqvist committed
    • specfun.h: Expose airy_ai and airy_bi. · a7a389d6
      2017-11-18  Edward Smith-Rowland  <3dw4rd@verizon.net>
      
      	* include/bits/specfun.h: Expose airy_ai and airy_bi.
      	* include/tr1/modified_bessel_func.tcc: Treat NaN and inf arg, return.
      	* testsuite/ext/special_functions/airy_ai/check_nan.cc: New.
      	* testsuite/ext/special_functions/airy_ai/check_value.cc: New.
      	* testsuite/ext/special_functions/airy_ai/compile.cc: New.
      	* testsuite/ext/special_functions/airy_bi/check_nan.cc: New.
      	* testsuite/ext/special_functions/airy_bi/check_value.cc: New.
      	* testsuite/ext/special_functions/airy_bi/compile.cc: New.
      
      From-SVN: r254917
      Edward Smith-Rowland committed
    • PR 83036 Make NEXTREC specifier for INQUIRE work for large record numbers · a7037861
      This is accomplished by making the NEXTREC specifier be a 8 byte
      integer where supported.
      
      I wasn't able to come up with a testcase that does not create a large
      file that could be added to the testsuite, but here's one which
      creates a 2 GB file:
      
      program nextrec
        implicit none
        integer(8) :: ii, n
        open(10, file="foo.dat", recl=1, access="direct", form="unformatted", &
             status="replace")
        do ii = 1, huge(1) + 2_8
           write(10, rec=ii) 'a'
        end do
        inquire(10, nextrec=n)
        if (n /= huge(1) + 3_8) then
           call abort()
        end if
        close(10, status="delete")
      end program nextrec
      
      Regtested on x86_64-pc-linux-gnu.
      
      gcc/fortran/ChangeLog:
      
      2017-11-18  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/83036
      	* ioparm.def (IOPARM): Make nextrec a pintio.
      
      libgfortran/ChangeLog:
      
      2017-11-18  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/83036
      	* io/io.h: Make nextrec a GFC_IO_INT*.
      ---
       gcc/fortran/ioparm.def | 2 +-
       libgfortran/io/io.h    | 3 +--
       2 files changed, 2 insertions(+), 3 deletions(-)
      
      diff --git a/gcc/fortran/ioparm.def b/gcc/fortran/ioparm.def
      index 5fc04bc..59cc7cd 100644
      --- a/gcc/fortran/ioparm.def
      +++ b/gcc/fortran/ioparm.def
      @@ -62,7 +62,7 @@ IOPARM (inquire, exist,		1 << 7,  pint4)
       IOPARM (inquire, opened,	1 << 8,  pint4)
       IOPARM (inquire, number,	1 << 9,  pint4)
       IOPARM (inquire, named,		1 << 10, pint4)
      -IOPARM (inquire, nextrec,	1 << 11, pint4)
      +IOPARM (inquire, nextrec,	1 << 11, pintio)
       IOPARM (inquire, recl_out,	1 << 12, pintio)
       IOPARM (inquire, strm_pos_out,	1 << 13, pintio)
       IOPARM (inquire, file,		1 << 14, char1)
      diff --git a/libgfortran/io/io.h b/libgfortran/io/io.h
      index 3330bce..d29b112 100644
      --- a/libgfortran/io/io.h
      +++ b/libgfortran/io/io.h
      @@ -388,8 +388,7 @@ typedef struct
       {
         st_parameter_common common;
         GFC_INTEGER_4 *exist, *opened, *number, *named;
      -  GFC_INTEGER_4 *nextrec;
      -  GFC_IO_INT  *recl_out, *strm_pos_out;
      +  GFC_IO_INT *nextrec, *recl_out, *strm_pos_out;
         CHARACTER1 (file);
         CHARACTER2 (access);
         CHARACTER1 (form);
      -- 
      2.7.4
      
      From-SVN: r254916
      Janne Blomqvist committed
    • PR 44292 Enable large record lengths in OPEN and INQUIRE statements · 831cf09d
      This is a straightforward change that we can do now that the ABI has
      been bumped (again!).
      
      Regtested on x86_64-pc-linux-gnu.
      
      gcc/fortran/ChangeLog:
      
      2017-11-18  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/44292
      	* ioparm.def (IOPARM): Make recl_in intio, and recl_out pintio.
      
      libgfortran/ChangeLog:
      
      2017-11-18  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/44292
      	* io/io.h: Make recl_in a GC_IO_INT and recl_out a type
      	GFC_IO_INT*.
      
      gcc/testsuite/ChangeLog:
      
      2017-11-18  Janne Blomqvist  <jb@gcc.gnu.org>
      
      	PR fortran/44292
      	* gfortran.dg/large_recl.f90: New test.
      
      From-SVN: r254915
      Janne Blomqvist committed
    • re PR fortran/83012 (Simply contiguous pointer function not recognized as contiguous) · a814e35b
      2017-11-18  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/83012
      	* expr.c (gfc_is_simply_contiguous): If a function call through a
      	class variable is done through a reference, check the function's
      	interface.
      
      2017-11-18  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR fortran/83012
      	* gfortran.dg/contiguous_5.f90: New test.
      
      From-SVN: r254914
      Thomas Koenig committed
    • hash-set.h (hash_set::empty): New. · cde30fe0
      	* hash-set.h (hash_set::empty): New.
      	* tree-ssa-threadbackward.h: Delete.
      	* tree-ssa-threadbackward.c (class thread_jumps): New.
      	Move max_threaded_paths into class.
      	(fsm_find_thread_path): Remove arguments that are now in class.
      	(profitable_jump_thread_path): Rename to...
      	(thread_jumps::profitable_jump_thread_path): ...this.
      	(convert_and_register_jump_thread_path): Rename to...
      	(thread_jumps::convert_and_register_current_path): ...this.
      	(check_subpath_and_update_thread_path): Rename to...
      	(thread_jumps::check_subpath_and_update_thread_path): ...this.
      	(register_jump_thread_path_if_profitable): Rename to...
      	(thread_jumps::register_jump_thread_path_if_profitable): ...this.
      	(handle_phi): Rename to...
      	(thread_jumps::handle_phi): ...this.
      	(handle_assignment): Rename to...
      	(thread_jumps::handle_assignment): ...this.
      	(fsm_find_control_statement_thread_paths): Rename to...
      	(thread_jumps::fsm_find_control_statement_thread_paths): ...this.
      	(find_jump_threads_backwards): Rename to...
      	(thread_jumps::find_jump_threads_backwards): ...this.
      	Initialize path local data.
      	(pass_thread_jumps::execute): Call find_jump_threads_backwards
      	from within thread_jumps class.
      	(pass_early_thread_jumps::execute): Same.
      
      From-SVN: r254913
      Aldy Hernandez committed
    • Daily bump. · f32e0e16
      From-SVN: r254912
      GCC Administrator committed
  3. 17 Nov, 2017 25 commits