On 2014-12-16 9:53 AM, BELBACHIR Selim wrote:
Hi,
I may have found a bug when I was trying to port my private backend to new LRA
pass (using gcc 4.9.2+patches).
In lra-constraints.c, in function simple_move_p, the target hook
targetm.register_move_cost is called with two badly swapped parameters :
targetm.register_move_cost (GET_MODE (src), sclass, dclass)
should be :
targetm.register_move_cost (GET_MODE (src), dclass, sclass)
In my port of GCC it leads to an error when checking constrain_operands at the
end of LRA pass
Thanks for reporting this typo. I'll fix it soon. It did not affect
other ports as usually the cost is symmetric relative to the args
(especially when the cost is 2).