Lines Matching defs:expression

223 /* Create a new linear expression with dimension DIM, and total number
242 /* Print out a linear expression EXPR, with SIZE coefficients, to OUTFILE.
273 /* Print out a lambda linear expression structure, EXPR, to OUTFILE. The
283 fprintf (outfile, "\tLinear expression: ");
389 lambda_linear_expression expression;
414 /* Otherwise, we need the lower bound expression (which must
416 expression = LL_LOWER_BOUND (loop);
417 gcc_assert (expression && !LLE_NEXT (expression)
418 && LLE_DENOMINATOR (expression) == 1);
423 base[i][j] = LLE_COEFFICIENTS (expression)[j]
430 expression. */
431 LATTICE_ORIGIN (ret)[i] = LLE_CONSTANT (expression);
434 coefficients in the expression. */
437 LLE_INVARIANT_COEFFICIENTS (expression)[j];
489 lambda_linear_expression expression;
512 /* Any linear expression in the matrix with a coefficient less
514 expression = lambda_linear_expression_new (depth, invariants);
517 LLE_COEFFICIENTS (expression)[k] = A[j][k];
520 LLE_INVARIANT_COEFFICIENTS (expression)[k] = -1 * B[j][k];
522 LLE_DENOMINATOR (expression) = -1 * A[j][i];
523 LLE_CONSTANT (expression) = -1 * a[j];
527 expression, depth, invariants))
529 LLE_NEXT (expression) = LL_LOWER_BOUND (loop);
530 LL_LOWER_BOUND (loop) = expression;
536 /* Any linear expression with a coefficient greater than 0
538 expression = lambda_linear_expression_new (depth, invariants);
540 LLE_COEFFICIENTS (expression)[k] = -1 * A[j][k];
543 LLE_INVARIANT_COEFFICIENTS (expression)[k] = B[j][k];
545 LLE_DENOMINATOR (expression) = A[j][i];
546 LLE_CONSTANT (expression) = a[j];
550 expression, depth, invariants))
552 LLE_NEXT (expression) = LL_UPPER_BOUND (loop);
553 LL_UPPER_BOUND (loop) = expression;
638 lambda_linear_expression expression;
666 expression = LL_LOWER_BOUND (loop);
668 expression = LL_UPPER_BOUND (loop);
670 for (; expression != NULL; expression = LLE_NEXT (expression))
674 A[size][j] = LLE_COEFFICIENTS (expression)[j];
678 B[size][j] = LLE_INVARIANT_COEFFICIENTS (expression)[j];
681 a[size] = LLE_CONSTANT (expression);
685 A[size][i] = -1 * LLE_DENOMINATOR (expression);
698 expression = LL_UPPER_BOUND (loop);
700 expression = LL_LOWER_BOUND (loop);
702 for (; expression != NULL; expression = LLE_NEXT (expression))
706 A[size][j] = LLE_COEFFICIENTS (expression)[j];
710 B[size][j] = LLE_INVARIANT_COEFFICIENTS (expression)[j];
713 a[size] = LLE_CONSTANT (expression);
718 A[size][i] = LLE_DENOMINATOR (expression);
782 lambda_linear_expression expression, auxillary_expr, target_expr, tmp_expr;
820 expression = lambda_linear_expression_new (depth, invariants);
821 lambda_vector_copy (target[i], LLE_COEFFICIENTS (expression), depth);
822 LLE_DENOMINATOR (expression) = determinant / gcd1;
823 LLE_CONSTANT (expression) = 0;
824 lambda_vector_clear (LLE_INVARIANT_COEFFICIENTS (expression),
826 LL_LINEAR_OFFSET (target_loop) = expression;
1034 lambda_linear_expression expression;
1089 expression = LL_LINEAR_OFFSET (loop);
1090 if (lambda_vector_zerop (LLE_COEFFICIENTS (expression), depth))
1093 f = LLE_DENOMINATOR (expression);
1095 LLE_CONSTANT (expression) += f * origin[i];
1098 LLE_INVARIANT_COEFFICIENTS (expression)[j] +=
1106 /* Convert a gcc tree expression EXPR to a lambda linear expression, and
1107 return the new expression. DEPTH is the depth of the loopnest.
1110 is the amount we have to add/subtract from the expression because of the
1356 "Unable to convert loop: Cannot convert lower bound to linear expression\n");
1406 "Unable to convert loop: Cannot convert upper bound to linear expression\n");
1539 /* Create a statement list and a linear expression temporary. */
1597 /* Convert a linear expression from coefficient and constant form to a
1599 Return the tree that represents the final value of the expression.
1600 LLE is the linear expression to convert.
1601 OFFSET is the linear offset to apply to the expression.
1608 statements that need to be inserted for the linear expression. */
1626 /* Create a statement list and a linear expression temporary. */
1951 /* Compute the new expression for the induction
1963 expression. */