void OperationsToWires(struct wires *wire, struct operation *topOp) { // Given operation lvalue -> rvalue struct operation *tmpOp, *curOp; int32_t val; while (topOp->next) { // While there are operations on the list for (curOp = topOp->next; curOp; curOp = curOp->next) { // And if that operation has a confirmed lvalue if ((val = ComputeVal(wire,curOp)) < 0) { continue; } else { // write lvalue to rvalue and remove operation // from the list. SaveToWire(wire, curOp->dest, val); tmpOp = curOp->prev; RemoveOp(curOp); curOp = tmpOp; } } } }
void cElCompiledFonc::ComputeValAndSetIVC() { ELISE_ASSERT(isCoordSet,"No CoordSet Mapping"); ComputeVal(); isValComputed = true; }