arith.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  AR_DATA

Defines

#define AR_INT_SIZE_8   (ar_int_size_8 << 2)
#define AR_INT_SIZE_24   (ar_int_size_24 << 2)
#define AR_INT_SIZE_32   (ar_int_size_32 << 2)
#define AR_INT_SIZE_46   (ar_int_size_46 << 2)
#define AR_INT_SIZE_64   (ar_int_size_64 << 2)
#define AR_INT_SIZE_128   (ar_int_size_128 << 2)
#define AR_INT_SIZE_16   (ar_int_size_16 << 2)
#define AR_POINTER_BYTE   (ar_pointer_byte << 2)
#define AR_POINTER_CHAR   (ar_pointer_char << 2)
#define AR_POINTER_FCTN   (ar_pointer_fctn << 2)
#define AR_POINTER_WORD   (ar_pointer_word << 2)
#define AR_POINTER_24   ar_pointer_size_24
#define AR_POINTER_32   ar_pointer_size_32
#define AR_POINTER_64   ar_pointer_size_64
#define AR_SIGNED   ar_signed
#define AR_UNSIGNED   ar_unsigned
#define AR_FLOAT_IEEE   (ar_float_format_ieee << 5)
#define AR_FLOAT_CRAY   (ar_float_format_cray << 5)
#define AR_IEEE_FLOATING_POINT   ar_float_format_ieee
#define AR_CRAY_FLOATING_POINT   ar_float_format_cray
#define AR_FLOAT_32   (ar_float_32 << 1)
#define AR_FLOAT_64   (ar_float_64 << 1)
#define AR_FLOAT_128   (ar_float_128 << 1)
#define AR_FLOAT_SIMPLE   ar_simple
#define AR_FLOAT_COMPLEX   ar_complex
#define AR_FLOAT_IEEE_ROUND_NEAREST   (ar_float_ieee_round_nearest << 3)
#define AR_FLOAT_IEEE_ROUND_ZERO   (ar_float_ieee_round_zero << 3)
#define AR_FLOAT_IEEE_ROUND_UP   (ar_float_ieee_round_up << 3)
#define AR_FLOAT_IEEE_ROUND_DOWN   (ar_float_ieee_round_down << 3)
#define AR_ROUND_NEAREST   ar_float_ieee_round_nearest
#define AR_ROUND_ZERO   ar_float_ieee_round_zero
#define AR_ROUND_PLUS_INFINITY   ar_float_ieee_round_up
#define AR_ROUND_MINUS_INFINITY   ar_float_ieee_round_down
#define AR_FLOAT_CRAY_ROUND_C1   (ar_float_cray_round_c1 << 3)
#define AR_FLOAT_CRAY_ROUND_C1F   (ar_float_cray_round_c1f << 3)
#define AR_ROUNDED   ar_float_cray_round_c1
#define AR_UNROUNDED   ar_float_cray_round_c1f
#define AR_RECIPROCAL_ITERATION   ar_reciprocal_iteration
#define AR_UNDERFLOW_TO_DENORM   ar_underflow_to_denorm
#define AR_UNDERFLOW_TO_PLUS_ZERO   ar_underflow_to_plus_zero
#define AR_UNDERFLOW_TO_SIGNED_ZERO   ar_underflow_to_signed_zero
#define AR_UNDERFLOW_TO_SIGNED_TINY   ar_underflow_to_signed_tiny
#define AR_128BIT_EXTENDED_DOUBLE   ar_128_bit_extended_double
#define AR_128BIT_DOUBLE_DOUBLE   ar_128_bit_double_double
#define AR_CLASS_INT   (ar_class_int << 6)
#define AR_CLASS_FLOAT   (ar_class_float << 6)
#define AR_CLASS_POINTER   (ar_class_pointer << 6)
#define AR_CLASS_LOGICAL   (ar_class_logical << 6)
#define AR_CLASS_ERROR   (ar_class_error << 6)
#define AR_CLASS(type)   (type & 0x1c0)
#define AR_INT_SIZE(type)   (type & 0x3c)
#define AR_SIGNEDNESS(type)   (type & 0x1)
#define AR_STAT_OK   0000
#define AR_STAT_OVERFLOW   0001
#define AR_STAT_UNDERFLOW   0002
#define AR_STAT_UNDEFINED   0004
#define AR_STAT_INEXACT   0010
#define AR_STAT_ZERO   0020
#define AR_STAT_NEGATIVE   0040
#define AR_STAT_INVALID_TYPE   0100
#define AR_STAT_SEMIVALID   0200
#define AR_ZERO   0020
#define AR_NEGATIVE   0040
#define AR_ERROR_STATUS   0105

Typedefs

typedef long long AR_HOST_SINT64
typedef unsigned long long AR_HOST_UINT64

Enumerations

