On 05/25/2010 12:13 PM, Revital1 Eres wrote:
Hello, I am using current mainline to compile a testcase which contains a loop. The target I'm working on supports cmpsi pattern. While expanding the loop condition I get that do_compare_rtx_and_jump () and do_jump_by_parts_greater_rtx () call each other repeatedly. The test I'm compiling passes OK when using GCC 4.4. Looking into the difference between the two versions that might caused this problem; I see that in GCC4.4 can_compare_p () asks if the target supports cmp_optab. while GCC4.6 does not ask for this opcode and thus IIUC causes the later call to do_jump_by_parts_greater_rtx ().
Have you converted cmpsi to cbranchsi4? Paolo