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...