enum  ar_int_size {
  ar_int_size_8, ar_int_size_24, ar_int_size_32, ar_int_size_46,
  ar_int_size_64, ar_int_size_128, ar_int_size_16
}
enum  ar_pointer_format { ar_pointer_byte, ar_pointer_char, ar_pointer_fctn, ar_pointer_word }
enum  ar_pointer_size { ar_pointer_size_24, ar_pointer_size_32, ar_pointer_size_64 }
enum  ar_signedness { ar_signed, ar_unsigned }
enum  ar_float_format { ar_float_format_ieee, ar_float_format_cray }
enum  ar_float_size { ar_float_32, ar_float_64, ar_float_128 }
enum  ar_float_complexity { ar_simple, ar_complex }
enum  ar_float_ieee_round { ar_float_ieee_round_nearest, ar_float_ieee_round_up, ar_float_ieee_round_down, ar_float_ieee_round_zero }
enum  ar_float_cray_round { ar_float_cray_round_c1, ar_reciprocal_iteration, ar_float_cray_round_c1f }
enum  ar_float_underflow { ar_underflow_to_denorm, ar_underflow_to_plus_zero, ar_underflow_to_signed_zero, ar_underflow_to_signed_tiny }
enum  ar_float_128_bit { ar_128_bit_extended_double, ar_128_bit_double_double }
enum  ar_class {
  ar_class_int, ar_class_float, ar_class_pointer, ar_class_logical,
  ar_class_error
}
enum  AR_TYPE {
  AR_Int_8_S = AR_CLASS_INT | AR_INT_SIZE_8 | AR_SIGNED, AR_Int_8_U = AR_CLASS_INT | AR_INT_SIZE_8 | AR_UNSIGNED, AR_Int_16_S = AR_CLASS_INT | AR_INT_SIZE_16 | AR_SIGNED, AR_Int_16_U = AR_CLASS_INT | AR_INT_SIZE_16 | AR_UNSIGNED,
  AR_Int_24_S = AR_CLASS_INT | AR_INT_SIZE_24 | AR_SIGNED, AR_Int_24_U = AR_CLASS_INT | AR_INT_SIZE_24 | AR_UNSIGNED, AR_Int_32_S = AR_CLASS_INT | AR_INT_SIZE_32 | AR_SIGNED, AR_Int_32_U = AR_CLASS_INT | AR_INT_SIZE_32 | AR_UNSIGNED,
  AR_Int_46_S = AR_CLASS_INT | AR_INT_SIZE_46 | AR_SIGNED, AR_Int_46_U = AR_CLASS_INT | AR_INT_SIZE_46 | AR_UNSIGNED, AR_Int_64_S = AR_CLASS_INT | AR_INT_SIZE_64 | AR_SIGNED, AR_Int_64_U = AR_CLASS_INT | AR_INT_SIZE_64 | AR_UNSIGNED,
  AR_Int_128_S = AR_CLASS_INT | AR_INT_SIZE_128 | AR_SIGNED, AR_Int_128_U = AR_CLASS_INT | AR_INT_SIZE_128 | AR_UNSIGNED, AR_Logical = AR_CLASS_LOGICAL, AR_Pointer_Byte = AR_CLASS_POINTER | AR_POINTER_BYTE,
  AR_Pointer_Char_24 = AR_CLASS_POINTER | AR_POINTER_CHAR | AR_POINTER_24, AR_Pointer_Char_32 = AR_CLASS_POINTER | AR_POINTER_CHAR | AR_POINTER_32, AR_Pointer_Char_64 = AR_CLASS_POINTER | AR_POINTER_CHAR | AR_POINTER_64, AR_Pointer_Fctn_24 = AR_CLASS_POINTER | AR_POINTER_FCTN | AR_POINTER_24,
  AR_Pointer_Fctn_32 = AR_CLASS_POINTER | AR_POINTER_FCTN | AR_POINTER_32, AR_Pointer_Fctn_64 = AR_CLASS_POINTER | AR_POINTER_FCTN | AR_POINTER_64, AR_Pointer_Word_24 = AR_CLASS_POINTER | AR_POINTER_WORD | AR_POINTER_24, AR_Pointer_Word_32 = AR_CLASS_POINTER | AR_POINTER_WORD | AR_POINTER_32,
  AR_Pointer_Word_64 = AR_CLASS_POINTER | AR_POINTER_WORD | AR_POINTER_64, AR_Float_32 = AR_CLASS_FLOAT | AR_FLOAT_32 | AR_FLOAT_SIMPLE, AR_Float_64 = AR_CLASS_FLOAT | AR_FLOAT_64 | AR_FLOAT_SIMPLE, AR_Float_128 = AR_CLASS_FLOAT | AR_FLOAT_128 | AR_FLOAT_SIMPLE,
  AR_Complex_32 = AR_CLASS_FLOAT | AR_FLOAT_32 | AR_FLOAT_COMPLEX, AR_Complex_64 = AR_CLASS_FLOAT | AR_FLOAT_64 | AR_FLOAT_COMPLEX, AR_Complex_128 = AR_CLASS_FLOAT | AR_FLOAT_128 | AR_FLOAT_COMPLEX, AR_Float_Cray1_64,
  AR_Float_Cray1_64_F, AR_Float_Cray1_128, AR_Float_IEEE_NR_32, AR_Float_IEEE_NR_64,
  AR_Float_IEEE_NR_128, AR_Float_IEEE_ZE_32, AR_Float_IEEE_ZE_64, AR_Float_IEEE_ZE_128,
  AR_Float_IEEE_UP_32, AR_Float_IEEE_UP_64, AR_Float_IEEE_UP_128, AR_Float_IEEE_DN_32,
  AR_Float_IEEE_DN_64, AR_Float_IEEE_DN_128, AR_Complex_Cray1_64, AR_Complex_Cray1_64_F,
  AR_Complex_Cray1_128, AR_Complex_IEEE_NR_32, AR_Complex_IEEE_NR_64, AR_Complex_IEEE_NR_128,
  AR_Complex_IEEE_ZE_32, AR_Complex_IEEE_ZE_64, AR_Complex_IEEE_ZE_128, AR_Complex_IEEE_UP_32,
  AR_Complex_IEEE_UP_64, AR_Complex_IEEE_UP_128, AR_Complex_IEEE_DN_32, AR_Complex_IEEE_DN_64,
  AR_Complex_IEEE_DN_128, AR_Error = AR_CLASS_ERROR
}
enum  AR_COMPARE_TYPE {
  AR_Compare_LT, AR_Compare_EQ, AR_Compare_GT, AR_Compare_Unord,
  AR_Compare_NE, AR_Compare_Invalid
}

Functions

