search for: initlivethru

Displaying 3 results from an estimated 3 matches for "initlivethru".

2017 Sep 12
2
Register pressure calculation in the machine scheduler and live-through registers
...our combinatorial scheduler at the selection DAG level in the version that are currently using and then doing a direct comparison between selection DAG scheduling and machine scheduling in the same version of the code. As for live-through information, we found that the machine scheduler does call initLiveThru() and here is a pointer to the code: https://gitlab.com/CSUS_LLVM/LLVM_DRAGONEGG/blob/master/Generic/llvmTip/llvm-master/lib/CodeGen/MachineScheduler.cpp#L921 And here is a pointer to the function initLiveThru() https://gitlab.com/CSUS_LLVM/LLVM_DRAGONEGG/blob/master/Generic/llvmTip/llvm-maste...
2017 Aug 30
2
Register pressure calculation in the machine scheduler and live-through registers
...e function. The code in RegisterPressure.cpp is meant to work with LiveIntervals. Those queries only see within a block but are meant to be “seeded” with live-through information. That could be done be directly calling `addLiveRegs`. Alternately you can record live-through pressure separately via `initLiveThru`. It’s just that the MachineScheduler does not bother initializing the live-through information. As Matthias said, actually determining live-through information requires a separate global liveness analysis, because LiveIntervals doesn’t tell you “what’s live at this point”. -Andy -------------- n...
2017 Aug 30
2
Register pressure calculation in the machine scheduler and live-through registers
Hello, In a previous email, Matthias mentioned that register pressure estimates in the machine scheduler are not absolute; they only account for the registers that are used in the block.I assume that he meant that registers that are live-through (both live-in and live-out) are not accounted for in register pressure calculations. If a register is either live-in or live-out but not both, it must be