HomePhabricator

[ScheduleDAGRRList] Do not preschedule the node has ADJCALLSTACKDOWN parent

Description

[ScheduleDAGRRList] Do not preschedule the node has ADJCALLSTACKDOWN parent

We should not pre-scheduled the node has ADJCALLSTACKDOWN parent,
or else, when bottom-up scheduling, ADJCALLSTACKDOWN and
ADJCALLSTACKUP may hold CallResource too long and make other
calls can't be scheduled. If there's no other available node
to schedule, the scheduler will try to rename the register by
creating copy to avoid the conflict which will fail because
CallResource is not a real physical register.

Details

Committed
shivaJan 18 2019, 12:36 AM
Parents
rL351526: [AVR] Rewrite the CBRRdK instruction as an alias of ANDIRdK
Branches
Unknown
Tags
Unknown