int AR_abs (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_add (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_add_ptr_int (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type, const AR_DATA *opnd3, const AR_TYPE *opnd3type)
int AR_bitor (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_bitand (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_bitxor (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_bitcomplement (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_cimag (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
AR_COMPARE_TYPE AR_compare (const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_conj (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_creal (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_divide (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_dshiftl (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type, const AR_DATA *opnd3, const AR_TYPE *opnd3type)
int AR_dshiftr (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type, const AR_DATA *opnd3, const AR_TYPE *opnd3type)
int AR_mask (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_leadz (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_make_complex (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_make_imag (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_mod (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_multiply (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_negate (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_one (AR_DATA *result, const AR_TYPE *type)
int AR_popcnt (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_poppar (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_round_int_div (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd, const AR_TYPE *opndtype)
int AR_shiftl (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_shiftr (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_ishft (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_ishftc (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type, const AR_DATA *opnd3, const AR_TYPE *opnd3type)
int AR_ibits (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type, const AR_DATA *opnd3, const AR_TYPE *opnd3type)
int AR_status (const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_subtract (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_subtract_ptr_ptr (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type, const AR_DATA *opnd3, const AR_TYPE *opnd3type)
int AR_CRAY_64_trunc_bits (int truncbits)
const char * arith_vers_name (void)
const char * arith_vers_ID (void)
const char * arith_vers_number (void)
int AR_convert (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_convert_float_to_str (char *resultstr, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_convert_hex_str_to_float (AR_DATA *result, const AR_TYPE *resulttype, const char *ar_str)
int AR_convert_host_sint64_to_int (AR_DATA *result, const AR_TYPE *resulttype, AR_HOST_SINT64 i64val)
int AR_convert_int_to_host_sint64 (AR_HOST_SINT64 *i64val, const AR_DATA *opnd, const AR_TYPE *opndtype)
int AR_convert_int_to_str (char *resultstr, const int *base, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_convert_str_to_int (AR_DATA *result, const AR_TYPE *resulttype, int *bits_used, const char *str, const int *base)
int AR_convert_str_to_float (AR_DATA *result, const AR_TYPE *resulttype, const char *str)
int AR_cabs (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_exp (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_Modulo (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_modulo (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_log (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type)
int AR_power (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_sqrt (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd, const AR_TYPE *opndtype)
int AR_index (AR_DATA *result, const AR_TYPE *resulttype, const char *str1, const AR_DATA *str1len, const AR_TYPE *str1lentype, const char *str2, const AR_DATA *str2len, const AR_TYPE *str2lentype, const AR_DATA *backward, const AR_TYPE *backwardtype)
int AR_reshape (void *result, const void *source, const void *shape, const void *pad, const void *order)
int AR_scan (AR_DATA *result, const AR_TYPE *resulttype, const char *str1, const AR_DATA *str1len, const AR_TYPE *str1lentype, const char *str2, const AR_DATA *str2len, const AR_TYPE *str2lentype, const AR_DATA *backward, const AR_TYPE *backwardtype)
int AR_selected_real_kind (AR_DATA *result, const AR_TYPE *resulttype, const AR_DATA *opnd1, const AR_TYPE *opnd1type, const AR_DATA *opnd2, const AR_TYPE *opnd2type)
int AR_transfer (void *result, const void *source, const void *mold, const AR_DATA *size, const AR_TYPE *sizetype)
int AR_verify (AR_DATA *result, const AR_TYPE *resulttype, const char *str1, const AR_DATA *str1len, const AR_TYPE *str1lentype, const char *str2, const AR_DATA *str2len, const AR_TYPE *str2lentype, const AR_DATA *backward, const AR_TYPE *backwardtype)

Variables

AR_DATA AR_const_zero
AR_DATA AR_const_one
AR_DATA AR_const_two
AR_DATA AR_const_false
AR_DATA AR_const_true

Define Documentation

#define AR_128BIT_DOUBLE_DOUBLE   ar_128_bit_double_double

Definition at line 187 of file arith.h.

Referenced by open_arith_file().

#define AR_128BIT_EXTENDED_DOUBLE   ar_128_bit_extended_double

Definition at line 186 of file arith.h.

Referenced by open_arith_file(), and open_intrinsics_file().

#define AR_CLASS ( type   )     (type & 0x1c0)
#define AR_CLASS_ERROR   (ar_class_error << 6)

Definition at line 212 of file arith.h.

#define AR_CLASS_FLOAT   (ar_class_float << 6)
#define AR_CLASS_INT   (ar_class_int << 6)
#define AR_CLASS_LOGICAL   (ar_class_logical << 6)

Definition at line 211 of file arith.h.

Referenced by AR_status().

#define AR_CLASS_POINTER   (ar_class_pointer << 6)
#define AR_CRAY_FLOATING_POINT   ar_float_format_cray

Definition at line 114 of file arith.h.

Referenced by ar_clear_sim_state(), ar_sim(), and open_arith_file().

#define AR_ERROR_STATUS   0105
#define AR_FLOAT_128   (ar_float_128 << 1)
#define AR_FLOAT_32   (ar_float_32 << 1)
#define AR_FLOAT_64   (ar_float_64 << 1)
#define AR_FLOAT_COMPLEX   ar_complex
#define AR_FLOAT_CRAY   (ar_float_format_cray << 5)
#define AR_FLOAT_CRAY_ROUND_C1   (ar_float_cray_round_c1 << 3)

Definition at line 160 of file arith.h.

#define AR_FLOAT_CRAY_ROUND_C1F   (ar_float_cray_round_c1f << 3)

Definition at line 161 of file arith.h.

#define AR_FLOAT_IEEE   (ar_float_format_ieee << 5)
#define AR_FLOAT_IEEE_ROUND_DOWN   (ar_float_ieee_round_down << 3)

Definition at line 146 of file arith.h.

#define AR_FLOAT_IEEE_ROUND_NEAREST   (ar_float_ieee_round_nearest << 3)

Definition at line 143 of file arith.h.

#define AR_FLOAT_IEEE_ROUND_UP   (ar_float_ieee_round_up << 3)

Definition at line 145 of file arith.h.

#define AR_FLOAT_IEEE_ROUND_ZERO   (ar_float_ieee_round_zero << 3)

Definition at line 144 of file arith.h.

#define AR_FLOAT_SIMPLE   ar_simple

Definition at line 132 of file arith.h.

Referenced by ar_compare_float(), AR_leadz(), AR_popcnt(), and AR_poppar().

#define AR_IEEE_FLOATING_POINT   ar_float_format_ieee

Definition at line 113 of file arith.h.

Referenced by ar_clear_sim_state(), ar_sim(), open_arith_file(), and open_intrinsics_file().

#define AR_INT_SIZE ( type   )     (type & 0x3c)
#define AR_INT_SIZE_128   (ar_int_size_128 << 2)

Definition at line 57 of file arith.h.

Referenced by AR_convert_str_to_int(), and ar_set_invalid_result().

#define AR_INT_SIZE_16   (ar_int_size_16 << 2)
#define AR_INT_SIZE_24   (ar_int_size_24 << 2)
#define AR_INT_SIZE_32   (ar_int_size_32 << 2)
#define AR_INT_SIZE_46   (ar_int_size_46 << 2)
#define AR_INT_SIZE_64   (ar_int_size_64 << 2)
#define AR_INT_SIZE_8   (ar_int_size_8 << 2)
#define AR_NEGATIVE   0040

Definition at line 412 of file arith.h.

Referenced by ar_cabs(), ar_exp(), ar_log(), and ar_sqrt().

#define AR_POINTER_24   ar_pointer_size_24

Definition at line 80 of file arith.h.

Referenced by AR_add_ptr_int(), and ar_clear_unused_bits().

#define AR_POINTER_32   ar_pointer_size_32

Definition at line 81 of file arith.h.

Referenced by AR_add_ptr_int(), and ar_clear_unused_bits().

#define AR_POINTER_64   ar_pointer_size_64

Definition at line 82 of file arith.h.

Referenced by AR_add_ptr_int().

#define AR_POINTER_BYTE   (ar_pointer_byte << 2)

Definition at line 68 of file arith.h.

#define AR_POINTER_CHAR   (ar_pointer_char << 2)
#define AR_POINTER_FCTN   (ar_pointer_fctn << 2)
#define AR_POINTER_WORD   (ar_pointer_word << 2)
#define AR_RECIPROCAL_ITERATION   ar_reciprocal_iteration

Definition at line 165 of file arith.h.

Referenced by ar_cfdiv64(), ar_cfmul64(), ar_sim(), and main().

#define AR_ROUND_MINUS_INFINITY   ar_float_ieee_round_down
#define AR_ROUND_NEAREST   ar_float_ieee_round_nearest
#define AR_ROUND_PLUS_INFINITY   ar_float_ieee_round_up
#define AR_ROUND_ZERO   ar_float_ieee_round_zero
#define AR_ROUNDED   ar_float_cray_round_c1

Definition at line 163 of file arith.h.

Referenced by ar_cfmul64(), ar_sim(), main(), and open_arith_file().

#define AR_SIGNED   ar_signed
#define AR_SIGNEDNESS ( type   )     (type & 0x1)
#define AR_STAT_INEXACT   0010
#define AR_STAT_INVALID_TYPE   0100

Definition at line 407 of file arith.h.

Referenced by AR_abs(), AR_add(), ar_add_integer(), ar_add_pointer(), AR_add_ptr_int(), ar_cabs(), AR_cabs(), AR_cimag(), ar_compare_float(), ar_compose_complex(), AR_convert(), AR_convert_float_to_str(), AR_convert_hex_str_to_float(), AR_convert_host_sint64_to_int(), AR_convert_int_to_host_sint64(), AR_convert_int_to_str(), ar_convert_str_to_float(), AR_convert_str_to_float(), AR_convert_str_to_int(), ar_convert_to_complex(), ar_convert_to_float(), ar_convert_to_integral(), ar_convert_to_pointer(), AR_creal(), ar_cvt_str_to_float(), ar_decompose_complex(), AR_divide(), ar_divide_float(), ar_divide_integer(), AR_dshiftl(), AR_dshiftr(), ar_exp(), AR_exp(), ar_get_function_value(), AR_ibits(), ar_index(), AR_index(), AR_ishft(), AR_ishftc(), AR_leadz(), ar_log(), AR_log(), AR_make_complex(), AR_mask(), AR_mod(), ar_modulo(), AR_Modulo(), AR_multiply(), ar_multiply_float(), ar_multiply_integer(), AR_negate(), ar_negate_complex(), ar_negate_float(), ar_negate_integer(), AR_one(), ar_pass_arg_address(), ar_pass_arg_value(), AR_popcnt(), AR_poppar(), ar_power(), AR_power(), ar_reshape(), AR_round_int_div(), ar_scan(), AR_scan(), ar_selected_real_kind(), AR_selected_real_kind(), AR_shiftl(), AR_shiftr(), ar_sqrt(), AR_sqrt(), AR_status(), AR_subtract(), ar_subtract_integer(), ar_subtract_pointer(), AR_subtract_ptr_ptr(), ar_transfer(), AR_transfer(), ar_verify(), AR_verify(), bitoper(), check_ar_result(), dotest32_2c(), dotest64_2c(), folder_driver(), main(), and misc_tests().

#define AR_STAT_NEGATIVE   0040
#define AR_STAT_OK   0000

Definition at line 399 of file arith.h.

Referenced by AR_add(), ar_add_integer(), ar_add_pointer(), ar_c128to64(), ar_c128toi64(), ar_c1frecip(), ar_c64to128(), ar_cfadd128(), ar_cfadd64(), ar_cfdiv128(), ar_cfdiv64(), ar_cfix128(), ar_cfix64(), ar_cflt128(), ar_cflt64(), ar_cfmul128(), ar_cfmul64(), ar_check_status(), ar_clear_sim_state(), ar_compose_complex(), AR_convert_float_to_str(), AR_convert_hex_str_to_float(), AR_convert_int_to_str(), AR_convert_str_to_int(), ar_convert_to_complex(), ar_convert_to_float(), ar_convert_to_integral(), ar_convert_to_pointer(), AR_CRAY_64_trunc_bits(), ar_ctoi128(), ar_ctoi64(), ar_cvt_str_to_float(), ar_decompose_complex(), ar_divide_integer(), ar_ext_address(), ar_i128norm(), ar_i128to64(), ar_i32norm(), ar_i64norm(), ar_i64to32(), ar_ifadd128(), ar_ifadd32(), ar_ifadd64(), ar_ifcmp128(), ar_ifcmp32(), ar_ifcmp64(), ar_ifdiv128(), ar_ifdiv32(), ar_ifdiv64(), ar_ifix128(), ar_ifix32(), ar_ifix64(), ar_ifmul128(), ar_ifmul32(), ar_ifmul64(), ar_imul64u(), ar_isqrt64(), ar_multiply_integer(), ar_negate_float(), AR_one(), ar_pass_arg_address(), ar_pass_arg_value(), ar_pass_ext_address(), ar_pass_fcd_address(), ar_power(), ar_put_real_address(), AR_set_rounding_mode(), AR_set_state_register(), AR_set_underflow_mode(), ar_sim(), AR_status(), ar_subtract_integer(), ar_subtract_pointer(), ar_unpack_float_str(), dotest128_1(), dotest128_2(), dotest128_i(), dotest128_r(), dotest32_1s(), dotest32_2(), dotest32_2c(), dotest64_1(), dotest64_1s(), dotest64_2(), dotest64_2c(), dotest64_c(), dotest64_i(), dotest64_i2(), ieeetest32_2cmp(), ieeetest64_2cmp(), test_ibits_signed(), test_ishft_signed(), and test_ishftc_signed().

#define AR_STAT_OVERFLOW   0001
#define AR_STAT_SEMIVALID   0200
#define AR_STAT_UNDEFINED   0004
#define AR_STAT_UNDERFLOW   0002
#define AR_STAT_ZERO   0020
#define AR_UNDERFLOW_TO_DENORM   ar_underflow_to_denorm

Definition at line 175 of file arith.h.

Referenced by ar_i128norm(), ar_i32norm(), and ar_i64norm().

#define AR_UNDERFLOW_TO_PLUS_ZERO   ar_underflow_to_plus_zero

Definition at line 176 of file arith.h.

Referenced by ar_i128norm(), ar_i32norm(), ar_i64norm(), open_arith_file(), and open_intrinsics_file().

#define AR_UNDERFLOW_TO_SIGNED_TINY   ar_underflow_to_signed_tiny

Definition at line 178 of file arith.h.

Referenced by ar_i128norm(), ar_i32norm(), and ar_i64norm().

#define AR_UNDERFLOW_TO_SIGNED_ZERO   ar_underflow_to_signed_zero

Definition at line 177 of file arith.h.

#define AR_UNROUNDED   ar_float_cray_round_c1f

Definition at line 164 of file arith.h.

Referenced by ar_cfdiv64(), ar_cfmul64(), ar_sim(), main(), and open_arith_file().

#define AR_UNSIGNED   ar_unsigned
#define AR_ZERO   0020

Definition at line 411 of file arith.h.

Referenced by ar_cabs(), ar_exp(), ar_log(), and ar_sqrt().


Typedef Documentation

typedef long long AR_HOST_SINT64

Definition at line 97 of file arith.h.

typedef unsigned long long AR_HOST_UINT64

Definition at line 98 of file arith.h.


Enumeration Type Documentation

enum ar_class
Enumerator:
ar_class_int 
ar_class_float 
ar_class_pointer 
ar_class_logical 
ar_class_error 

Definition at line 199 of file arith.h.

Enumerator:
AR_Compare_LT 
AR_Compare_EQ 
AR_Compare_GT 
AR_Compare_Unord 
AR_Compare_NE 
AR_Compare_Invalid 

Definition at line 418 of file arith.h.

Enumerator:
ar_128_bit_extended_double 
ar_128_bit_double_double 

Definition at line 180 of file arith.h.

Enumerator:
ar_simple 
ar_complex 

Definition at line 127 of file arith.h.

Enumerator:
ar_float_cray_round_c1 
ar_reciprocal_iteration 
ar_float_cray_round_c1f 

Definition at line 153 of file arith.h.

Enumerator:
ar_float_format_ieee 
ar_float_format_cray 

Definition at line 104 of file arith.h.

Enumerator:
ar_float_ieee_round_nearest 
ar_float_ieee_round_up 
ar_float_ieee_round_down 
ar_float_ieee_round_zero 

Definition at line 135 of file arith.h.

Enumerator:
ar_float_32 
ar_float_64 
ar_float_128 

Definition at line 116 of file arith.h.

Enumerator:
ar_underflow_to_denorm 
ar_underflow_to_plus_zero 
ar_underflow_to_signed_zero 
ar_underflow_to_signed_tiny 

Definition at line 167 of file arith.h.

Enumerator:
ar_int_size_8 
ar_int_size_24 
ar_int_size_32 
ar_int_size_46 
ar_int_size_64 
ar_int_size_128 
ar_int_size_16 

Definition at line 41 of file arith.h.

Enumerator:
ar_pointer_byte 
ar_pointer_char 
ar_pointer_fctn 
ar_pointer_word 

Definition at line 60 of file arith.h.

Enumerator:
ar_pointer_size_24 
ar_pointer_size_32 
ar_pointer_size_64 

Definition at line 73 of file arith.h.

Enumerator:
ar_signed 
ar_unsigned 

Definition at line 84 of file arith.h.

enum AR_TYPE
Enumerator:
AR_Int_8_S 
AR_Int_8_U 
AR_Int_16_S 
AR_Int_16_U 
AR_Int_24_S 
AR_Int_24_U 
AR_Int_32_S 
AR_Int_32_U 
AR_Int_46_S 
AR_Int_46_U 
AR_Int_64_S 
AR_Int_64_U 
AR_Int_128_S 
AR_Int_128_U 
AR_Logical 
AR_Pointer_Byte 
AR_Pointer_Char_24 
AR_Pointer_Char_32 
AR_Pointer_Char_64 
AR_Pointer_Fctn_24 
AR_Pointer_Fctn_32 
AR_Pointer_Fctn_64 
AR_Pointer_Word_24 
AR_Pointer_Word_32 
AR_Pointer_Word_64 
AR_Float_32 
AR_Float_64 
AR_Float_128 
AR_Complex_32 
AR_Complex_64 
AR_Complex_128 
AR_Float_Cray1_64 
AR_Float_Cray1_64_F 
AR_Float_Cray1_128 
AR_Float_IEEE_NR_32 
AR_Float_IEEE_NR_64 
AR_Float_IEEE_NR_128 
AR_Float_IEEE_ZE_32 
AR_Float_IEEE_ZE_64 
AR_Float_IEEE_ZE_128 
AR_Float_IEEE_UP_32 
AR_Float_IEEE_UP_64 
AR_Float_IEEE_UP_128 
AR_Float_IEEE_DN_32 
AR_Float_IEEE_DN_64 
AR_Float_IEEE_DN_128 
AR_Complex_Cray1_64 
AR_Complex_Cray1_64_F 
AR_Complex_Cray1_128 
AR_Complex_IEEE_NR_32 
AR_Complex_IEEE_NR_64 
AR_Complex_IEEE_NR_128 
AR_Complex_IEEE_ZE_32 
AR_Complex_IEEE_ZE_64 
AR_Complex_IEEE_ZE_128 
AR_Complex_IEEE_UP_32 
AR_Complex_IEEE_UP_64 
AR_Complex_IEEE_UP_128 
AR_Complex_IEEE_DN_32 
AR_Complex_IEEE_DN_64 
AR_Complex_IEEE_DN_128 
AR_Error 

Definition at line 228 of file arith.h.


Function Documentation

int AR_abs ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)
int AR_add ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)

Definition at line 475 of file math.c.

References ar_add_integer(), ar_add_pointer(), ar_cfadd128(), ar_cfadd64(), AR_CLASS, AR_CLASS_FLOAT, AR_CLASS_INT, AR_CLASS_POINTER, AR_Complex_Cray1_128, AR_Complex_Cray1_64, AR_Complex_Cray1_64_F, AR_Complex_IEEE_DN_128, AR_Complex_IEEE_DN_32, AR_Complex_IEEE_DN_64, AR_Complex_IEEE_NR_128, AR_Complex_IEEE_NR_32, AR_Complex_IEEE_NR_64, AR_Complex_IEEE_UP_128, AR_Complex_IEEE_UP_32, AR_Complex_IEEE_UP_64, AR_Complex_IEEE_ZE_128, AR_Complex_IEEE_ZE_32, AR_Complex_IEEE_ZE_64, ar_data::ar_cplx_f128, ar_data::ar_cplx_f64, ar_data::ar_cplx_ieee128, ar_data::ar_cplx_ieee32, ar_data::ar_cplx_ieee64, ar_CRAY_64_trunc(), ar_data::ar_f128, ar_data::ar_f64, AR_Float_Cray1_128, AR_Float_Cray1_64, AR_Float_Cray1_64_F, AR_Float_IEEE_DN_128, AR_Float_IEEE_DN_32, AR_Float_IEEE_DN_64, AR_Float_IEEE_NR_128, AR_Float_IEEE_NR_32, AR_Float_IEEE_NR_64, AR_Float_IEEE_UP_128, AR_Float_IEEE_UP_32, AR_Float_IEEE_UP_64, AR_Float_IEEE_ZE_128, AR_Float_IEEE_ZE_32, AR_Float_IEEE_ZE_64, ar_data::ar_ieee128, ar_data::ar_ieee32, ar_data::ar_ieee64, ar_ifadd128(), ar_ifadd32(), ar_ifadd64(), AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_SIGNEDNESS, AR_STAT_INVALID_TYPE, AR_STAT_NEGATIVE, AR_STAT_OK, AR_STAT_OVERFLOW, AR_STAT_ZERO, ar_state_register, ar_state_info::ar_truncate_bits, AR_UNSIGNED, CPLX32_IMAG_TO_IEEE32, CPLX32_REAL_TO_IEEE32, IEEE32_TO_CPLX32_IMAG, IEEE32_TO_CPLX32_REAL, AR_CPLX_IEEE_128::imag, AR_CPLX_IEEE_64::imag, AR_CPLX_CRAY_128::imag, AR_CPLX_CRAY_64::imag, AR_CPLX_IEEE_128::real, AR_CPLX_IEEE_64::real, AR_CPLX_CRAY_128::real, AR_CPLX_CRAY_64::real, and ROUND_MODE.

Referenced by ar_cabs(), ar_divide_complex(), ar_multiply_complex(), folder_driver(), main(), and test_add().

Here is the call graph for this function:

int AR_add_ptr_int ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type,
const AR_DATA opnd3,
const AR_TYPE opnd3type 
)
int AR_bitand ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)

Referenced by AR_ishftc(), and test_bitand().

int AR_bitcomplement ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)

Referenced by test_bitcomplement().

int AR_bitor ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)

Referenced by AR_ishftc(), and test_bitor().

int AR_bitxor ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)

Referenced by test_bitxor().

int AR_cabs ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)

Definition at line 321 of file intrin.c.

References ar_cabs(), AR_CLASS, AR_CLASS_FLOAT, AR_FLOAT_COMPLEX, AR_FLOAT_IS_COMPLEX, ar_set_invalid_result(), AR_STAT_INVALID_TYPE, AR_STAT_OVERFLOW, AR_STAT_UNDEFINED, AR_status(), and IS_ERROR_STATUS.

Referenced by AR_INTRIN1(), and main().

Here is the call graph for this function:

int AR_cimag ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)

Definition at line 277 of file miscmath.c.

References ar_decompose_complex(), and AR_STAT_INVALID_TYPE.

Here is the call graph for this function:

AR_COMPARE_TYPE AR_compare ( const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)
int AR_conj ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)

Definition at line 765 of file miscmath.c.

References ar_compose_complex(), ar_decompose_complex(), ar_negate_float(), AR_STAT_NEGATIVE, AR_STAT_ZERO, AR_status(), and result.

Here is the call graph for this function:

int AR_convert ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)
int AR_convert_float_to_str ( char *  resultstr,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)
int AR_convert_hex_str_to_float ( AR_DATA result,
const AR_TYPE resulttype,
const char *  ar_str 
)
int AR_convert_host_sint64_to_int ( AR_DATA result,
const AR_TYPE resulttype,
AR_HOST_SINT64  i64val 
)

Definition at line 818 of file strcvt.c.

References AR_CLASS, AR_CLASS_INT, AR_convert(), AR_Int_64_S, AR_DATA::ar_internal_data_item1, and AR_STAT_INVALID_TYPE.

Referenced by cval_to_f_int().

Here is the call graph for this function:

int AR_convert_int_to_host_sint64 ( AR_HOST_SINT64 i64val,
const AR_DATA opnd,
const AR_TYPE opndtype 
)

Definition at line 834 of file strcvt.c.

References AR_CLASS, AR_CLASS_INT, AR_convert(), AR_Int_64_S, AR_DATA::ar_internal_data_item1, and AR_STAT_INVALID_TYPE.

Referenced by f_int_to_cval().

Here is the call graph for this function:

int AR_convert_int_to_str ( char *  resultstr,
const int *  base,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)
int AR_convert_str_to_float ( AR_DATA result,
const AR_TYPE resulttype,
const char *  str 
)
int AR_convert_str_to_int ( AR_DATA result,
const AR_TYPE resulttype,
int *  bits_used,
const char *  str,
const int *  base 
)
int AR_CRAY_64_trunc_bits ( int  truncbits  ) 
int AR_creal ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)

Definition at line 261 of file miscmath.c.

References ar_decompose_complex(), and AR_STAT_INVALID_TYPE.

Here is the call graph for this function:

int AR_divide ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)
int AR_dshiftl ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type,
const AR_DATA opnd3,
const AR_TYPE opnd3type 
)
int AR_dshiftr ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type,
const AR_DATA opnd3,
const AR_TYPE opnd3type 
)
int AR_exp ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)

Definition at line 299 of file intrin.c.

References AR_CLASS, AR_CLASS_FLOAT, ar_exp(), ar_set_invalid_result(), AR_STAT_INVALID_TYPE, AR_status(), and IS_ERROR_STATUS.

Referenced by AR_INTRIN1(), and main().

Here is the call graph for this function:

int AR_ibits ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type,
const AR_DATA opnd3,
const AR_TYPE opnd3type 
)
int AR_index ( AR_DATA result,
const AR_TYPE resulttype,
const char *  str1,
const AR_DATA str1len,
const AR_TYPE str1lentype,
const char *  str2,
const AR_DATA str2len,
const AR_TYPE str2lentype,
const AR_DATA backward,
const AR_TYPE backwardtype 
)
int AR_ishft ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)
int AR_ishftc ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type,
const AR_DATA opnd3,
const AR_TYPE opnd3type 
)
int AR_leadz ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)
int AR_log ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)

Definition at line 277 of file intrin.c.

References AR_CLASS, AR_CLASS_FLOAT, ar_log(), ar_set_invalid_result(), AR_STAT_INVALID_TYPE, AR_status(), and IS_ERROR_STATUS.

Referenced by AR_INTRIN1(), and main().

Here is the call graph for this function:

int AR_make_complex ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)
int AR_make_imag ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)

Definition at line 788 of file miscmath.c.

References AR_make_complex().

Here is the call graph for this function:

int AR_mask ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)
int AR_mod ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)
int AR_modulo ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)

Definition at line 2198 of file math.c.

References AR_mod().

Here is the call graph for this function:

int AR_Modulo ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)

Definition at line 206 of file intrin.c.

References ar_modulo(), ar_set_invalid_result(), AR_STAT_INVALID_TYPE, AR_status(), and IS_ERROR_STATUS.

Referenced by folder_driver(), and main().

Here is the call graph for this function:

int AR_multiply ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)
int AR_negate ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)

Definition at line 993 of file math.c.

References AR_CLASS, AR_CLASS_FLOAT, AR_CLASS_INT, AR_FLOAT_COMPLEX, AR_FLOAT_IS_COMPLEX, ar_negate_complex(), ar_negate_float(), ar_negate_integer(), and AR_STAT_INVALID_TYPE.

Referenced by ar_power(), and folder_driver().

Here is the call graph for this function:

int AR_one ( AR_DATA result,
const AR_TYPE type 
)

Definition at line 513 of file miscmath.c.

References AR_Complex_Cray1_128, AR_Complex_Cray1_64, AR_Complex_Cray1_64_F, AR_Complex_IEEE_DN_128, AR_Complex_IEEE_DN_32, AR_Complex_IEEE_DN_64, AR_Complex_IEEE_NR_128, AR_Complex_IEEE_NR_32, AR_Complex_IEEE_NR_64, AR_Complex_IEEE_UP_128, AR_Complex_IEEE_UP_32, AR_Complex_IEEE_UP_64, AR_Complex_IEEE_ZE_128, AR_Complex_IEEE_ZE_32, AR_Complex_IEEE_ZE_64, ar_data::ar_cplx_f128, ar_data::ar_cplx_f64, ar_data::ar_cplx_ieee128, ar_data::ar_cplx_ieee32, ar_data::ar_cplx_ieee64, ar_data::ar_cplx_mips128, AR_CRAY_C0_BITS, AR_CRAY_EXPO_BIAS, ar_data::ar_f128, ar_data::ar_f64, AR_Float_Cray1_128, AR_Float_Cray1_64, AR_Float_Cray1_64_F, AR_Float_IEEE_DN_128, AR_Float_IEEE_DN_32, AR_Float_IEEE_DN_64, AR_Float_IEEE_NR_128, AR_Float_IEEE_NR_32, AR_Float_IEEE_NR_64, AR_Float_IEEE_UP_128, AR_Float_IEEE_UP_32, AR_Float_IEEE_UP_64, AR_Float_IEEE_ZE_128, AR_Float_IEEE_ZE_32, AR_Float_IEEE_ZE_64, ar_data::ar_i64, ar_data::ar_ieee128, AR_IEEE128_EXPO_BIAS, ar_data::ar_ieee32, AR_IEEE32_EXPO_BIAS, ar_data::ar_ieee64, AR_IEEE64_EXPO_BIAS, AR_Int_16_S, AR_Int_16_U, AR_Int_32_S, AR_Int_32_U, AR_Int_46_S, AR_Int_64_S, AR_Int_64_U, ar_data::ar_mips128, AR_MIPS128_EXPO_BIAS, AR_STAT_INVALID_TYPE, AR_STAT_OK, AR_CRAY_128::coeff0, AR_CRAY_64::coeff0, AR_IEEE_128::expo, AR_MIPS_128::expo, AR_IEEE_64::expo, AR_IEEE_32::expo, AR_CRAY_128::expo, AR_CRAY_64::expo, HOST_IS_MIPS, AR_CPLX_IEEE_32::icoeff0, AR_CPLX_IEEE_32::icoeff1, AR_CPLX_IEEE_32::iexpo, AR_CPLX_IEEE_128::imag, AR_CPLX_IEEE_64::imag, AR_CPLX_CRAY_128::imag, AR_CPLX_CRAY_64::imag, AR_CPLX_IEEE_32::isign, AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_CPLX_IEEE_32::rcoeff0, AR_CPLX_IEEE_32::rcoeff1, AR_CPLX_MIPS_128::real, AR_CPLX_IEEE_128::real, AR_CPLX_IEEE_64::real, AR_CPLX_CRAY_128::real, AR_CPLX_CRAY_64::real, result, AR_CPLX_IEEE_32::rexpo, AR_CPLX_IEEE_32::rsign, ZEROCRAY128, ZEROCRAY64, ZEROIEEE128, ZEROIEEE32, and ZEROIEEE64.

Referenced by ar_power().

int AR_popcnt ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)
int AR_poppar ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type 
)
int AR_power ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)

Definition at line 343 of file intrin.c.

References AR_CLASS, AR_CLASS_INT, ar_power(), ar_set_invalid_result(), AR_STAT_INVALID_TYPE, and IS_ERROR_STATUS.

Referenced by AR_INTRIN2(), folder_driver(), and main().

Here is the call graph for this function:

int AR_reshape ( void *  result,
const void *  source,
const void *  shape,
const void *  pad,
const void *  order 
)

Definition at line 167 of file intrin.c.

References ar_reshape(), AR_STAT_UNDEFINED, and NULL.

Referenced by folder_driver().

Here is the call graph for this function:

int AR_round_int_div ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd,
const AR_TYPE opndtype 
)

