REVIEW 2 major objections 5 minor 3 cited by
WAMI: Compilation to WebAssembly through MLIR without Losing Abstraction
T0 review · 2 major / 5 minor · reviewed 2026-08-06 · deepseek-v4-flash
Pith's one-line read This paper claims that a pipeline using two new MLIR dialects can generate high-level WebAssembly directly from MLIR, bypassing LLVM, and remain within 7.7% of LLVM's performance.
desk verdict Solid MLIR-to-Wasm dialect design and a real stack-switching case study, but the abstract overstates the performance claim and there is no artifact. read the letter →
The pith
A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.
The reading
What carries the argument
The load-bearing mechanism is the pair of new MLIR dialects and the conversion passes that connect them. SsaWasm represents Wasm operations with explicit SSA operands and results so standard MLIR transformations can run on them, while the Wasm dialect captures the stack-based semantics needed for direct text emission. Composite operations like ssawasm.block_loop and ssawasm.block_block model Wasm's structured block and loop nesting, with auxiliary operations such as pseudo_br and on_stack making implicit stack transfers explicit enough for MLIR passes. This design lets high-level dialects lower directly to Wasm without a control-flow restructuring step, and it exposes address arithmetic as ordinary SsaWasm operations so MLIR's common-subexpression elimination and constant folding apply.
What would settle it
Compile the PolyBench suite with WAMI and with LLVM, then run both binaries on a minimal pure interpreter that performs no ahead-of-time or just-in-time optimization; if the average WAMI slowdown exceeds the paper's worst-case 7.7%, the performance-parity claim collapses.
Extended reading notes
Core claim
WAMI's central claim is that WebAssembly should be a first-class target inside the MLIR ecosystem rather than an LLVM backend output. The paper introduces the SsaWasm dialect, which models Wasm instructions in static single-assignment form with explicit operands, results, typed local variables, and continuation references, and a lower Wasm dialect that mirrors the stack-based textual format. Conversion passes lower Arith, MemRef, Func, and SCF dialects directly into SsaWasm, using composite operations such as block_loop and block_block to preserve Wasm's structured control flow, and then translate SsaWasm to Wasm through an introduce-locals pass and a direct operation mapping. To show extensibility, the paper defines a delimited-continuation dialect (DCont) and compiles generator and cooperative-scheduler examples to Wasm using the stack-switching proposal's continuation instructions. The performance section reports that WAMI-generated code is at most 7.7% slower than LLVM-generated code on interpreters, about 4.1% slower on Wasmtime's ahead-of-time mode, and about 1.9% faster on WAMR's ahead-of-time mode, with a 10.0% mean speedup on a classic stack-based interpreter.
Load-bearing premise
The performance-parity claim assumes that WebAssembly runtimes will supply the low-level optimizations WAMI omits; on a runtime with only a simple, non-optimizing interpreter, WAMI-generated code could be substantially slower than LLVM-generated code.
Editorial extensions
If this is right
- MLIR-based compilers can adopt new Wasm proposals by writing conversion passes from high-level dialects instead of waiting for LLVM IR support.
- Compilers that already target MLIR can generate Wasm without depending on LLVM's backend, reducing the engineering needed to track Wasm changes.
- The stack-switching case study shows that coroutine-like non-local control flow can be compiled directly to Wasm's continuation instructions, avoiding reconstruction layers.
- Because address computations are explicit in SsaWasm, MLIR optimizations can optimize them, partly compensating for the lack of LLVM backend optimizations.
- On runtimes whose ahead-of-time compilers re-optimize the final Wasm binary, the quality of the initial generated code matters less, so WAMI remains competitive.
Reading between the lines
- Inference: if runtime ahead-of-time or just-in-time compilation keeps absorbing low-level optimization work, WAMI-style pipelines could let MLIR-based languages ship a much smaller compiler backend, provided the runtime remains optimizing.
- Inference: the measured speedup on a classic stack-based interpreter suggests LLVM's CPU-oriented transformations can hurt interpreter performance, which points to interpreter-only embedded targets as the clearest win for this approach.
- Inference: a direct testable extension is to add a garbage-collection dialect conversion to the same pipeline and compare code size and runtime against LLVM's experimental WebAssembly GC path; the paper's design predicts faster feature adoption but does not itself evaluate GC performance.
Editorial analysis
A structured set of objections, weighed in public.
Referee Report
Summary. The paper presents WAMI, an MLIR-based compilation pipeline for WebAssembly. It introduces two new MLIR dialects: SsaWasm, an SSA-form representation of Wasm with explicit operands and results, and Wasm, a stack-based dialect that mirrors Wasm's textual format. Conversion passes are described from the Arith, MemRef, Func, and SCF dialects to SsaWasm, and from SsaWasm to the Wasm dialect and finally to Wasm text. The paper also presents DCont, a prototype dialect for delimited continuations, and lowers it to SsaWasm using the Stack Switching proposal. The evaluation compiles PolyBench C benchmarks (via Polygeist) with both WAMI and an LLVM-based path, runs the resulting Wasm on Wasmtime and WAMR under interpreter and AoT execution modes, and reports mean slowdowns of 6.7% and 7.7% on interpreters, 4.1% on Wasmtime AoT, and a 1.9% speedup on WAMR AoT. The central claim is that WAMI can generate Wasm directly from high-level MLIR dialects without losing abstraction, while retaining competitive performance with LLVM-based compilers.
Significance. The core idea—making Wasm a first-class MLIR target and bypassing LLVM IR for Wasm code generation—is timely and plausible, and the Stack Switching case study demonstrates a concrete extensibility path that existing LLVM-based pipelines cannot easily provide. The paper is also transparent about WAMI's reliance on runtime AoT/JIT optimizations and on Binaryen, and the evaluation covers two very different platforms, which strengthens the empirical picture. The main weakness is that the headline performance bound is overstated by the paper's own data, and one of the central conversion-pass examples appears to be incorrect as printed. If these issues are fixed, the contribution would be a useful building block for the MLIR and WebAssembly compiler communities.
major comments (2)
- [Section 5.1, Figure 9] The displayed scf.for-to-SsaWasm conversion is not semantically correct as written. The termination condition at line 9 is `arith.cmpi eq, %i, %ub`, which would only enter the loop body when the induction variable equals the upper bound, rather than the usual less-than comparison of scf.for. More seriously, the loop-carried variable is never updated: line 19 writes `%new_acc` to `%result`, but the next iteration's `%acc_val` at line 12 still reads the old `%acc` local, so `%acc` remains at its initial value forever. The snippet also uses `%num` at line 13 without defining it. Please correct the figure, or clarify if it is only an illustrative sketch; as printed, it does not match the semantics the pass is supposed to implement.
- [Abstract and Section 7.2, Figure 14] The abstract's claim that WAMI 'produces code with at most 7.7% slower' is not supported by the reported data. Section 7.2 lists mean slowdowns (6.7% on Wasmtime interpreter, 7.7% on WAMR interpreter, 4.1% on Wasmtime AoT, and a 1.9% speedup on WAMR AoT) and calls 7.7% the 'worst case,' but Figure 14 plots per-benchmark ratios and several bars clearly exceed 1.077, with values around 1.2–1.4 corresponding to 20–40% per-benchmark slowdowns. The 'at most' phrasing should be replaced by 'on average,' or the per-benchmark worst case should be reported and the claim adjusted accordingly. This is a headline quantitative claim and needs to be stated accurately.
minor comments (5)
- [Section 4.1] The text refers to 'Table 3' when presenting the SsaWasm types and operations, but the content appears in Figure 3; please fix the cross-reference.
- [Title and Abstract] The phrase 'without losing abstraction' is stronger than what the paper demonstrates: high-level SCF/MemRef/Affine abstractions are lowered to SsaWasm, and what is preserved is enough semantic information to emit high-level Wasm features. Consider qualifying the wording, e.g., 'without losing the abstraction level needed to use high-level Wasm features.'
- [Section 7.1] The experimental methodology does not state the number of repetitions per benchmark, whether the reported numbers are means or medians across runs, or whether the benchmark outputs were verified for correctness; please add this information.
- [General] No artifact or repository URL is provided for the WAMI implementation. Making the code available would substantially strengthen reproducibility, especially since the paper describes a compiler implementation.
- [Section 7.2] The WAMR configuration descriptions are confusing: the initial results list a 7.7% mean slowdown on the WAMR interpreter, but later the 17.0% 'without AoT' result and the 10.0% classic-interpreter speedup are introduced without clearly explaining which interpreter mode each number corresponds to. Please reconcile these numbers and clearly label the interpreter variants.
Circularity Check
No circularity: WAMI's claims are established by implementation and external-baseline evaluation, not by definition or self-citation.
full rationale
The paper's central claims are (1) a compiler pipeline using new MLIR Wasm dialects and conversion passes, and (2) measured performance comparable to LLVM-generated Wasm. Neither claim reduces to its own inputs. The dialect conversions are defined semantically (Sections 4-6) and validated by executing generated Wasm (e.g., Wasmfxtime for Stack Switching in Section 6.2), not by fitting to the evaluation data. The performance comparison in Section 7 is against an external baseline: PolyBench C via Polygeist is compiled by both WAMI and LLVM, and the resulting binaries are timed on Wasmtime and WAMR. No parameter is fitted to the benchmarks and then reported as a prediction; the reported slowdowns are direct measurements. The authors explicitly attribute part of the competitive result to downstream runtime AoT compilation (Section 7.2), which is a stated assumption, not a circular inference. The paper contains no author self-citation used as evidence, and no uniqueness theorem or ansatz is imported from prior work. The abstract's 'at most 7.7% slower' is arguably an overstatement relative to the per-benchmark bars in Fig. 14, but overstatement of an empirical claim is not circularity. The architectural claim of 'without losing abstraction' is supported by the design (dialect conversion from SCF and DCont directly to SsaWasm/Wasm rather than through LLVM IR); one could debate whether the pipeline truly preserves all abstractions, but that is a design-correctness question, not a reduction of the result to its inputs. No circular step can be exhibited.
Assumptions & free parameters
assumptions (5)
- domain assumption Wasm's execution model does not require register allocation or instruction scheduling, so bypassing LLVM's machine code generation is practical.
- domain assumption Existing MLIR optimization passes and Binaryen optimizations are sufficient to achieve performance competitive with LLVM.
- domain assumption Treating memref.alloca as memref.alloc in four benchmarks does not invalidate the performance comparison because heap allocation is slower than stack allocation.
- domain assumption The Stack Switching proposal's semantics, as modeled in SsaWasm, match the eventual standardized behavior.
- domain assumption Polygeist-generated MLIR faithfully represents the PolyBench C benchmarks.
Cite this review
Pith. "Pith review of WAMI: Compilation to WebAssembly through MLIR without Losing Abstraction." pith.science (2026). https://pith.science/paper/RDHBPZUN
@misc{pith2026250616048,
author = {Pith},
title = {Pith review of: WAMI: Compilation to WebAssembly through MLIR without Losing Abstraction},
year = {2026},
howpublished = {\url{https://pith.science/paper/RDHBPZUN}},
note = {Machine review of arXiv:2506.16048}
}
read the original abstract
WebAssembly (Wasm) is a portable bytecode format that serves as a compilation target for high-level languages, enabling their secure and efficient execution across diverse platforms, including web browsers and embedded systems. To improve support for high-level languages without incurring significant code size or performance overheads, Wasm continuously evolves by integrating high-level features such as Garbage Collection and Stack Switching. However, existing compilation approaches either lack reusable design -- requiring redundant implementation efforts for each language -- or lose abstraction by lowering high-level constructs into low-level shared representations like LLVM IR, which hinder the adoption of high-level features. MLIR compiler infrastructure provides the compilation pipeline with multiple levels of abstraction, preserving high-level abstractions throughout the compilation pipeline, yet the current MLIR pipeline relies on the LLVM backend for Wasm code generation, thereby inheriting LLVM's limitations. This paper presents a novel compilation pipeline for Wasm, featuring Wasm dialects explicitly designed to represent high-level Wasm constructs within MLIR. Our approach enables direct generation of high-level Wasm code from corresponding high-level MLIR dialects without losing abstraction, providing a modular and extensible way to incorporate high-level Wasm features. We illustrate this extensibility through a case study that leverages Stack Switching, a recently introduced high-level feature of Wasm. Performance evaluations on PolyBench benchmarks show that our pipeline, benefiting from optimizations within the MLIR and Wasm ecosystems, produces code with at most 7.7\% slower, and faster in some execution environments, compared to LLVM-based compilers.
Figures
Figures from the paper (12 more)
Forward citations
Cited by 3 Pith papers
-
The Program Hypergraph: Multi-Way Relational Structure for Geometric Algebra, Spatial Compute, and Physics-Aware Compilation
The Program Hypergraph extends binary program semantic graphs to arbitrary-arity hyperedges to faithfully represent multi-way relations in geometric algebra and spatial architectures.
-
Dimensional Type Systems and Deterministic Memory Management: Design-Time Semantic Preservation in Native Compilation
Dimensional types that persist through MLIR lowering jointly drive numeric representation selection and deterministic memory allocation as coeffects on a single program semantic graph.
-
Adaptive Domain Models: Bayesian Evolution, Warm Rotation, and Principled Training for Geometric and Neuromorphic AI
The paper claims that composing the Dimensional Type System, Program Hypergraph, and b-posit 2026 standard yields depth-independent training memory at ~2x inference, grade-preserving updates, Bayesian distillation for...
Reference graph
Works this paper leans on
-
[1]
WebAssembly Core Specification
2022. WebAssembly Core Specification. https://webassembly.github.io/spec/core/
work page 2022
-
[2]
2015. Emscripten: Asynchronous Code. https://emscripten.org/docs/porting/asyncify.html Accessed: Mar 9, 2025
work page 2015
-
[3]
An overview of the TurboFan compiler
2016. An overview of the TurboFan compiler. https://docs.google.com/presentation/d/ 1H1lLsbclvzyOF3IUR05ZUaZcqDxo7_-8f4yJoxdMooU Accessed: Mar 18, 2025
work page 2016
-
[4]
2016. PolyBench/C 4.2.1. https://github.com/MatthiasJReisinger/PolyBenchC-4.2.1 Accessed: Feb 19, 2025
work page 2016
-
[5]
Tensor Operator Set Architecture (TOSA) Dialect
2021. Tensor Operator Set Architecture (TOSA) Dialect. https://mlir.llvm.org/docs/Dialects/TOSA/ Accessed: Mar 11, 2025
work page 2021
-
[6]
Clang! Clang! Who’s there? WebAssembly
2022. Clang! Clang! Who’s there? WebAssembly. https://llvm.org/devmtg/2022-11/slides/TechTalk3-ClangClang- WebAssembly.pdf Accessed: Mar 2, 2025
work page 2022
-
[7]
2022. Multiple Memories for Wasm. https://github.com/WebAssembly/multi-memory/blob/main/proposals/multi- memory/Overview.md Accessed: Mar 11, 2025
work page 2022
-
[8]
Pylir: An optimizing ahead-of-time Python Compiler
2022. Pylir: An optimizing ahead-of-time Python Compiler. https://github.com/Pylir/Pylir Accessed: Feb 22, 2025
work page 2022
Show all 68 references
-
[9]
Reference-Typed Strings
2022. Reference-Typed Strings. https://github.com/WebAssembly/stringref/blob/main/proposals/stringref/Overview. md Accessed: Mar 11, 2025
2022
-
[10]
Reference typing extensions for C++ (“Ref C++”)
2022. Reference typing extensions for C++ (“Ref C++”). https://github.com/Igalia/ref-cpp Accessed: Mar 9, 2025
2022
-
[11]
WebAssembly Micro Runtime
2022. WebAssembly Micro Runtime. https://bytecodealliance.github.io/wamr.dev/ Accessed: Feb 22, 2025
2022
-
[12]
Cranelift
2023. Cranelift. https://cranelift.dev/ Accessed: Mar 24, 2025
2023
-
[13]
Getting Started for J2CL/Wasm (Experimental)
2023. Getting Started for J2CL/Wasm (Experimental). https://github.com/google/j2cl/blob/ b3ff9e233cef3e67e495476da14f13250a56c5e9/docs/getting-started-j2wasm.md Accessed: Mar 8, 2025
2023
-
[14]
‘memref’ Dialect
2023. ‘memref’ Dialect. https://mlir.llvm.org/docs/Dialects/MemRef/ Accessed: Mar 11, 2025
2023
-
[15]
Multi-Level Intermediate Representation Overview
2023. Multi-Level Intermediate Representation Overview. https://mlir.llvm.org/ Accessed: Mar 25, 2025
2023
-
[16]
‘cf’ Dialect
2024. ‘cf’ Dialect. https://mlir.llvm.org/docs/Dialects/ControlFlowDialect/ Accessed: Mar 11, 2025
2024
-
[17]
Dart/Wasm
2024. Dart/Wasm. https://dart.dev/web/wasm Accessed: Mar 8, 2025
2024
-
[18]
GHC: The Glasgow Haskell Compiler
2024. GHC: The Glasgow Haskell Compiler. https://www.haskell.org/ghc/ Accessed: Feb 22, 2025
2024
-
[19]
Go Wiki: WebAssembly
2024. Go Wiki: WebAssembly. https://go.dev/wiki/WebAssembly Accessed: Feb 22, 2025
2024
-
[20]
2024. Grain. https://grain-lang.org/ Accessed: Feb 22, 2025
2024
-
[21]
JSIR: Adversarial JavaScript Analysis with MLIR
2024. JSIR: Adversarial JavaScript Analysis with MLIR. https://llvm.org/devmtg/2024-10/slides/techtalk/Tan-JSIR.pdf Accessed: Mar 24, 2025
2024
-
[22]
Kotlin/Wasm
2024. Kotlin/Wasm. https://kotlinlang.org/docs/wasm-overview.html Accessed: Mar 8, 2025
2024
-
[23]
MLIR: Side Effects and Speculation
2024. MLIR: Side Effects and Speculation. https://mlir.llvm.org/docs/Rationale/SideEffectsAndSpeculation/ Accessed: Mar 11, 2025
2024
-
[24]
Threading proposal for WebAssembly
2024. Threading proposal for WebAssembly. https://github.com/WebAssembly/threads/blob/main/proposals/threads/ Overview.md Accessed: Mar 11, 2025
2024
-
[25]
Wasmtime: A fast and secure runtime for WebAssembly
2024. Wasmtime: A fast and secure runtime for WebAssembly. https://wasmtime.dev/ Accessed: Mar 24, 2025
2024
-
[26]
‘arith’ Dialect
2025. ‘arith’ Dialect. https://mlir.llvm.org/docs/Dialects/ArithOps/ Accessed: Mar 11, 2025
2025
-
[27]
AssemblyScript
2025. AssemblyScript. https://www.assemblyscript.org/ Accessed: Feb 22, 2025
2025
-
[28]
Attribute specifier sequence
2025. Attribute specifier sequence. https://en.cppreference.com/w/cpp/language/attributes Accessed: Mar 9, 2025
2025
-
[29]
Binaryen
2025. Binaryen. https://github.com/WebAssembly/binaryen Accessed: Feb 22, 2025
2025
-
[30]
Build WAMR vmcore
2025. Build WAMR vmcore. https://github.com/bytecodealliance/wasm-micro-runtime/blob/main/doc/build_wamr.md Accessed: Mar 24, 2025
2025
-
[31]
C++ Coroutines
2025. C++ Coroutines. https://en.cppreference.com/w/cpp/language/coroutines Accessed: Mar 9, 2025
2025
-
[32]
2025. ClangIR. https://llvm.github.io/clangir/ Accessed: Mar 18, 2025
2025
-
[33]
Coroutines in LLVM
2025. Coroutines in LLVM. https://llvm.org/docs/Coroutines.html Accessed: Mar 9, 2025
2025
-
[34]
Exception handling
2025. Exception handling. https://github.com/WebAssembly/exception-handling/blob/main/proposals/exception- handling/Exceptions.md Accessed: Mar 11, 2025
2025
-
[35]
Extending LLVM
2025. Extending LLVM. https://llvm.org/docs/ExtendingLLVM.html Accessed: Mar 2, 2025
2025
-
[36]
‘gpu’ Dialect
2025. ‘gpu’ Dialect. https://mlir.llvm.org/docs/Dialects/GPU/ Accessed: Mar 25, 2025
2025
-
[37]
‘linalg’ Dialect
2025. ‘linalg’ Dialect. https://mlir.llvm.org/docs/Dialects/Linalg/ Accessed: Mar 11, 2025
2025
-
[38]
Marco: Modelica Advanced Research COmpiler
2025. Marco: Modelica Advanced Research COmpiler. https://github.com/marco-compiler/marco Accessed: Feb 22, 2025
2025
-
[39]
2025. Mojo. https://www.modular.com/mojo Accessed: Feb 22, 2025. WAMI: Compilation to WebAssembly through MLIR without Losing Abstraction 25
2025
-
[40]
‘scf’ Dialect
2025. ‘scf’ Dialect. https://mlir.llvm.org/docs/Dialects/SCFDialect/ Accessed: Mar 11, 2025
2025
-
[41]
Stack switching
2025. Stack switching. https://github.com/WebAssembly/stack-switching/blob/main/proposals/stack-switching/ Explainer.md Accessed: Mar 11, 2025
2025
-
[42]
TableGen Overview
2025. TableGen Overview. https://llvm.org/docs/TableGen/ Accessed: Mar 24, 2025
2025
-
[43]
‘vector’ Dialect
2025. ‘vector’ Dialect. https://mlir.llvm.org/docs/Dialects/Vector/ Accessed: Mar 25, 2025
2025
-
[44]
wasmfxtime
2025. wasmfxtime. https://github.com/wasmfx/wasmfxtime Accessed: Mar 20, 2025
2025
-
[45]
WebAssembly Proposals
2025. WebAssembly Proposals. https://github.com/WebAssembly/proposals Accessed: Mar 9, 2025
2025
-
[46]
WebAssembly Security
2025. WebAssembly Security. https://webassembly.org/docs/security/ Accessed: Mar 9, 2025
2025
-
[47]
The Zephyr Project
2025. The Zephyr Project. https://docs.zephyrproject.org/latest/ Accessed: Feb 19, 2025
2025
-
[48]
Léo Andrès, Pierre Chambart, and Jean-Christophe Filliâtre. 2023. Wasocaml: compiling OCaml to WebAssembly. (2023)
2023
-
[49]
Aart Bik, Penporn Koanantakool, Tatiana Shpeisman, Nicolas Vasilache, Bixia Zheng, and Fredrik Kjolstad. 2022. Compiler support for sparse tensor computations in MLIR. ACM Transactions on Architecture and Code Optimization (TACO) 19, 4 (2022), 1–25
2022
-
[50]
Nick Brown. 2024. Fully integrating the Flang Fortran compiler with standard MLIR. In SC24-W: Workshops of the International Conference for High Performance Computing, Networking, Storage and Analysis . IEEE, 939–949
2024
-
[51]
Keith D Cooper, L Taylor Simpson, and Christopher A Vick. 2001. Operator strength reduction. ACM Transactions on Programming Languages and Systems (TOPLAS) 23, 5 (2001), 603–625
2001
-
[52]
Mattias Felleisen. 1988. The theory and practice of first-class prompts. InProceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages . 180–190
1988
-
[53]
Renato Golin, Lorenzo Chelini, Adam Siemieniuk, Kavitha Madhu, Niranjan Hasabnis, Hans Pabst, Evangelos Geor- ganas, and Alexander Heinecke. 2024. Towards a high-performance AI compiler with upstream MLIR. arXiv preprint arXiv:2404.15204 (2024)
2024 arXiv
-
[54]
Andreas Haas, Andreas Rossberg, Derek L Schuff, Ben L Titzer, Michael Holman, Dan Gohman, Luke Wagner, Alon Zakai, and JF Bastien. 2017. Bringing the web up to speed with WebAssembly. InProceedings of the 38th ACM SIGPLAN conference on programming language design and implement...
2017
-
[55]
Tian Jin, Gheorghe-Teodor Bercea, Tung D Le, Tong Chen, Gong Su, Haruki Imai, Yasushi Negishi, Anh Leu, Kevin O’Brien, Kiyokuni Kawachiya, et al . 2020. Compiling onnx neural network models using mlir. arXiv preprint arXiv:2008.08272 (2020)
2020 arXiv
-
[56]
Chris Lattner and Vikram Adve. 2004. LLVM: A compilation framework for lifelong program analysis & transformation. In International symposium on code generation and optimization, 2004. CGO 2004. IEEE, 75–86
2004
-
[57]
Chris Lattner, Mehdi Amini, Uday Bondhugula, Albert Cohen, Andy Davis, Jacques Pienaar, River Riddle, Tatiana Shpeisman, Nicolas Vasilache, and Oleksandr Zinenko. 2021. MLIR: Scaling compiler infrastructure for domain specific computation. In 2021 IEEE/ACM International Sympos...
2021
-
[58]
Andrew Lenharth and Chris Lattner. 2021. CIRCT: Lifting hardware development out of the 20th century. https: //llvm.org/devmtg/2021-11/slides/2021-CIRCT-LiftingHardwareDevOutOfThe20thCentury.pdf Accessed: Mar 25, 2025
2021
-
[60]
Martin Lücke, Michel Steuwer, and Aaron Smith. 2021. Integrating a functional pattern-based IR into MLIR. In Proceedings of the 30th ACM SIGPLAN International Conference on Compiler Construction . 12–22
2021
-
[61]
William S Moses, Lorenzo Chelini, Ruizhe Zhao, and Oleksandr Zinenko. 2021. Polygeist: Raising C to polyhedral MLIR. In 2021 30th International Conference on Parallel Architectures and Compilation Techniques (PACT) . IEEE, 45–59
2021
-
[62]
Jacques Pienaar et al. 2020. Mlir in tensorflow ecosystem. In compilers For Machine Learning (C4ML) 2020
2020
-
[63]
Norman Ramsey. 2022. Beyond Relooper: recursive translation of unstructured control flow to structured control flow (functional pearl). Proceedings of the ACM on Programming Languages 6, ICFP (2022), 1–22
2022
-
[64]
Jim M. R. Teichgräber. 2023. Efficient Compilation of an Extensible Intermediate Representation. https://github.com/J- MR-T/MoNaCo
2023
-
[65]
Philippe Tillet, Hsiang-Tsung Kung, and David Cox. 2019. Triton: an intermediate language and compiler for tiled neural network computations. In Proceedings of the 3rd ACM SIGPLAN International Workshop on Machine Learning and Programming Languages. 10–19
2019
-
[66]
Vinay/Ranjith/Prashantha. 2021. Moving LLVM’s code generator to MLIR framework. https://llvm.org/devmtg/2021- 02-28/slides/Vinay-MLIR-codegen.pdf
2021
-
[67]
Jun Xu, Liang He, Xin Wang, Wenyong Huang, and Ning Wang. 2021. A fast WebAssembly Interpreter design in W ASM-Micro-Runtime. Technical Report. https://www.intel.com/content/www/us/en/developer/articles/technical/ webassembly-interpreter-design-wasm-micro-runtime.html Accessed...
2021
-
[68]
Alon Zakai. 2011. Emscripten: an LLVM-to-JavaScript compiler. In Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion . 301–312
2011
-
[69]
Kai Zhu, WY Zhao, Zhen Zheng, TY Guo, PZ Zhao, JJ Bai, Jun Yang, XY Liu, LS Diao, and Wei Lin. 2021. DISC: A dynamic shape compiler for machine learning workloads. In Proceedings of the 1st Workshop on Machine Learning and Systems. 89–95
2021
Reviewed August 6, 2026 · model on record in the stance chip above.
Discussion (0). Sign in to comment.