News for hackers. Stuff that matters.

MatzeBraun

LLVM can bisect down to individual transformation steps within a pass (for passes that implement the interface): https://llvm.org/docs/OptBisect.html

And there is a script bisecting functions when given assembly produced by working baseline and “bad” compiler to compare: https://github.com/llvm/llvm-project/blob/main/llvm/utils/ab...

Re:Make your own build system on Thursday March 08, 2018 @12:15AM (#16542448)
Nice to see a minimal version of a system.

In my experience the biggest (or most annoying?) problem though is not setting up the dependencies and executing the steps along the DAG but doing the configuration part of a build: What libraries are installed on the system, giving the user ways to opt in/out of build-time features, figuring out how to build shared libraries on the target OS, how to crosscompile, there’s tons of of these that may need solving depending on your project.

ninja does a fantastic job about handling the core and leaving all the other annoying things for someone else to solve (like cmake with the ninja backend :)

Re:Ask HN: Alternatives to Team Viewer? on Wednesday June 01, 2016 @12:09PM (#11815569)
Re:Jump Threading on Thursday October 29, 2015 @01:44AM (#10469486)
I am not convinced it's that simple if 1 application of jump threading creates a new opportunity. The endlessly unreliable loop example in the post suggests that is is a halting problem to find out whether we should stop jump threading because we are unrolling an endless loop or not.
Re:CC500: a tiny self-hosting C compiler on Saturday November 08, 2014 @11:31AM (#8577314)