[PATCH v2] PR target/97682 - Fix to reuse t1 register between call address and epilogue.
Jim Wilson
jimw@sifive.com
Sat Nov 14 04:06:55 GMT 2020
On Thu, Nov 12, 2020 at 10:56 PM Monk Chiang <monk.chiang@sifive.com> wrote:
> - When expanding the call pattern, choose t1 register be a jump register.
> Epilogue also uses a t1 register to adjust Stack point. The call
> pattern
> and epilogue will initial t1 twice, if both are generated in the same
> function. The call pattern will emit 'la t1,symbol' and 'jalr
> t1'instructions.
> Epilogue also emits 'li t1,4096' and 'addi sp,sp,t1' instructions.
> But li and addi instructions will be placed between la and jalr
> instructions.
> The la instruction will be removed by some optimizations,
> because t1 register define twice, the first define instruction look
> likes duplicate.
>
Thanks. Committed and pushed.
Jim
More information about the Gcc-patches
mailing list