This repository aims to provide a framework for neural network-based program analysis, making it easy for people to build neural networks and experiment with them.
Year | Venue | Paper | Code |
---|---|---|---|
2023 | ESEC/FSE 2023 | Copiloting the Copilots: Fusing Large Language Models with Completion Engines for Automated Program Repair | |
2022 | EMNLP 2022 | Using Developer Discussions to Guide Fixing Bugs in Software | |
2022 | ASE 2022 | SelfAPR: Self-supervised Program Repair with Test Execution Diagnostics | |
2022 | ICSE 2022 | Neural Program Repair with Execution-based Backpropagation | |
2021 | PLDI 2021 | Learning to Find Naming Issues with Big Code and Small Supervision | |
2021 | FSE 2021 | A Syntax-Guided Edit Decoder for Neural Program Repair | |
2021 | NeurIPS 2021 | Self-Supervised Bug Detection and Repair | |
2021 | ICML 2021 | TFix: Learning to Fix Coding Errors with a Text-to-Text Transformer | |
2020 | ICSE 2020 | DLFix: Context-based Code Transformation Learning for Automated Program Repair | |
2020 | ICLR 2020 | Hoppity: Learning Bug Detection and Repair | |
2019 | TSE 2019 | SequenceR: Sequence-to-Sequence Learning for End-to-End Program Repair | |
2019 | ESEC/FSE 2019 | DeepDelta: learning to repair compilation errors | |
2019 | ICLR 2019 | Neural Program Repair by Jointly Learning to Localize and Repair |
ID | Name | Language | #Bugs | Test Suite | Training | Testing | Links | Others |
---|---|---|---|---|---|---|---|---|
1 | Bears | Java | 251 | yes | yes | yes | Github | |
2 | BFP medium | Java | 65454 | no | yes | yes | Zenodo | |
3 | BFP small | Java | 58350 | no | yes | yes | Zenodo | |
4 | BigFix | Java | 1.824 M | no | yes | yes | Github | |
5 | Bugs2Fix | Java | 92849 | no | yes | yes | ||
6 | Bugs.jar | Java | 1158 | yes | yes | yes | Github | |
7 | Code-Change-Data | Java | 44372 | no | yes | yes | Google Drive | |
8 | CodeXGlue | Java | 122 K | no | no | yes | ||
9 | CodRep | Java | 58069 | no | yes | yes | Github | |
10 | CPatMiner | Java | 44 K | no | yes | yes | ||
11 | DeepRepair | Java | 374 | no | yes | no | ||
12 | Defects4J | Java | 835 | yes | yes | yes | Github | |
13 | Function-SStuBs4J | Java | 21047 | no | yes | yes | Zenodo | |
14 | IntroClassJava | Java | 998 | yes | yes | yes | Github | |
15 | Java-med | Java | 7454 | no | yes | no | AWS | |
16 | ManySStuBs4J large | Java | 63923 | no | yes | yes | Zenodo | |
17 | ManySStuBs4J small | Java | 10231 | no | yes | yes | Zenodo | |
18 | MegaDiff | Java | 663029 | no | yes | no | Zenodo | |
19 | Ponta | Java | 624 | no | yes | yes | Github | |
20 | Pull-Request-Data | Java | 10666 | no | yes | yes | Zenodo | |
21 | Ratchet | Java | 35 K | no | yes | yes | Github | |
22 | Recoder | Java | 103585 | no | yes | no | Google Drive | |
23 | TRANSFER | Java | 408091 | no | yes | no | MEGA | |
24 | Mesbah | Java | 4.8 M | no | yes | yes | ||
25 | AOJ | C | 2482 | no | yes | yes | Others | |
26 | Big-Vul | C | 3745 | no | yes | yes | Github | |
27 | Code4Bench | C | 25 K | yes | yes | yes | Zenodo | |
28 | CodeHunt | C | 195 K | yes | yes | yes | ||
29 | CVEFixes | C | 8482 | no | yes | yes | Github | |
30 | DeepFix | C | 6971 | yes | yes | yes | Github | |
31 | ManyBugs | C | 185 | yes | yes | yes | Others | |
32 | Prophet | C | 69 | yes | yes | yes | Github | |
33 | Prutor | C | 6971 | yes | yes | yes | Others | |
34 | BugAID | JS | 105133 | no | yes | yes | Others | |
35 | BugsJS | JS | 453 | yes | yes | yes | Others | |
36 | HOPPITY | JS | 363 K | no | yes | yes | Github | |
37 | KATANA | JS | 114 K | no | yes | yes | Github | |
38 | REPTORY | JS | 407 K | no | yes | yes | Github | |
39 | TFix | JS | 100 K | no | yes | yes | Github | |
40 | ETH Py150 | Python | 150 K | no | yes | yes | Others | |
41 | GitHub-Python | Python | 3 M | no | yes | yes | Github | |
42 | Mester | Python | 13 K | no | yes | yes | ||
43 | PyPIBug | Python | 2374 | no | yes | yes | Github | |
44 | SSB-9M | Python | 9 M | no | yes | no | Zenodo | |
45 | VUDENC | Python | 10 K | no | yes | yes | Zenodo | |
46 | Chhatbar | Python | 286 | yes | no | yes | Github | |
47 | SPoC | C++ | 1835 | yes | yes | yes | Others | |
48 | QuixBugs | Java Python | 40 | yes | yes | yes | Github | |
49 | DeepDebug | Java Python | 523 | no | yes | yes | ||
50 | MSR20 | C C++ | 188 K | no | yes | yes | Zenodo | |
51 | CoCoNut | C Java JS Python | 14 M | yes | yes | no | Github | |
52 | CodeFlaw | C Python | 3902 | yes | yes | yes | Others | |
53 | ENCORE | Java Python JS C++ | 9.2 M | no | yes | no |
Year | Venue | Paper | Data Format | Code |
---|---|---|---|---|
2020 | PLDI 2020 | Typilus: Neural Type Hints | Graph | |
2020 | ICLR 2020 | LAMBDANET: Probabilistic Type Inference Using Graph Neural Networks | Graph | |
2018 | ICLR 2018 | Learning to Represent Programs with Graphs | Graph | |
2023 | ASE 2023 | Generative Type Inference for Python | Text | |
2023 | ICLR 2023 | TypeT5: Seq2seq Type Inference using Static Analysis | Text | |
2022 | ICSE 2022 | Type4Py: Practical Deep Similarity Learning-Based Type Inference for Python | Text | |
2022 | ICSE 2022 | Static Inference Meets Deep Learning: A Hybrid Type Inference Approach for Python | Text | |
2022 | TSE 2022 | Learning To Predict User-Defined Types | Text | |
2021 | NeurIPS 2021 | Type Inference as Optimization | Text | |
2018 | ESEC/FSE 2018 | Deep Learning Type Inference | Text |
In order to unify the experimental results, we provide a standard Python type inference dataset ManyTypes4Py for you to use. For the preprocessing of graph and text data, we recommend that you refer to the Typilus and Type4Py code implementations respectively. The details of ManyTypes4Py dataset are shown as follows.
Name | Language | Argument Type | Return Type | Variable type | Links | Others |
---|---|---|---|---|---|---|
ManyTypes4Py | Python | 16.06% | 6.74% | 77.20% | Zenodo |
Year | Venue | Paper | Code |
---|---|---|---|
2024 | ASPLOS 2024 | BaCO: A Fast and Portable Bayesian Compiler Optimization Framework | |
2023 | Large Language Models for Compiler Optimization | ||
2023 | ICML 2023 | Learning Compiler Pass Orders using Coreset and Normalized Value Prediction | |
2023 | ICML2023 | Learning Compiler Pass Orders using Coreset and Normalized Value Prediction | code |
2023 | EuroGP 2023 | Genetic Improvement of LLVM Intermediate Representation | |
2022 | TACO 2022 | Iterative Compilation Optimization Based on Metric Learning and Collaborative Filtering | |
2022 | GECOO 2022 | Optimizing LLVM pass sequences with Shackleton: A linear genetic programming framework. | |
2022 | ISCA 2022 | Autophase V2: Towards Function Level Phase Ordering Optimization | |
2022 | CGO 2022 | Compilergym: Robust, performant compiler optimization environments for ai research | code |
2022 | GASES 2022 | Work-in-Progress: MLGOPerf: An ML Guided Inliner to Optimize Performance | |
2021 | ICML 2021 | ProGraML: A Graph-based Program Representation for Data Flow Analysis and Compiler Optimizations | |
2021 | MLGO: a Machine Learning Guided Compiler Optimizations Framework | code | |
2021 | ICSE 2021 | Efficient Compiler Autotuning via Bayesian Optimization | |
2021 | Customized Monte Carlo Tree Search for LLVM/Polly's Composable Loop Optimization Transformations | ||
2021 | PACT 2021 | A Reinforcement Learning Environment for Polyhedral Optimizations | |
2020 | LCTES 2020 | A Collaborative Filtering Approach for the Automatic Tuning of Compiler Optimisations | |
2020 | MLSys 2020 | Autophase: Juggling hls phase orderings in random forests with deep reinforcement learning | code |
2020 | CGO 2020 | Neurovectorizer: end-to-end vectorization with deep reinforcement learning |