On 2023-10-28 10:35 Jeff Law wrote:
>
>
>
>On 10/27/23 14:31, Patrick O'Neill wrote:
>> Hi Fei,
>>
>> A recent change to GCC [1] updated the the registers in the cm.push and
>> cm.pop insns for these testcases:
>>
>> |FAIL: gcc.target/riscv/rv32i_zcmp.c -Os check-function-bodies test1
>> FAIL:
On 10/27/23 14:31, Patrick O'Neill wrote:
Hi Fei,
A recent change to GCC [1] updated the the registers in the cm.push and
cm.pop insns for these testcases:
|FAIL: gcc.target/riscv/rv32i_zcmp.c -Os check-function-bodies test1
FAIL: gcc.target/riscv/rv32i_zcmp.c -Os check-function-bodies
On 10/27/23 14:31, Patrick O'Neill wrote:
Hi Fei,
A recent change to GCC [1] updated the the registers in the cm.push and
cm.pop insns for these testcases:
|FAIL: gcc.target/riscv/rv32i_zcmp.c -Os check-function-bodies test1
FAIL: gcc.target/riscv/rv32i_zcmp.c -Os check-function-bodies
Zcmp can share the same logic as save-restore in stack allocation:
pre-allocation
by cm.push, step 1 and step 2.
Pre-allocation not only saves callee saved GPRs, but also saves callee saved
FPRs and
local variables if any.
Please be noted cm.push pushes ra, s0-s11 in reverse order than what
sa