Support for single precision wp
-
Review changes -
-
Download -
Patches
-
Plain diff
What is the new feature
Support for single-precision as working-precision in libfortran-support. Related to icon-mpim MR (https://gitlab.dkrz.de/icon/icon-mpim/-/merge_requests/558), and libiconmath MR (libiconmath!13 (merged)).
How is it implemented
- New CMake argument
FS_ENABLE_SINGLE_PRECISION
, disabled by default - Precision handling: Introduction of
src/mo_iconlib_kind.f90
shared by fortran-support and iconmath:- Precision (dp+sp): Using iso_fortran_env variables
dp=>real64
andsp=>real32
- Working precision (wp):
FS_ENABLE_SINGLE_PRECISION==TRUE
->wp=real32
, elsewp=real64
- Variable precision (vp):
FS_ENABLE_MIXED_PRECISION==TRUE
->vp=real32
, elsevp=wp
- Precision (dp+sp): Using iso_fortran_env variables
- Extensions of some functions to include sp and dp interfaces
- Kind for
t_ptr
types iswp
by default, with wp or dp or sp versions specified by suffix.
Mandatory steps before review
-
Gitlab CI passes (Hint: use make format
for linting) -
New feature is covered by additional unit tests -
Mark the merge request as ready by removing Draft:
Mandatory steps before merge
-
Test coverage does not decrease -
Reviewed by a maintainer -
Incorporate review suggestions -
Prior to merging, please remove any boilerplate from the MR description, retaining only the Please describe your feature in a couple of words and describe important implementation details of the feature section to maintain -
Remember to edit the commit message and select the proper changelog category (feature/bugfix/other)
You are not supposed to merge this request by yourself, the maintainers of fortan-support take care of this action!
Edited by Dylan Kierans
Merge request reports
Compare and
Show latest version
- version 35450d0b5a
- version 34459259f1
- version 33bfcedf39
- version 322a24afee
- version 3171f35992
- version 3034823383
- version 296656295c
- version 286d88c05c
- version 2775495527
- version 26c1768138
- version 25d60ec444
- version 24d235ef29
- version 23cc497ea4
- version 22d70399d1
- version 218475529a
- version 208f40af0b
- version 195b0b7ad8
- version 18f6886415
- version 17102f3364
- version 163d6b5e57
- version 15894bc197
- version 14371b4dd0
- version 13371b4dd0
- version 12b897d6e2
- version 1141e67000
- version 10bab1e463
- version 9912c9443
- version 81ddebe84
- version 780791dc4
- version 69b31472a
- version 50fa512d3
- version 431a216b0
- version 3f577f391
- version 2de00dca9
- version 1b4c36a4a
- master (base)
- latest versiona90096de71 commits,
- version 35450d0b5a70 commits,
- version 34459259f169 commits,
- version 33bfcedf3968 commits,
- version 322a24afee67 commits,
- version 3171f3599266 commits,
- version 303482338365 commits,
- version 296656295c64 commits,
- version 286d88c05c63 commits,
- version 277549552760 commits,
- version 26c176813858 commits,
- version 25d60ec44455 commits,
- version 24d235ef2951 commits,
- version 23cc497ea450 commits,
- version 22d70399d149 commits,
- version 218475529a46 commits,
- version 208f40af0b45 commits,
- version 195b0b7ad844 commits,
- version 18f688641539 commits,
- version 17102f336438 commits,
- version 163d6b5e5737 commits,
- version 15894bc19735 commits,
- version 14371b4dd035 commits,
- version 13371b4dd034 commits,
- version 12b897d6e233 commits,
- version 1141e6700032 commits,
- version 10bab1e46330 commits,
- version 9912c944328 commits,
- version 81ddebe8426 commits,
- version 780791dc425 commits,
- version 69b31472a24 commits,
- version 50fa512d323 commits,
- version 431a216b020 commits,
- version 3f577f39115 commits,
- version 2de00dca914 commits,
- version 1b4c36a4a13 commits,
Compare changes
- Side-by-side
- Inline
Files
1Loading