bit_info
struct bit_info *info;
struct bit_info *rl_to_binfo(struct range_list *rl);
struct bit_info *get_bit_info(struct expression *expr);
struct bit_info *get_bit_info_var_sym(const char *name, struct symbol *sym);
static int binfo_equiv(struct bit_info *one, struct bit_info *two)
struct bit_info *one, *two;
static struct bit_info *combine_bit_info(struct bit_info *one, struct bit_info *two)
struct bit_info *ret = __alloc_bit_info(0);
static struct bit_info *binfo_AND(struct bit_info *left, struct bit_info *right)
static struct bit_info *binfo_OR(struct bit_info *left, struct bit_info *right)
struct bit_info *get_bit_info(struct expression *expr)
struct bit_info tmp;
struct bit_info *extra_info;
struct bit_info *bit_info;
bit_info = bstate->data;
bit_info = (struct bit_info *)&unknown_bit_info;
return combine_bit_info(extra_info, bit_info);
static const struct bit_info unknown_bit_info = {
struct bit_info *start, *binfo;
ALLOCATOR(bit_info, "bit data");
static struct bit_info *alloc_bit_info(unsigned long long set, unsigned long long possible)
struct bit_info *orig;
struct bit_info true_info;
struct bit_info false_info;
struct bit_info *bit_info = __alloc_bit_info(0);
bit_info->set = set;
struct bit_info *binfo, *rl_binfo;
bit_info->possible = possible;
struct bit_info *binfo = sm->state->data;
return bit_info;
struct bit_info *implied_binfo;
struct bit_info *rl_to_binfo(struct range_list *rl)
struct bit_info *ret = __alloc_bit_info(0);
static int is_unknown_binfo(struct symbol *type, struct bit_info *binfo)
struct bit_info *p;
struct bit_info *bit_info;
bit_info = get_bit_info(mask);
if (!bit_info)
if (!bit_info->possible)
low.value = ffsll(bit_info->possible);
high.value = sm_fls64(bit_info->possible);
struct bit_info *one, *two;