this is for holding javascript data
Daniele Cono D'Elia edited case-study.tex
over 8 years ago
Commit id: 144c6e21a50991899262916b575e0a93b5f682c5
deletions | additions
diff --git a/case-study.tex b/case-study.tex
index 17a48a5..7cf6388 100644
--- a/case-study.tex
+++ b/case-study.tex
...
\subsection{Extending McVM}
The McVM virtual machine is a complex research project developed at McGill and composed of several software components, including: a front-end for lowering MATLAB programs to an intermediate representation called IIR that captures all of the high-level features of the language; an interpreter for running MATLAB functions and scripts in IIR format; a manager component to perform analyses on IIR; a JIT compiler based on LLVM for generating native code for a function, thus lowering McVM IIR to LLVM IR; a set of helper components to perform fast vector and matrix operations using optimized libraries such as ATLAS, BLAS and LAPACK. The architecture of McVM is illustrated in Figure [...]
McVM implements a JIT specialization mechanism for functions based on call signatures: for each IIR representation of a function, multiple IR versions are generated according to the types of the arguments for the call