How to set a "SchedBoundary" in pre-RA scheduler

Hi,
It can use the function of “isSchedBoundary” to set a SchedBoundary in misched or post-ra sched. But the function will not use in pre-RA scheduler, is there some interfaces that I can set a SchedBoundary in pre-RA scheduler? Thanks in advance.

Best Regards,
Yaorong

Hi,
It can use the function of “isSchedBoundary” to set a SchedBoundary in misched or post-ra sched. But the function will not use in pre-RA scheduler, is there some interfaces that I can set a SchedBoundary in pre-RA scheduler? Thanks in advance.

The pre-RA scheduler doesn’t get to decide the scheduling region. The SelectionDAGBuilder does this. There are tablegen properties like hasCtrlDep that might help you. I probably should not suggest this, but as a terrible hack you could just split the basic block before the SelectionDAG is built (addPreISel).

-Andy