Google engineers have been developing JSIR as a high-level intermediate representation (JSIR) for JavaScript that they are already using in production at the company code code analysis and transforming other code/bytecode to JavaScript as well as for deobfuscating JavaScript code.
Zhixun Tan of Google’s compiler team issued a request for comments (RFC) today on JSIR that builds off in part of the work of the LLVM and MLIR communities. Most JavaScript tooling to date relies on AST-based approaches rather than IR, which is where they are working on JSIR to fill that void.
JSIR is intended to be a public and stable IR and capture all source-level information. Google engineers are currently soliciting LLVM/MLIR developers in whether interest would be there in upstreaming JSIR into MLIR.
Those curious can see today’s RFC on JSIR for the technical overview. JSIR is already open-source and available on GitHub.