Definition at line 698 of file cvt.c.

References ar_crnd128(), ar_crnd64(), ar_data::ar_f128, ar_data::ar_f64, AR_Float_Cray1_128, AR_Float_Cray1_64, AR_Float_Cray1_64_F, and AR_STAT_INVALID_TYPE.

Referenced by folder_driver().

Here is the call graph for this function:

int AR_scan ( AR_DATA result,
const AR_TYPE resulttype,
const char *  str1,
const AR_DATA str1len,
const AR_TYPE str1lentype,
const char *  str2,
const AR_DATA str2len,
const AR_TYPE str2lentype,
const AR_DATA backward,
const AR_TYPE backwardtype 
)
int AR_selected_real_kind ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)

Definition at line 229 of file intrin.c.

References AR_CLASS, AR_CLASS_INT, AR_Int_16_S, AR_Int_32_S, AR_Int_64_S, AR_Int_8_S, AR_INT_SIZE, ar_selected_real_kind(), ar_set_invalid_result(), AR_STAT_INVALID_TYPE, and IS_ERROR_STATUS.

Referenced by folder_driver(), main(), and misc_tests().

Here is the call graph for this function:

int AR_shiftl ( AR_DATA result,
const AR_TYPE resulttype,
const AR_DATA opnd1,
const AR_TYPE opnd1type,
const AR_DATA opnd2,
const AR_TYPE opnd2type 
)