Displaying 8 results from an estimated 8 matches for "found_branch".
Did you mean:
cond_branch
2007 Aug 10
2
[LLVMdev] MBB Critical edges
...ead
of the new. Could someone help me to fix this? If it works fine, I can
send a patch for this pass.
/// modify every branch in src that points to dst to point
/// to the new machine basic block "crit_mbb" instead:
MachineBasicBlock::iterator mii = src.end();
bool found_branch = false;
while (mii != src.begin()) {
mii--;
// if there are no more branches, finish the loop
if (!tii->isTerminatorInstr(mii->getOpcode())) {
break;
}
// Scan the operands of this branch, replacing any
// uses of dst wi...
2007 Aug 17
0
[LLVMdev] MBB Critical edges
...omeone help me to fix this? If it works fine, I can
> send a patch for this pass.
>
> /// modify every branch in src that points to dst to point
> /// to the new machine basic block "crit_mbb" instead:
> MachineBasicBlock::iterator mii = src.end();
> bool found_branch = false;
> while (mii != src.begin()) {
> mii--;
> // if there are no more branches, finish the loop
> if (!tii->isTerminatorInstr(mii->getOpcode())) {
> break;
> }
> // Scan the operands of this branch, replacing an...
2007 Aug 17
2
[LLVMdev] MBB Critical edges
...is? If it works fine, I can
>> send a patch for this pass.
>>
>> /// modify every branch in src that points to dst to point
>> /// to the new machine basic block "crit_mbb" instead:
>> MachineBasicBlock::iterator mii = src.end();
>> bool found_branch = false;
>> while (mii != src.begin()) {
>> mii--;
>> // if there are no more branches, finish the loop
>> if (!tii->isTerminatorInstr(mii->getOpcode())) {
>> break;
>> }
>> // Scan the operands...
2007 Aug 19
1
[LLVMdev] MBB Critical edges
...etMachine & tm = mf.getTarget();
const TargetInstrInfo * tii = tm.getInstrInfo();
tii->insertGoto(*crit_mbb, dst);
/// modify every branch in src that points to dst to point to the new
/// machine basic block instead:
MachineBasicBlock::iterator mii = src.end();
bool found_branch = false;
bool isJumpTable = false;
while (mii != src.begin()) {
mii--;
// if there are no more branches, finish the loop
if (!tii->isTerminatorInstr(mii->getOpcode())) {
break;
} else if (tii->isIndirectJump(mii->getOpcode())) {...
2008 Jan 27
0
[LLVMdev] BreakCriticalMachineEdge.h
Fernando,
The code there should be more or less functional, though it's not
currently used by anything. Eventually it should probably be moved to
a method on MachineBasicBlock.
The API breakage you're seeing is because some methods moved around.
Feel free to fix it. :-)
--Owen
On Jan 26, 2008, at 6:31 PM, Fernando Magno Quintao Pereira wrote:
>
> Hi LLVMers,
>
>
2008 Jan 27
2
[LLVMdev] BreakCriticalMachineEdge.h
Hi LLVMers,
what is the status of breaking critical edges in machine functions? I
just compiled the top of the LLVM tree, and I found
llvm/CodeGen/BreakCriticalMachineEdge.h. But this file seems not to be
up-to-date with the other classes in the top of the tree. For instance, it
calls isTerminatorInstr on llvm::TargetInstrInfo, but this method is no
longer there.
If I want to break
2008 Sep 30
2
[LLVMdev] Inserting MachineBasicBlock(s) before a MachineBasicBlock
I want to be able to do two things with LLVM (both just before code
emission):
1. Insert a MachineBasicBlock just before a MachineBasicBlock.
There is a function called AddPredecessor(). However, the comment says that
it does not update the actual CFG. I want to redirect all CFG edges that are
incoming to this MachineBasicBlock to the new one I create, and add just one
outgoing edge (no branch)
2007 Aug 18
0
[LLVMdev] MBB Critical edges
...can
>>> send a patch for this pass.
>>>
>>> /// modify every branch in src that points to dst to point
>>> /// to the new machine basic block "crit_mbb" instead:
>>> MachineBasicBlock::iterator mii = src.end();
>>> bool found_branch = false;
>>> while (mii != src.begin()) {
>>> mii--;
>>> // if there are no more branches, finish the loop
>>> if (!tii->isTerminatorInstr(mii->getOpcode())) {
>>> break;
>>> }
>>>...