`01: `**LOGICAL** **FUNCTION** **DLAISNAN**(DIN1,DIN2)
02: ***
03: ** -- LAPACK auxiliary routine (version 3.2) --*
04: ** Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..*
05: ** November 2006*
06: ***
07: ** .. Scalar Arguments ..*
08: DOUBLE PRECISION DIN1,DIN2
09: ** ..*
10: ***
11: ** Purpose*
12: ** =======*
13: ***
14: ** This routine is not for general use. It exists solely to avoid*
15: ** over-optimization in DISNAN.*
16: ***
17: ** DLAISNAN checks for NaNs by comparing its two arguments for*
18: ** inequality. NaN is the only floating-point value where NaN != NaN*
19: ** returns .TRUE. To check for NaNs, pass the same variable as both*
20: ** arguments.*
21: ***
22: ** A compiler must assume that the two arguments are*
23: ** not the same variable, and the test will not be optimized away.*
24: ** Interprocedural or whole-program optimization may delete this*
25: ** test. The ISNAN functions will be replaced by the correct*
26: ** Fortran 03 intrinsic once the intrinsic is widely available.*
27: ***
28: ** Arguments*
29: ** =========*
30: ***
31: ** DIN1 (input) DOUBLE PRECISION*
32: ** DIN2 (input) DOUBLE PRECISION*
33: ** Two numbers to compare for inequality.*
34: ***
35: ** =====================================================================*
36: ***
37: ** .. Executable Statements ..*
38: DLAISNAN = (DIN1.NE.DIN2)
39: **RETURN**
40: **END**
41: