frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Recovering control flow structures without CFGs

https://purplesyringa.moe/blog/recovering-control-flow-structures-without-cfgs/
5•todsacerdoti•8mo ago

Comments

purplesyringa•8mo ago
OP here. The post is about a method I derived as a part of my work on a Java decompiler. I also have related questions for people in programming language theory. ("Ask HN" doesn't seem to fit submissions with URLs, so I'm posting it here.)

It's frustrating how few online resources cover efficient (de)compiler designs. There's many people doing cheap, but low-quality decompilation (e.g. here's someone's post on writing a .NET decompiler: https://news.ycombinator.com/item?id=9952145), and there's even more people writing stupid non-optimizing compilers. There's also quite a few folks improving LLVM or Ghidra, or writing new, but heavy theorem prover-based decompilers (e.g. DREAM: https://net.cs.uni-bonn.de/fileadmin/ag/martini/Staff/yakdan...). But there's frustratingly little information on the middle ground.

Also, and I think this ties to the previous point, there's next to zero entry-level resources on hard topics. It's like there's an invisible wall: tons of people learn tokenization, parsing, codegen, and then they stop because their compiler already "works". Resources that do focus on optimization are haphazard, either exclusively describing peephole optimizations, or explaining how higher-level optimizations can work in theory without any mention of how to implement them efficiently and fit them together in a LLVM-like backend framework.

There's literally no specific info on pass ordering and pass design, as if it's something intuitive. But the more I'm working on the decompiler, the more I realize that I have to cram basically everything into a single pass if I want to avoid the dreaded `do { .. } while (changed);` loop and arbitrary heuristics. But not all passes can be merged, obviously, so I have to re-architecture everything all the time.

Regarding the method in the post, I could easily be reinventing a wheel and not knowing it.

So I'm very interested in hearing if this method is used anywhere else, whether CFGs can be efficiently applied to decompilers without encountering the problems described described in my post, some advice on pass design and ordering, and maybe information about specific algorithms compilers and decompilers use (I know about dominators, obviously, but I've never heard about anything else; I can't imagine there aren't any).

I also learn best by doing and following experiences, rather than copying the finished product, so if anyone knows a blog series on a person developing a full optimizing compiler from scratch or something similar, that would be very useful.

Show HN: SafeClaw – a way to manage multiple Claude Code instances in containers

https://github.com/ykdojo/safeclaw
1•ykdojo•3m ago•0 comments

The Future of the Global Open-Source AI Ecosystem: From DeepSeek to AI+

https://huggingface.co/blog/huggingface/one-year-since-the-deepseek-moment-blog-3
1•gmays•3m ago•0 comments

The Evolution of the Interface

https://www.asktog.com/columns/038MacUITrends.html
1•dhruv3006•5m ago•0 comments

Azure: Virtual network routing appliance overview

https://learn.microsoft.com/en-us/azure/virtual-network/virtual-network-routing-appliance-overview
1•mariuz•5m ago•0 comments

Seedance2 – multi-shot AI video generation

https://www.genstory.app/story-template/seedance2-ai-story-generator
1•RyanMu•8m ago•1 comments

Πfs – The Data-Free Filesystem

https://github.com/philipl/pifs
1•ravenical•12m ago•0 comments

Go-busybox: A sandboxable port of busybox for AI agents

https://github.com/rcarmo/go-busybox
2•rcarmo•12m ago•0 comments

Quantization-Aware Distillation for NVFP4 Inference Accuracy Recovery [pdf]

https://research.nvidia.com/labs/nemotron/files/NVFP4-QAD-Report.pdf
1•gmays•13m ago•0 comments

xAI Merger Poses Bigger Threat to OpenAI, Anthropic

https://www.bloomberg.com/news/newsletters/2026-02-03/musk-s-xai-merger-poses-bigger-threat-to-op...
1•andsoitis•13m ago•0 comments

Atlas Airborne (Boston Dynamics and RAI Institute) [video]

https://www.youtube.com/watch?v=UNorxwlZlFk
1•lysace•14m ago•0 comments

Zen Tools

http://postmake.io/zen-list
1•Malfunction92•17m ago•0 comments

Is the Detachment in the Room? – Agents, Cruelty, and Empathy

https://hailey.at/posts/3mear2n7v3k2r
1•carnevalem•17m ago•0 comments

The purpose of Continuous Integration is to fail

https://blog.nix-ci.com/post/2026-02-05_the-purpose-of-ci-is-to-fail
1•zdw•19m ago•0 comments

Apfelstrudel: Live coding music environment with AI agent chat

https://github.com/rcarmo/apfelstrudel
1•rcarmo•20m ago•0 comments

What Is Stoicism?

https://stoacentral.com/guides/what-is-stoicism
3•0xmattf•21m ago•0 comments

What happens when a neighborhood is built around a farm

https://grist.org/cities/what-happens-when-a-neighborhood-is-built-around-a-farm/
1•Brajeshwar•21m ago•0 comments

Every major galaxy is speeding away from the Milky Way, except one

https://www.livescience.com/space/cosmology/every-major-galaxy-is-speeding-away-from-the-milky-wa...
2•Brajeshwar•21m ago•0 comments

Extreme Inequality Presages the Revolt Against It

https://www.noemamag.com/extreme-inequality-presages-the-revolt-against-it/
2•Brajeshwar•21m ago•0 comments

There's no such thing as "tech" (Ten years later)

1•dtjb•22m ago•0 comments

What Really Killed Flash Player: A Six-Year Campaign of Deliberate Platform Work

https://medium.com/@aglaforge/what-really-killed-flash-player-a-six-year-campaign-of-deliberate-p...
1•jbegley•23m ago•0 comments

Ask HN: Anyone orchestrating multiple AI coding agents in parallel?

1•buildingwdavid•24m ago•0 comments

Show HN: Knowledge-Bank

https://github.com/gabrywu-public/knowledge-bank
1•gabrywu•29m ago•0 comments

Show HN: The Codeverse Hub Linux

https://github.com/TheCodeVerseHub/CodeVerseLinuxDistro
3•sinisterMage•31m ago•2 comments

Take a trip to Japan's Dododo Land, the most irritating place on Earth

https://soranews24.com/2026/02/07/take-a-trip-to-japans-dododo-land-the-most-irritating-place-on-...
2•zdw•31m ago•0 comments

British drivers over 70 to face eye tests every three years

https://www.bbc.com/news/articles/c205nxy0p31o
43•bookofjoe•31m ago•15 comments

BookTalk: A Reading Companion That Captures Your Voice

https://github.com/bramses/BookTalk
1•_bramses•32m ago•0 comments

Is AI "good" yet? – tracking HN's sentiment on AI coding

https://www.is-ai-good-yet.com/#home
3•ilyaizen•33m ago•1 comments

Show HN: Amdb – Tree-sitter based memory for AI agents (Rust)

https://github.com/BETAER-08/amdb
1•try_betaer•33m ago•0 comments

OpenClaw Partners with VirusTotal for Skill Security

https://openclaw.ai/blog/virustotal-partnership
2•anhxuan•34m ago•0 comments

Show HN: Seedance 2.0 Release

https://seedancy2.com/
2•funnycoding•34m ago•0 comments