------- Additional Comments From rguenth at tat dot physik dot uni-tuebingen 
dot de  2005-01-18 16:39 -------
A C testcase with the missing jump threading(?):

void bar(void);

void foo(const _Bool *flag)
{
        if (*flag)
                bar();
        if (*flag)
                bar();
}


a testcase where we able to thread the jump:

extern long int random(void);

void foo(void)
{
        long int i = random();
        if (i)
                i = random();
        if (i)
                i = random();
}


the difference seems to be we use .GLOBAL_VAR_10 = V_MAY_DEF <.GLOBAL_VAR_9>;
in the latter while we use TMT.0_9 = V_MAY_DEF <TMT.0_7>; in the former.
Though, of course, I don't know what either means.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19507

Reply via email to