Pietro Fezzardi bcc9935023 Clifter: generate opaque types for arrays
When importing an llvm::ArrayType, emit a Clift StructType with the
OpaqueType rank in its handle and a single i8 array field of the
right byte size, instead of a real array type. This avoids
exposing C array types as rvalues in the generated code, which is
a foot-gun because array rvalues immediately decay to pointers,
and provides a single name (via the existing OpaqueType infra) for
arrays of equal byte size.
2026-05-08 11:37:10 +02:00
2024-11-21 15:54:23 +01:00
2026-05-08 11:37:10 +02:00
2026-04-10 11:45:12 +02:00
2026-05-08 11:37:10 +02:00
2026-05-08 11:37:10 +02:00
2026-05-04 10:49:03 +03:00
2025-09-10 12:05:15 +02:00
2024-02-26 16:02:52 +01:00
2024-02-26 16:02:52 +01:00
2026-04-10 11:45:13 +02:00
2024-11-21 15:54:23 +01:00

The rev.ng binary analysis framework and decompiler

Welcome to the rev.ng project!

rev.ng is an open source binary analysis framework based on LLVM and QEMU. It features a full-fledged decompiler. It's developed by rev.ng Labs in the open.

Getting started

Head to the online documentation to get started (source).

Getting in touch

You can get in touch with us through the following means:

  • X/Twitter, for the latest news about the project;
  • Discord, a place for chatting for users and developers;
  • Discourse, for user discussions;
  • GitHub, for development issues and PRs;
  • E-mail, for anything else;

License

The rev.ng binary analysis framework and decompiler is Free Software.

rev.ng depends on certain on GPLv2 components (in particular, QEMU), so the project is GPLv2-licensed as a whole. However, the individual files are licensed under the MIT license.

S
Description
Automated archival mirror of github.com/revng/revng
Readme GPL-2.0 24 MiB
Languages
C++ 77.1%
Python 12.6%
MLIR 4.4%
CMake 1.9%
LLVM 1.4%
Other 2.5%