Graphical error message showing the control flow graph

The lancet module is adapted so that all dependencies on the anopt module are removed. This was needed tom implement new functionality, ie. a GFATALBBL macro. If you link the lancet library to your own command line-based diablo frontend, you can call GFATALBBL with an error message and a basic block as argument. This will show your error message on the screen when the GFATAL is hit, and on top of that it will draw the control flow graph containing the basic block with that block centered in the window. You can then browse through the graphs as is done in existing Lancet frontends and when you close the window that shows the first cfg, your diablo frontend terminates.

This functionality will ease debugging newly created analysis and optimizations. You can call it when you encounter a previously unseen pattern in an analysis, ... This functionality will be available in the 0.4.3 release

In the code where you want to use this macro add:


...
#include "lancet_dialogs.h"
...

and then, when you want to pop up a graph and error message use:

GFATALBBL((my_trouble_bbl,"What is happening here! This block (@B) contains strange things",my_trouble_bbl));