I am trying to improve code generation for coremark to match a recent
improvement that was made in LLVM.
I added the following transformation to match.pd which attempts to
replace a branch with straight line code:
/* (cond (and (x , 0x1) == 0), y, (z ^ y) ) -> (-(and (x , 0x1)) & z ) ^
y */
S4 A32])
I understand that the argument to 'VALUE" is a cselib_val_struct but I
don't know how to map this back to a insn that is causing the problem.
Any thoughts on how I might debug thus further?
Regards,
Michael Collison
michael.colli...@linaro.org