118 Followers
1 Following
163 Posts
Building the next generation decompiler.
Binary analysis is a dish best served static.
Websitehttps://rev.ng
Twitterhttps://twitter.com/_revng

😎 We now push artificial variable declarations close to their use! 😎

Also, inline initialization.

@condret Sometimes operator precedence is counterintuitive, luckily we can just try to match the average user expectations and add some parentheses to make things more intuitive.

@condret these are not self-xor!
The expression parses as `stack.at_16 ^ (stack.at_16 + b) ^ b`.

The C code is generated from clift, our MLIR dialect.
However, a self-xor would be removed earlier in the pipeline, in LLVM IR, by `InstCombine`.

Anyway, operator precedence in C is often confusing. We used to have rules to be less aggressive in removing parentheses and will re-introduce it in the new backend.

Thanks for pointing this out!

🛳️ The new C decompiler backend is almost ready to ship! 🛳️

Merged today: use alias analysis to reduce local variables.

More critical improvements to come!

⚠️ We just merged the cast elision branch!

Now we no longer print all the 👻 casts, i.e., those that, according to the C standard, are implicit.

Big win for readability without resorting to "hide all casts" as some other tools do 😉

Design document (REP60): https://pad.rev.ng/s/jbM3NmEVq

Presentation: https://pad.rev.ng/p/wSccC86ts#/
Also available on YouTube: https://youtu.be/jrZ56K3Sl_k
QEMU Starter Guide Pt. 2 - HedgeDoc

# QEMU Starter Guide Pt. 2 --- ## Quick Example --- ## Outline * Recap: User-mode, helpers, and

🎥 New video about QEMU!

This time, Anton walks through the basics of QEMU system mode using a simple bare metal program! ⚙️

The focus is on understanding how QEMU’s high-level control flow works, from guest code to BIOS, and down to device implementation.

REP13 - Nested Cyclical Region Identification - HedgeDoc

# REP13 - Nested Cyclical Region Identification ###### tags: `revng-hour`, `region-identification`,

🎥 How rev.ng finds loops: Nested Cyclical Region Identification

Andrea will show us how we identify nested cyclical regions on the CFG in the new decompiler backend.