opencv/3rdparty/lapack/slaisnan.c

47 lines
1.4 KiB
C

#include "clapack.h"
logical slaisnan_(real *sin1, real *sin2)
{
/* System generated locals */
logical ret_val;
/* -- LAPACK auxiliary routine (version 3.1) -- */
/* Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. */
/* November 2006 */
/* .. Scalar Arguments .. */
/* .. */
/* Purpose */
/* ======= */
/* This routine is not for general use. It exists solely to avoid */
/* over-optimization in SISNAN. */
/* SLAISNAN checks for NaNs by comparing its two arguments for */
/* inequality. NaN is the only floating-point value where NaN != NaN */
/* returns .TRUE. To check for NaNs, pass the same variable as both */
/* arguments. */
/* Strictly speaking, Fortran does not allow aliasing of function */
/* arguments. So a compiler must assume that the two arguments are */
/* not the same variable, and the test will not be optimized away. */
/* Interprocedural or whole-program optimization may delete this */
/* test. The ISNAN functions will be replaced by the correct */
/* Fortran 03 intrinsic once the intrinsic is widely available. */
/* Arguments */
/* ========= */
/* SIN1 (input) REAL */
/* SIN2 (input) REAL */
/* Two numbers to compare for inequality. */
/* ===================================================================== */
/* .. Executable Statements .. */
ret_val = *sin1 != *sin2;
return ret_val;
} /* slaisnan_ */