1! 2! Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved. 3! 4! Licensed under the Apache License, Version 2.0 (the "License"); 5! you may not use this file except in compliance with the License. 6! You may obtain a copy of the License at 7! 8! http://www.apache.org/licenses/LICENSE-2.0 9! 10! Unless required by applicable law or agreed to in writing, software 11! distributed under the License is distributed on an "AS IS" BASIS, 12! WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13! See the License for the specific language governing permissions and 14! limitations under the License. 15! 16 17! THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT 18! WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT 19! NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR 20! FITNESS FOR A PARTICULAR PURPOSE. 21! 22module IEEE_FEATURES 23#ifdef PGDLL 24!DEC$ ATTRIBUTES DLLEXPORT :: IEEE_FEATURES 25#endif 26type :: ieee_features_type 27 private 28 integer(4) :: ieee_features 29end type 30type(ieee_features_type), parameter :: ieee_datatype = ieee_features_type(1) 31type(ieee_features_type), parameter :: ieee_denormal = ieee_features_type(2) 32type(ieee_features_type), parameter :: ieee_divide = ieee_features_type(3) 33type(ieee_features_type), parameter :: ieee_halting = ieee_features_type(4) 34type(ieee_features_type), parameter :: ieee_inexact_flag = ieee_features_type(5) 35type(ieee_features_type), parameter :: ieee_inf = ieee_features_type(6) 36type(ieee_features_type), parameter :: ieee_invalid_flag = ieee_features_type(7) 37type(ieee_features_type), parameter :: ieee_nan = ieee_features_type(8) 38type(ieee_features_type), parameter :: ieee_rounding = ieee_features_type(9) 39type(ieee_features_type), parameter :: ieee_sqrt = ieee_features_type(10) 40type(ieee_features_type), parameter :: ieee_underflow_flag = ieee_features_type(11) 41end module IEEE_FEATURES 42