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

Commit id: 9f5b1c979b9182207325c6129ae87c8704975fea

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}: $StateMapper$:  module that [...] \item {\em insertResolvedOSR(f1, $insertResolvedOSR(f1,  b1, f2, b2, cond, m)}: m)$:  function that inserts a resolved OSR point in function $f1$ at basic block $b1$ to function $b2$ at basic block $b2$, using as OSR condition a sequence of IR instructions $cond$, and a state mapper $m$. \item {\em insertOpenOSR()}: $insertOpenOSR()$:  [...] \item {\em generateOSRDestFun()} $generateOSRDestFun()$:  [...] \end{itemize}    %To place an open OSR, \tinyvm\ requires the following pieces of information: 1) a pointer to the