Home | History | Annotate | Download | only in libyasm

Lines Matching refs:numterms

72     ptr->numterms = 0;
81 ptr->numterms++;
104 ptr->numterms++;
212 int numterms;
220 for (i=0; i<e->numterms; i++) {
232 if (sube->op != YASM_EXPR_MUL || sube->numterms != 2)
262 for (j=0; j<e->numterms; j++) {
279 numterms = 0;
280 for (i=0; i<e->numterms; i++) {
282 e->terms[numterms++] = e->terms[i]; /* structure copy */
284 if (e->numterms != numterms) {
285 e->numterms = numterms;
286 e = yasm_xrealloc(e, sizeof(yasm_expr)+((numterms<2) ? 0 :
287 sizeof(yasm_expr__item)*(numterms-2)));
288 if (numterms == 1)
370 sube->numterms = 2;
395 for (i=0; i<e->numterms; i++) {
429 e->numterms = 2;
441 ne->numterms = 2;
530 * Sets e->op = EXPR_IDENT if numterms ends up being 1.
531 * Uses numterms parameter instead of e->numterms for basis of "new" number
537 expr_simplify_identity(yasm_expr *e, int numterms, int *int_term,
543 /* Don't do this step if it's 1*REG. Save and restore numterms so
546 save_numterms = e->numterms;
547 e->numterms = numterms;
554 if ((*int_term == 0 && numterms > 1 &&
563 if (*int_term != numterms-1) /* if it wasn't last.. */
565 (numterms-1-*int_term)*sizeof(yasm_expr__item));
567 /* Update numterms */
568 numterms--;
572 e->numterms = save_numterms;
577 if (numterms > 1 && *int_term != -1 &&
580 for (i=0; i<e->numterms; i++)
588 /* Set numterms to 1 */
589 numterms = 1;
593 if (numterms == 1 && *int_term == 0 &&
599 if (numterms == 1)
602 /* Return the updated numterms */
603 return numterms;
638 level_numterms = e->numterms;
640 for (i=0; i<e->numterms; i++) {
653 /* It's an expression w/the same operator, add in its numterms.
656 level_numterms += e->terms[i].data.expn->numterms - 1;
662 for (j=0; j<e->terms[i].data.expn->numterms; j++)
677 * Also eliminate empty spaces when combining and adjust numterms
680 fold_numterms = e->numterms;
682 for (i=first_int_term+1, o=first_int_term+1; i<e->numterms; i++) {
719 if (fold_numterms < e->numterms && e->numterms > 2)
722 /* Update numterms */
723 e->numterms = fold_numterms;
727 /* Adjust numterms for constant folding from terms being "pulled up".
751 for (j=sube->numterms-1; j>=0; j--) {
789 /* Simplify identities, make IDENT if possible, and save to e->numterms. */
791 e->numterms = expr_simplify_identity(e, level_numterms,
794 e->numterms = level_numterms;
816 for (i=0; i<e->numterms; i++) {
860 for (i=0; i<e->numterms; i++) {
875 e->terms[0].data.expn->numterms = 1;
933 if (e->numterms == 1)
950 yasm__mergesort(e->terms, (size_t)e->numterms,
999 sizeof(yasm_expr__item)*(e->numterms<2?0:e->numterms-2));
1003 n->numterms = e->numterms;
1004 for (i=0; i<e->numterms; i++) {
1035 for (i=0; i<e->numterms; i++)
1112 for (i=0; i<e->numterms; i++) {
1136 for (i=0; i<e->numterms; i++) {
1163 for (i=0; i<e->numterms; i++) {
1188 for (i=0; i<e->numterms; i++) {
1217 retval->numterms = 1;
1223 e->numterms = 1;
1246 retval->numterms = 1;
1252 e->numterms = 1;
1413 for (i=0; i<e->numterms; i++) {
1443 if (i < e->numterms-1)
1463 for (i=0; i<e->numterms; i++) {
1502 for (i=0; i<e->numterms; i++) {