This patch fixes the following problem:
Functions resulting from "function specilization" may contain references to
function-static variables in the original function.
Since this variables are class-static in CIL, they are renamed -at some
point- by adding a suffix (to ensure that they are unique).
This renaming happens while processing the function in which they are declared.
In the case of specialized functions, references to these variables MAY BE found
before they are renamed.
This patch detects these situations (in emit-cil.c:dump_decl_name) and prints the
corresponding suffix after the variable name.
A better patch should move the renaming process to some IPA pass.
Affected benchmarks: 186.crafty |