gcc-python-plugin
gcc-python-plugin copied to clipboard
Is it possible that GimpleCond's true_label & false_label are None?
I am scanning through GIMPLE instructions generated from this C code:
void if_simple() {
int c = cond();
if (c) {
f1();
}
}
The generated GIMPLE is like this:
if_simple ()
{
int c;
<bb 2> [100.00%]:
c_4 = cond ();
if (c_4 != 0)
goto <bb 3>; [36.64%]
else
goto <bb 4>; [63.36%]
<bb 3> [36.64%]:
f1 ();
<bb 4> [100.00%]:
return;
}
However, in Python, I'm getting gcc.GimpleCond which has true_label & false_label set to None.
Is there anything I'm missing or is it a bug?
Thanks
Internally, these are coming from gimple_cond_true_label and gimple_cond_false_label, which presumably are returning NULL, and this is being handled at the Python level as None.
I'm not sure how they could be NULL. When is your code running, compared to the various passes?
My callback function is registered before optimized pass.