Skip to content
This repository has been archived by the owner on Nov 18, 2021. It is now read-only.
/ reki Public archive

A project to study decompilation of AMD GCN kernels using LLVM to disassemble machine code and leveraging various metadata to translate assembly into a higher-level language. Abandoned at early stages due to my insufficient knowledge of the subject.

Notifications You must be signed in to change notification settings

gfxpg/reki

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reki

Reki (礫) is a study project to explore the low-level foundations of general-purpose GPU computing. It is a basic decompiler for AMD GCN kernels, using LLVM to disassemble machine code and leveraging various metadata to translate assembly into a higher-level language.

As this is very much a work in progress, the feature scope may change. At the moment, I have yet to decide on the output format: producing valid OpenCL code (with inline assembly for complex paths) would be nice, but I'm not sure how feasible it is given my limited knowledge and time constraints.

Development

A Docker image with the Rust toolchain and ROCm development tools is available on Docker Hub as timlathy/reki.

Run it with docker run -it --rm -v $(pwd):/src timlathy/reki, assuming the current working directory is the root of this repository.

About

A project to study decompilation of AMD GCN kernels using LLVM to disassemble machine code and leveraging various metadata to translate assembly into a higher-level language. Abandoned at early stages due to my insufficient knowledge of the subject.

Resources

Stars

Watchers

Forks