search for: operand0

Displaying 5 results from an estimated 5 matches for "operand0".

Did you mean: operand
2004 Jul 08
4
[LLVMdev] PHI nodes in machine code
...nstructions are necessary in machine code? And why the code in LiveVariables.cpp which looks at those PHI nodes (line 249 and below) is necessary. The reason I'm asking is that I try to support 64-bit comparison and I do it by generating code like: // if high1 cond high2: goto operand0 // if high1 reverse_cond high2: goto operand1 // if low cond high2: goto operand0 // goto operand1 but this means that operand0 and operand1 (the successor basic blocks) suddenly get more predecessor than recorded in phi nodes, and LiveVariables.cpp asserts...
2018 Sep 10
3
How to avoid multiple registers definitions in customInserter.
...owering::emitLOpcodeHOpcode(MachineInstr &MI, MachineBasicBlock *MBB, unsigned LOpcode, unsigned HOpcode) const { const TargetInstrInfo *TII = Subtarget->getInstrInfo(); DebugLoc Loc = MI.getDebugLoc(); const MachineOperand operand0 = MI.getOperand(0); const MachineOperand operand1 = MI.getOperand(1); BuildMI(*MBB, MI, Loc, TII->get(LOpcode)) .add(operand0) .add(operand1); BuildMI(*MBB, MI, Loc, TII->get(HOpcode)) .add(operand0) .add(operand1); MI.eraseFro...
2004 Jul 08
0
[LLVMdev] PHI nodes in machine code
...fter register allocation. So you would write code like: if (a cond b) then r1 = 1 else r2 = 0 r = phi(r1, r2) > The reason I'm asking is that I try to support 64-bit comparison and I do it > by generating code like: > > // if high1 cond high2: goto operand0 > // if high1 reverse_cond high2: goto operand1 the second if should just be an unconditional branch to operand1: clearly, if (high1 cond high2) is false, the reverse condition is true. > // if low cond high2: goto operand0 > // goto operand1 These...
2004 Jul 08
0
[LLVMdev] PHI nodes in machine code
...code? And why the code in LiveVariables.cpp which looks at > those PHI > nodes (line 249 and below) is necessary. > > The reason I'm asking is that I try to support 64-bit comparison and I > do it > by generating code like: > > // if high1 cond high2: goto operand0 > // if high1 reverse_cond high2: goto operand1 > // if low cond high2: goto operand0 > // goto operand1 > > but this means that operand0 and operand1 (the successor basic blocks) > suddenly get more predecessor than recorded in phi nodes, an...
2004 Jul 09
2
[LLVMdev] PHI nodes in machine code
...> if (a cond b) then > r1 = 1 > else > r2 = 0 > > r = phi(r1, r2) Ok, I see. > > The reason I'm asking is that I try to support 64-bit comparison and I do > > it by generating code like: > > > > // if high1 cond high2: goto operand0 > > // if high1 reverse_cond high2: goto operand1 > > the second if should just be an unconditional branch to operand1: > clearly, if (high1 cond high2) is false, the reverse condition is true. Actually, you've found a bug: it should be swapped_cond, not reverse_con...