On 07/12/2015 12:35 PM, Uros Bizjak wrote:
Another missing case of CALL_INSN_FUNCTION_USAGE, where clobbered registers are also marked, this time in postreload/ reload_cse_move2add.Fixed compiler now generates following code call sysv_abi_func movl $global, %esi movl $.LC2, %edi call sysv_abi_func movl $global, %esi movl $.LC3, %edi call sysv_abi_func which correctly reloads %esi for every sysv_abi function call. 2015-07-12 Uros Bizjak <[email protected]> PR rtl-optimization/66838 * postreload.c (reload_cse_move2add): Also process CALL_INSN_FUNCTION_USAGE when resetting information of call-clobbered registers. testsuite/ChangeLog: 2015-07-12 Uros Bizjak <[email protected]> PR rtl-optimization/66838 * gcc.target/i386/pr66838.c: New test. Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}. OK for mainline and gcc-5 branch?
OK for the trunk. jeff
