doFiniteDifferencingOne
Do finite differencing on one expression within one context. The expression must be defined and valid within the entire body of root. The rewrite rules are used to simplify expressions. When a variable var is updated from old_value to new_value, an expression of the form (var, (old_value, new_value)) is created and rewritten. The rewrite rules may either produce an arbitrary expression (which will be used as‐is) or one of the form (var, (something, value)) (which will be changed to (var = value)).
Synopsis
Declared in <src/midend/programTransformation/finiteDifferencing/finiteDifferencing.h>
void
doFiniteDifferencingOne(
SgExpression* e,
SgBasicBlock* root,
RewriteRule* rules);
Parameters
Name |
Description |
e |
This class represents the notion of an expression. Expressions |
root |
This class represents the concept of a block (not a basic block from control flow analysis). |
rules |
Definition of a rewrite rule on a given SgNode. The rule modifies the node and/or its children in‐place, and then returns true for success or false for failure. |
Created with MrDocs