draperlaboratory / VIBES

Verified, Incremental, Binary Editing with Synthesis
MIT License
51 stars 1 forks source link

Refactored cegis loop to no longer compile from core_theory every time #64

Closed philzook58 closed 3 years ago

philzook58 commented 3 years ago

There was a bug that fresh name generation during the core_theory -> IR stage which was run on every cegis loop pass would meant that the previous register allocation values associated with anonymous temporaries would no longer make sense to look up. This pull request fixes that by adding the raw_ir resulting from translation from core0theory to vibes ir being placed in the "seed information" and retained every cegis loop. This means this core_theory->ir pass is run once at boot time of vibes and never again, hence names remain stable in the cegis loop.

jtpaasch commented 3 years ago

I made a few mods while I was in there trying to get it to work on my machine. Instead of trying to type up what those changes are, I just pushed it. @philzook58 the PR for that is #67 -- have a look there and see if it's what you're after.

ccasin commented 3 years ago

obe