Camil Demetrescu edited osr-llvm.tex  over 8 years ago

Commit id: f183d59be04c8f2fb6fc42bc54cbf9376bfcf707

deletions | additions      

       

\label{se:instrum-api}  To support the IR instrumentation tasks of \mysection\ref{se:overview}, \osrkit\ provides a number of abstractions for VM builders. A simplified overview of the main building blocks is:  \begin{itemize}  \item {\em StateMapper}: module a class  that [...] \item {\em insertResolvedOSR(f1, InsertResolvedOSR(f1,  b1, f2, b2, cond, m)}: function that inserts a resolved OSR point in function {\em f1} at basic block {\em b1} to function {\em f2} at basic block {\em b2}, using as OSR condition a sequence of IR instructions {\em cond} and a state mapper {\em m}. \item {\em insertOpenOSR()}: InsertOpenOSR()}:  [...] \item {\em generateOSRContFun(...)}: GenerateOSRContFun(...)}:  generates the continuation function [...] \end{itemize}    %To place an open OSR, \tinyvm\ requires the following pieces of information: 1) a pointer to the