Lines Matching refs:abs

50     value->abs = e;
68 value->abs = NULL;
85 value->abs = orig->abs ? yasm_expr_copy(orig->abs) : NULL;
102 if (value->abs)
103 yasm_expr_destroy(value->abs);
104 value->abs = NULL;
462 if (!value->abs)
465 value->abs = yasm_expr__level_tree(value->abs, 1, 1, 0, 0, NULL, NULL);
474 if (value->abs->op == YASM_EXPR_AND) {
486 for (term=value->abs->numterms-1; term>=0; term--) {
487 if (value->abs->terms[term].type == YASM_EXPR_INT &&
488 yasm_intnum_compare(value->abs->terms[term].data.intn,
491 yasm_intnum_destroy(value->abs->terms[term].data.intn);
494 if (term != value->abs->numterms-1) /* if it wasn't last.. */
495 memmove(&value->abs->terms[term],
496 &value->abs->terms[term+1],
497 (value->abs->numterms-1-term)*
501 value->abs->numterms--;
507 if (value->abs->numterms == 1)
508 value->abs->op = YASM_EXPR_IDENT;
513 if (value->abs->op == YASM_EXPR_IDENT) {
514 switch (value->abs->terms[0].type) {
516 if (yasm_intnum_is_zero(value->abs->terms[0].data.intn)) {
517 yasm_expr_destroy(value->abs);
518 value->abs = NULL;
525 value->rel = value->abs->terms[0].data.sym;
526 yasm_expr_destroy(value->abs);
527 value->abs = NULL;
531 while (value->abs->op == YASM_EXPR_IDENT
532 && value->abs->terms[0].type == YASM_EXPR_EXPR) {
533 yasm_expr *sube = value->abs->terms[0].data.expn;
534 yasm_xfree(value->abs);
535 value->abs = sube;
543 if (value_finalize_scan(value, value->abs, precbc, 0))
546 value->abs = yasm_expr__level_tree(value->abs, 1, 1, 0, 0, NULL, NULL);
548 /* Simplify 0 in abs to NULL */
549 if (value->abs->op == YASM_EXPR_IDENT
550 && value->abs->terms[0].type == YASM_EXPR_INT
551 && yasm_intnum_is_zero(value->abs->terms[0].data.intn)) {
552 yasm_expr_destroy(value->abs);
553 value->abs = NULL;
565 if (value->abs) {
569 intn = yasm_expr_get_intnum(&value->abs, calc_bc_dist);
635 if (value->abs) {
637 if (!value->rel && value->abs->op == YASM_EXPR_IDENT
638 && value->abs->terms[0].type == YASM_EXPR_FLOAT) {
639 if (yasm_arch_floatnum_tobytes(arch, value->abs->terms[0].data.flt,
647 if (yasm_expr__contains(value->abs, YASM_EXPR_FLOAT)) {
654 intn = yasm_expr_get_intnum(&value->abs, 1);
661 yasm_expr *seg = yasm_expr_extract_deep_segoff(&value->abs);
664 intn = yasm_expr_get_intnum(&value->abs, 1);
747 yasm_expr_print(value->abs, f);