Hi, all, It is reported that the nds32 port on trunk cannot perform sibling call optimization because there are missing "sibcall" and "sibcall_value" named patterns. So we define those named patterns to fix the issue.
This patch was committed last week before stage 4: https://gcc.gnu.org/r219712 gcc/ChangeLog 2015-01-16 Chung-Ju Wu <jasonw...@gmail.com> * config/nds32/nds32-protos.h (nds32_expand_epilogue): Change prototype. (nds32_expand_epilogue_v3pop): Likewise. * config/nds32/nds32.md (sibcall): Define this for sibling call optimization. (sibcall_register): Likewise. (sibcall_immediate): Likewise. (sibcall_value): Likewise. (sibcall_value_register): Likewise. (sibcall_value_immediate): Likewise. (sibcall_epilogue): Likewise. (epilogue): Pass false to indicate this is not a sibcall epilogue. * config/nds32/nds32.c (nds32_expand_epilogue): Consider sibcall case. (nds32_expand_epilogue_v3pop): Likewise. Best regards, jasonwucj
0009-Implement-necessary-named-patterns-to-support-siblin.patch
Description: Binary data