On 28 May 2014 23:58, Andrew Pinski <andrew.pin...@caviumnetworks.com> wrote: > Hi, > The problem here is aarch64_rtx_costs for IF_THEN_ELSE does not > handle the case where the first operand is a non comparison. This > happens when the combine is combing a few RTLs and calling > set_src_cost to check the costs of the newly created rtl. > > At the same I noticed the code for rtx_costs was getting more complex > so I factored out the code for IF_THEN_ELSE > > OK? Built and tested on aarch64-elf with no regressions. > > Thanks, > Andrew Pinski > > ChangeLog: > * config/aarch64/aarch64.c (aarch64_if_then_else_costs): New function. > (aarch64_rtx_costs): Use aarch64_if_then_else_costs. > > testsuite/ChangeLog: > * gcc.c-torture/compile/20140528-1.c: New testcase.
Hi, Can you split this into two patches please, the first a straight refactor, no functional change, the second with the fix and testcase ? + enum rtx_code cmpcode; + if (COMPARISON_P (op0)) Blank line between declarations and statement please. + return false; + +} Drop the superflous blank line after the return please. Thanks /Marcus