Open64 (mfef90, whirl2f, and IR tools)
TAG: version-openad; SVN changeset: 916
|
#include "arith.internal.h"
Go to the source code of this file.
Defines | |
#define | bitoper(name, opr) |
Functions | |
bitoper (AR_bitor,|) | |
void | ar_dblshift (ar_data *result, const AR_TYPE *resulttype, const ar_data *opnd1, const ar_data *opnd2, int shiftcount) |
int | AR_dshiftl (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *op1, const AR_TYPE *opnd1type, const AR_DATA *op2, const AR_TYPE *opnd2type, const AR_DATA *cnt, const AR_TYPE *counttype) |
int | AR_dshiftr (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *op1, const AR_TYPE *opnd1type, const AR_DATA *op2, const AR_TYPE *opnd2type, const AR_DATA *cnt, const AR_TYPE *counttype) |
int | AR_shiftl (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *opd, const AR_TYPE *opndtype, const AR_DATA *cnt, const AR_TYPE *counttype) |
int | AR_shiftr (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *opd, const AR_TYPE *opndtype, const AR_DATA *cnt, const AR_TYPE *counttype) |
int | AR_ishft (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *opd, const AR_TYPE *opndtype, const AR_DATA *shft, const AR_TYPE *shifttype) |
int | AR_ishftc (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *opd, const AR_TYPE *opndtype, const AR_DATA *shft, const AR_TYPE *shifttype, const AR_DATA *sz, const AR_TYPE *sizetype) |
int | AR_ibits (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *opd, const AR_TYPE *opndtype, const AR_DATA *shft, const AR_TYPE *shifttype, const AR_DATA *sz, const AR_TYPE *sizetype) |
int | AR_mask (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *cnt, const AR_TYPE *counttype) |
int | AR_leadz (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *opd, const AR_TYPE *opndtype) |
int | AR_popcnt (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *opd, const AR_TYPE *opndtype) |
int | AR_poppar (AR_DATA *res, const AR_TYPE *resulttype, const AR_DATA *opd, const AR_TYPE *opndtype) |
Variables | |
static char | USMID [] = "\n%Z%%M% %I% %G% %U%\n" |
static char | rcsid [] = "$Id: bits.c,v 1.1.1.1 2002-05-22 20:06:18 dsystem Exp $" |
void ar_dblshift | ( | ar_data * | result, |
const AR_TYPE * | resulttype, | ||
const ar_data * | opnd1, | ||
const ar_data * | opnd2, | ||
int | shiftcount | ||
) |
Definition at line 145 of file bits.c.
References ar_data::ar_i64, ar_data::ar_i8, AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, ar_internal_error(), AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_INT_8_64::part5, ZERO_INT16_UPPER, ZERO_INT32_UPPER, and ZERO_INT8_UPPER.
Referenced by ar_add_pointer(), AR_add_ptr_int(), AR_compare(), ar_convert_to_pointer(), AR_dshiftl(), AR_dshiftr(), AR_ibits(), AR_ishft(), AR_ishftc(), AR_mask(), AR_shiftl(), AR_shiftr(), ar_subtract_pointer(), and AR_subtract_ptr_ptr().
int AR_dshiftl | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | op1, | ||
const AR_TYPE * | opnd1type, | ||
const AR_DATA * | op2, | ||
const AR_TYPE * | opnd2type, | ||
const AR_DATA * | cnt, | ||
const AR_TYPE * | counttype | ||
) |
Definition at line 274 of file bits.c.
References AR_CLASS, AR_CLASS_INT, ar_dblshift(), ar_data::ar_i64, ar_data::ar_i8, AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_STAT_UNDEFINED, AR_status(), AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_INT_8_64::part5, result, ZERO_INT16, ZERO_INT32, ZERO_INT64, and ZERO_INT8.
Referenced by folder_driver().
int AR_dshiftr | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | op1, | ||
const AR_TYPE * | opnd1type, | ||
const AR_DATA * | op2, | ||
const AR_TYPE * | opnd2type, | ||
const AR_DATA * | cnt, | ||
const AR_TYPE * | counttype | ||
) |
Definition at line 349 of file bits.c.
References AR_CLASS, AR_CLASS_INT, ar_dblshift(), ar_data::ar_i64, ar_data::ar_i8, AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_STAT_UNDEFINED, AR_status(), AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_INT_8_64::part5, result, ZERO_INT16, ZERO_INT32, ZERO_INT64, and ZERO_INT8.
Referenced by folder_driver().
int AR_ibits | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | opd, | ||
const AR_TYPE * | opndtype, | ||
const AR_DATA * | shft, | ||
const AR_TYPE * | shifttype, | ||
const AR_DATA * | sz, | ||
const AR_TYPE * | sizetype | ||
) |
Definition at line 889 of file bits.c.
References AR_CLASS, AR_CLASS_INT, ar_dblshift(), AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_24, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_STAT_UNDEFINED, AR_status(), INT16_TO_HOST_SINT64, INT32_TO_HOST_SINT64, INT64_TO_HOST_SINT64, INT8_TO_HOST_SINT64, result, and size.
Referenced by folder_driver(), and test_ibits_signed().
int AR_ishft | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | opd, | ||
const AR_TYPE * | opndtype, | ||
const AR_DATA * | shft, | ||
const AR_TYPE * | shifttype | ||
) |
Definition at line 613 of file bits.c.
References AR_CLASS, AR_CLASS_INT, ar_dblshift(), AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_24, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_STAT_UNDEFINED, AR_status(), INT16_TO_HOST_SINT64, INT32_TO_HOST_SINT64, INT64_TO_HOST_SINT64, INT8_TO_HOST_SINT64, result, and ZERO_INT64.
Referenced by test_ishft_signed().
int AR_ishftc | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | opd, | ||
const AR_TYPE * | opndtype, | ||
const AR_DATA * | shft, | ||
const AR_TYPE * | shifttype, | ||
const AR_DATA * | sz, | ||
const AR_TYPE * | sizetype | ||
) |
Definition at line 745 of file bits.c.
References AR_bitand(), AR_bitor(), AR_CLASS, AR_CLASS_INT, ar_dblshift(), AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_24, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_STAT_UNDEFINED, AR_status(), INT16_TO_HOST_SINT64, INT32_TO_HOST_SINT64, INT64_TO_HOST_SINT64, INT8_TO_HOST_SINT64, result, and size.
Referenced by folder_driver(), and test_ishftc_signed().
int AR_leadz | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | opd, | ||
const AR_TYPE * | opndtype | ||
) |
Definition at line 1044 of file bits.c.
References AR_CLASS, AR_CLASS_FLOAT, AR_CLASS_INT, AR_FLOAT_32, AR_FLOAT_64, AR_FLOAT_IS_COMPLEX, AR_FLOAT_SIMPLE, AR_FLOAT_SIZE, ar_data::ar_i64, ar_data::ar_i8, AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_status(), AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_INT_8_64::part5, result, and ZERO_INT16_UPPER.
Referenced by AR_convert_str_to_int(), ar_divide_integer(), and test_leadz().
int AR_mask | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | cnt, | ||
const AR_TYPE * | counttype | ||
) |
Definition at line 967 of file bits.c.
References AR_CLASS, AR_CLASS_INT, ar_dblshift(), ar_data::ar_i64, ar_data::ar_i8, AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_STAT_UNDEFINED, AR_status(), AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_INT_8_64::part5, result, ZERO_INT16, ZERO_INT32, ZERO_INT64, and ZERO_INT8.
Referenced by folder_driver().
int AR_popcnt | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | opd, | ||
const AR_TYPE * | opndtype | ||
) |
Definition at line 1131 of file bits.c.
References AR_CLASS, AR_CLASS_FLOAT, AR_CLASS_INT, AR_FLOAT_32, AR_FLOAT_64, AR_FLOAT_IS_COMPLEX, AR_FLOAT_SIMPLE, AR_FLOAT_SIZE, ar_data::ar_i64, ar_data::ar_i8, AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_status(), AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_INT_8_64::part5, and result.
Referenced by test_popcnt().
int AR_poppar | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | opd, | ||
const AR_TYPE * | opndtype | ||
) |
Definition at line 1210 of file bits.c.
References AR_CLASS, AR_CLASS_FLOAT, AR_CLASS_INT, AR_FLOAT_32, AR_FLOAT_64, AR_FLOAT_IS_COMPLEX, AR_FLOAT_SIMPLE, AR_FLOAT_SIZE, ar_data::ar_i64, ar_data::ar_i8, AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_status(), AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_INT_8_64::part5, result, and ZERO_INT16_UPPER.
Referenced by test_poppar().
int AR_shiftl | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | opd, | ||
const AR_TYPE * | opndtype, | ||
const AR_DATA * | cnt, | ||
const AR_TYPE * | counttype | ||
) |
Definition at line 424 of file bits.c.
References AR_CLASS, AR_CLASS_INT, ar_dblshift(), ar_data::ar_i64, ar_data::ar_i8, AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_STAT_UNDEFINED, AR_status(), AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_INT_8_64::part5, result, ZERO_INT16, ZERO_INT32, ZERO_INT64, and ZERO_INT8.
Referenced by ar_divide_integer(), folder_driver(), and test_shiftl().
int AR_shiftr | ( | AR_DATA * | res, |
const AR_TYPE * | resulttype, | ||
const AR_DATA * | opd, | ||
const AR_TYPE * | opndtype, | ||
const AR_DATA * | cnt, | ||
const AR_TYPE * | counttype | ||
) |
Definition at line 506 of file bits.c.
References AR_CLASS, AR_CLASS_INT, ar_dblshift(), ar_data::ar_i64, ar_data::ar_i8, 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_UNDEFINED, AR_status(), AR_UNSIGNED, AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_INT_8_64::part5, result, ZERO_INT16, ZERO_INT32, ZERO_INT64, and ZERO_INT8.
Referenced by ar_divide_integer(), folder_driver(), and test_shiftr().
Definition at line 94 of file bits.c.
References AR_CLASS, AR_CLASS_INT, ar_data::ar_i64, ar_data::ar_i8, AR_INT_SIZE, AR_INT_SIZE_16, AR_INT_SIZE_32, AR_INT_SIZE_46, AR_INT_SIZE_64, AR_INT_SIZE_8, AR_STAT_INVALID_TYPE, AR_status(), AR_INT_64::part1, AR_INT_64::part2, AR_INT_64::part3, AR_INT_64::part4, AR_INT_8_64::part5, and result.