Hello everyone,

I am involved in gcc port in which i found the following problem.

Before register renaming pass, callee registers was being used in the
body of the code. Hence function prologue saved the register and
epilogue restored the register. But register renaming pass removed
this particular callee saved register.The output and code generation
is proper, but there is an unnecessary save and restore of a callee
saved register in the prologue and epilogue even though the reference
of the callee saved register has been removed by the renaming pass.
I am using the prologue/epilogue patterns instead of the target macros.

So is the rename pass allowed to rename a callee saved register? Where
might this going wrong?

Thanks for you help.

Regards,
Shafi

Reply via email to