Code Translation with Compiler Representations
Not on the map. Why?
Abstract (arXiv)
In this paper, we leverage low-level compiler intermediate representations (IR) to improve code translation. Traditional transpilers rely on syntactic information and handcrafted rules, which limits their applicability and produces unnatural-looking code. Applying neural machine translation (NMT) approaches to code has successfully broadened the set of programs on which one can get a natural-looking translation. However, they treat the code as sequences of text tokens, and still do not differentiate well enough between similar pieces of code which have different semantics in different languages. The consequence is low quality translation, reducing the practicality of NMT, and stressing the need for an approach significantly increasing its accuracy. Here we propose to augment code translation with IRs, specifically LLVM IR, with results on the C++, Java, Rust, and Go languages. Our method improves upon the state of the art for unsupervised code translation, increasing the number of correct translations by 11% on average, and up to 79% for the Java -> Rust pair with greedy decoding. We extend previous test sets for code translation, by adding hundreds of Go and Rust functions. Additionally, we train models with high performance on the problem of IR decompilation, generating programming source code from IR, and study using IRs as intermediary pivot for translation.
Key facts. Cited by 42 papers in the map (data through 7 Oct 2026). Builds on 26 of its 43 references that are in the map. First posted on arXiv 30 Jun 2022.
Builds on
26 of 43 references.
References · 26
- 2017Attention Is All You Needcited by 59,932
- 2018BERT: Pre-training of Deep Bidirectional Transformers for Language Understandingcited by 40,204
- 2014Adam: A Method for Stochastic Optimizationcited by 36,960
- 2019RoBERTa: A Robustly Optimized BERT Pretraining Approachcited by 13,266
- 2021Evaluating Large Language Models Trained on Codecited by 8,053
- 2022PaLM: Scaling Language Modeling with Pathwayscited by 5,304
- 2014Neural Machine Translation by Jointly Learning to Align and Translatecited by 4,530
- 2014Sequence to Sequence Learning with Neural Networkscited by 2,974
- 2020CodeBERT: A Pre-Trained Model for Programming and Natural Languagescited by 1,286
- 2019Cross-lingual Language Model Pretrainingcited by 1,088
- 2021CodeT5: Identifier-aware Unified Pre-trained Encoder-Decoder Models for Code Understanding and Generationcited by 890
- 2015Improving Neural Machine Translation Models with Monolingual Datacited by 784
14 more
- 2020GraphCodeBERT: Pre-training Code Representations with Data Flowcited by 600
- 2021Unified Pre-training for Program Understanding and Generationcited by 361
- 2017Unsupervised Machine Translation Using Monolingual Corpora Onlycited by 272
- 2020Unsupervised Translation of Programming Languagescited by 262
- 2019SPoC: Search-based Pseudocode to Codecited by 176
- 2018Phrase-Based & Neural Unsupervised Machine Translationcited by 138
- 2018Tree-to-tree Neural Networks for Program Translationcited by 93
- 2021Leveraging Automated Unit Tests for Unsupervised Code Translationcited by 82
- 2021DOBF: A Deobfuscation Pre-Training Objective for Programming Languagescited by 68
- 2018Unsupervised Statistical Machine Translationcited by 51
- 2021Perfection Not Required? Human-AI Partnerships in Code Translationcited by 42
- 2019Towards Neural Decompilationcited by 15
- 2022Better Together? An Evaluation of AI-Supported Code Translationcited by 15
- 2021Semantics-Recovering Decompilation through Neural Machine Translationcited by 2
Built on by
Citing papers per year: 2022: 2; 2023: 8; 2024: 12; 2025: 14; 2026: 6.
42 papers.
Sort:
By area:
- 2023Qwen Technical Reportcited by 3,273
- 2023Code Llama: Open Foundation Models for Codecited by 2,105
- 2022Multi-lingual Evaluation of Code Generation Modelscited by 158
- 2025SWE-PolyBench: A multi-language benchmark for repository level evaluation of coding agentscited by 80
- 2023Large Language Models for Compiler Optimizationcited by 52
- 2024Meta Large Language Model Compiler: Foundation Models of Compiler Optimizationcited by 39
- 2024RepoTransBench: A Real-World Multilingual Benchmark for Repository-Level Code Translationcited by 21
- 2024CodeRosetta: Pushing the Boundaries of Unsupervised Code Translation for Parallel Programmingcited by 19
- 2024EMMA-500: Enhancing Massively Multilingual Adaptation of Large Language Modelscited by 16
- 2024InterTrans: Leveraging Transitive Intermediate Translations to Enhance LLM-based Code Translationcited by 15
- 2023Scope is all you need: Transforming LLMs for HPC Codecited by 12
- 2023MonoCoder: Domain-Specific Code Language Model for HPC Codes and Taskscited by 12
30 more
- 2025Rethinking Multilingual Continual Pretraining: Data Mixing for Adapting LLMs Across Languages and Resourcescited by 10
- 2023Coeditor: Leveraging Contextual Changes for Multi-round Code Auto-editingcited by 9
- 2024Compiler generated feedback for Large Language Modelscited by 9
- 2025SACTOR: LLM-Driven Correct and Idiomatic C to Rust Translation with Static Analysis and FFI-Based Verificationcited by 9
- 2024GALLa: Graph Aligned Large Language Models for Improved Source Code Understandingcited by 7
- 2024TransAgent: Enhancing LLM-Based Code Translation via Fine-Grained Execution Alignmentcited by 7
- 2025CASCADE: LLM-Powered JavaScript Deobfuscator at Googlecited by 5
- 2024Fortran2CPP: Automating Fortran-to-C++ Translation using LLMs via Multi-Turn Dialogue and Dual-Agent Integrationcited by 4
- 2025ObscuraCoder: Powering Efficient Code LM Pre-Training Via Obfuscation Groundingcited by 4
- 2025Massively Multilingual Adaptation of Large Language Models Using Bilingual Translation Datacited by 4
- 2025Function-to-Style Guidance of LLMs for Code Translationcited by 4
- 2023Automatically Testing Functional Properties of Code Translation Modelscited by 3
- 2023Guess & Sketch: Language Model Guided Transpilationcited by 3
- 2024Mastering the Craft of Data Synthesis for CodeLLMscited by 3
- 2024Renaissance of Literate Programming in the Era of LLMs: Enhancing LLM-Based Code Generation in Large-Scale Projectscited by 3
- 2025Post-Incorporating Code Structural Knowledge into Pretrained Models via ICL for Code Translationcited by 3
- 2022Exploring Code Style Transfer with Neural Networkscited by 2
- 2024Forklift: An Extensible Neural Liftercited by 2
- 2025On-Policy Optimization with Group Equivalent Preference for Multi-Programming Language Understandingcited by 2
- 2025QiMeng-MuPa: Mutual-Supervised Learning for Sequential-to-Parallel Code Translationcited by 2
- 2025BabelCoder: Agentic Code Translation with Specification Alignmentcited by 1
- 2026CodePivot: Bootstrapping Multilingual Transpilation in LLMs via Reinforcement Learning without Parallel Corporacited by 1
- 2026Parallel-SFT: Improving Zero-Shot Cross-Programming-Language Transfer for Code RLcited by 1
- 2025Learning Bug Context for PyTorch-to-JAX Translation with LLMscited by 0
- 2025Feedback Loops and Code Perturbations in LLM-based Software Engineering: A Case Study on a C-to-Rust Translation Systemcited by 0
- 2025SoK: Understanding (New) Security Issues Across AI4Code Use Casescited by 0
- 2026The New Compiler Stack: A Survey on the Synergy of LLMs and Compilerscited by 0
- 2026Improving Code Translation with Syntax-Guided and Semantic-aware Preference Optimizationcited by 0
- 2026XSearch: Explainable Code Search via Concept-to-Code Alignmentcited by 0
- 2026Fine-Tuning Qwen3-27B for C-to-Rust Code Translation: A Three-Stage Curriculum of Pretraining, Debugging-Aware SFT, and Task-Specific SFTcited by 0
- 2026Fine-Tuning Qwen3-27B for C-to-Rust Code Translation: A Three-Stage Curriculum of Pretraining, Debugging-Aware SFT, and Task-Specific SFT13 Aug 2026
- 2026XSearch: Explainable Code Search via Concept-to-Code Alignment15 May 2026
- 2026Improving Code Translation with Syntax-Guided and Semantic-aware Preference Optimization13 May 2026
- 2026Parallel-SFT: Improving Zero-Shot Cross-Programming-Language Transfer for Code RL22 Apr 2026
- 2026CodePivot: Bootstrapping Multilingual Transpilation in LLMs via Reinforcement Learning without Parallel Corpora20 Apr 2026
- 2026The New Compiler Stack: A Survey on the Synergy of LLMs and Compilers5 Jan 2026
- 2025SoK: Understanding (New) Security Issues Across AI4Code Use Cases20 Dec 2025
- 2025BabelCoder: Agentic Code Translation with Specification Alignment7 Dec 2025
- 2025Feedback Loops and Code Perturbations in LLM-based Software Engineering: A Case Study on a C-to-Rust Translation System2 Dec 2025
- 2025Learning Bug Context for PyTorch-to-JAX Translation with LLMs10 Oct 2025
- 2025CASCADE: LLM-Powered JavaScript Deobfuscator at Google23 Jul 2025
- 2025Function-to-Style Guidance of LLMs for Code Translation15 Jul 2025
30 more
- 2025QiMeng-MuPa: Mutual-Supervised Learning for Sequential-to-Parallel Code Translation11 Jun 2025
- 2025Massively Multilingual Adaptation of Large Language Models Using Bilingual Translation Data31 May 2025
- 2025On-Policy Optimization with Group Equivalent Preference for Multi-Programming Language Understanding19 May 2025
- 2025SWE-PolyBench: A multi-language benchmark for repository level evaluation of coding agents11 Apr 2025
- 2025Rethinking Multilingual Continual Pretraining: Data Mixing for Adapting LLMs Across Languages and Resources5 Apr 2025
- 2025Post-Incorporating Code Structural Knowledge into Pretrained Models via ICL for Code Translation28 Mar 2025
- 2025ObscuraCoder: Powering Efficient Code LM Pre-Training Via Obfuscation Grounding27 Mar 2025
- 2025SACTOR: LLM-Driven Correct and Idiomatic C to Rust Translation with Static Analysis and FFI-Based Verification16 Mar 2025
- 2024Fortran2CPP: Automating Fortran-to-C++ Translation using LLMs via Multi-Turn Dialogue and Dual-Agent Integration27 Dec 2024
- 2024Renaissance of Literate Programming in the Era of LLMs: Enhancing LLM-Based Code Generation in Large-Scale Projects25 Dec 2024
- 2024RepoTransBench: A Real-World Multilingual Benchmark for Repository-Level Code Translation23 Dec 2024
- 2024InterTrans: Leveraging Transitive Intermediate Translations to Enhance LLM-based Code Translation1 Nov 2024
- 2024CodeRosetta: Pushing the Boundaries of Unsupervised Code Translation for Parallel Programming27 Oct 2024
- 2024Mastering the Craft of Data Synthesis for CodeLLMs16 Oct 2024
- 2024TransAgent: Enhancing LLM-Based Code Translation via Fine-Grained Execution Alignment30 Sep 2024
- 2024EMMA-500: Enhancing Massively Multilingual Adaptation of Large Language Models26 Sep 2024
- 2024GALLa: Graph Aligned Large Language Models for Improved Source Code Understanding6 Sep 2024
- 2024Meta Large Language Model Compiler: Foundation Models of Compiler Optimization27 Jun 2024
- 2024Forklift: An Extensible Neural Lifter1 Apr 2024
- 2024Compiler generated feedback for Large Language Models18 Mar 2024
- 2023MonoCoder: Domain-Specific Code Language Model for HPC Codes and Tasks20 Dec 2023
- 2023Qwen Technical Report28 Sep 2023
- 2023Guess & Sketch: Language Model Guided Transpilation25 Sep 2023
- 2023Large Language Models for Compiler Optimization11 Sep 2023
- 2023Automatically Testing Functional Properties of Code Translation Models7 Sep 2023
- 2023Code Llama: Open Foundation Models for Code24 Aug 2023
- 2023Scope is all you need: Transforming LLMs for HPC Code18 Aug 2023
- 2023Coeditor: Leveraging Contextual Changes for Multi-round Code Auto-editing29 May 2023
- 2022Multi-lingual Evaluation of Code Generation Models26 Oct 2022
- 2022Exploring Code Style Transfer with Neural Networks13 Sep 2022
- 2025SWE-PolyBench: A multi-language benchmark for repository level evaluation of coding agentscited by 80
- 2024Fortran2CPP: Automating Fortran-to-C++ Translation using LLMs via Multi-Turn Dialogue and Dual-Agent Integrationcited by 4
- 2025BabelCoder: Agentic Code Translation with Specification Alignmentcited by 1
- 2025BabelCoder: Agentic Code Translation with Specification Alignment7 Dec 2025
- 2025SWE-PolyBench: A multi-language benchmark for repository level evaluation of coding agents11 Apr 2025
- 2024Fortran2CPP: Automating Fortran-to-C++ Translation using LLMs via Multi-Turn Dialogue and Dual-Agent Integration27 Dec 2024
- 2024GALLa: Graph Aligned Large Language Models for Improved Source Code Understandingcited by 7
- 2025On-Policy Optimization with Group Equivalent Preference for Multi-Programming Language Understandingcited by 2
- 2026Improving Code Translation with Syntax-Guided and Semantic-aware Preference Optimizationcited by 0
- 2026Improving Code Translation with Syntax-Guided and Semantic-aware Preference Optimization13 May 2026
- 2025On-Policy Optimization with Group Equivalent Preference for Multi-Programming Language Understanding19 May 2025
- 2024GALLa: Graph Aligned Large Language Models for Improved Source Code Understanding6 Sep 2024
- 2023Qwen Technical Reportcited by 3,273
- 2022Multi-lingual Evaluation of Code Generation Modelscited by 158
- 2023Large Language Models for Compiler Optimizationcited by 52
- 2024Meta Large Language Model Compiler: Foundation Models of Compiler Optimizationcited by 39
- 2024RepoTransBench: A Real-World Multilingual Benchmark for Repository-Level Code Translationcited by 21
- 2024CodeRosetta: Pushing the Boundaries of Unsupervised Code Translation for Parallel Programmingcited by 19
- 2024EMMA-500: Enhancing Massively Multilingual Adaptation of Large Language Modelscited by 16
- 2024InterTrans: Leveraging Transitive Intermediate Translations to Enhance LLM-based Code Translationcited by 15
- 2023Scope is all you need: Transforming LLMs for HPC Codecited by 12
- 2023MonoCoder: Domain-Specific Code Language Model for HPC Codes and Taskscited by 12
- 2023Coeditor: Leveraging Contextual Changes for Multi-round Code Auto-editingcited by 9
- 2024Compiler generated feedback for Large Language Modelscited by 9
12 most cited of 32 All 32 (JSON)
- 2026Fine-Tuning Qwen3-27B for C-to-Rust Code Translation: A Three-Stage Curriculum of Pretraining, Debugging-Aware SFT, and Task-Specific SFT13 Aug 2026
- 2026XSearch: Explainable Code Search via Concept-to-Code Alignment15 May 2026
- 2026Parallel-SFT: Improving Zero-Shot Cross-Programming-Language Transfer for Code RL22 Apr 2026
- 2026The New Compiler Stack: A Survey on the Synergy of LLMs and Compilers5 Jan 2026
- 2025SoK: Understanding (New) Security Issues Across AI4Code Use Cases20 Dec 2025
- 2025Feedback Loops and Code Perturbations in LLM-based Software Engineering: A Case Study on a C-to-Rust Translation System2 Dec 2025
- 2025Learning Bug Context for PyTorch-to-JAX Translation with LLMs10 Oct 2025
- 2025CASCADE: LLM-Powered JavaScript Deobfuscator at Google23 Jul 2025
- 2025Function-to-Style Guidance of LLMs for Code Translation15 Jul 2025
- 2025QiMeng-MuPa: Mutual-Supervised Learning for Sequential-to-Parallel Code Translation11 Jun 2025
- 2025Massively Multilingual Adaptation of Large Language Models Using Bilingual Translation Data31 May 2025
- 2025Post-Incorporating Code Structural Knowledge into Pretrained Models via ICL for Code Translation28 Mar 2025
12 newest of 32 All 32 (JSON)