Displaying 8 results from an estimated 8 matches for "removefromworklist".
2011 Aug 26
2
[LLVMdev] Dead node removal in DAGCombiner
Is this piece of code in DAGCombiner::visitLOAD removing a dead node?
06155 if (N->use_empty()) {
06156 removeFromWorkList(N);
06157 DAG.DeleteNode(N);
06158 }
If it is, is there a reason it doesn't push its operands to the work
list as done in line 974-975?
00970 // If N has no uses, it is dead. Make sure to revisit all
N's operands once
00971 // N is deleted from the DAG, since th...
2010 Oct 02
1
[LLVMdev] Illegal optimization in LLVM 2.8 during SelectionDAG? (Re: comparison pattern trouble - might be a bug in LLVM 2.8?)
...dbgs()<< "\nWith: ";
>> Tmp.getNode()->dump(&DAG);
>> dbgs()<< '\n');
>> WorkListRemover DeadNodes(*this);
>> DAG.ReplaceAllUsesOfValueWith(N1, Tmp,&DeadNodes);
>> removeFromWorkList(TheXor);
>> DAG.DeleteNode(TheXor);
>> return DAG.getNode(ISD::BRCOND, N->getDebugLoc(),
>> MVT::Other, Chain, Tmp, N2);
>> }
>> }
>>
>> if (Op0.getOpcode() != ISD::SETCC&& Op1.getOp...
2011 Aug 26
0
[LLVMdev] Dead node removal in DAGCombiner
Hi Akira,
> Is this piece of code in DAGCombiner::visitLOAD removing a dead node?
>
> 06155 if (N->use_empty()) {
> 06156 removeFromWorkList(N);
> 06157 DAG.DeleteNode(N);
> 06158 }
yes.
> If it is, is there a reason it doesn't push its operands to the work
> list as done in line 974-975?
>
> 00970 // If N has no uses, it is dead. Make sure to revisit all
> N's operands once
> 009...
2010 Sep 30
4
[LLVMdev] Illegal optimization in LLVM 2.8 during SelectionDAG? (Re: comparison pattern trouble - might be a bug in LLVM 2.8?)
...TheXor->dump(&DAG);
dbgs() << "\nWith: ";
Tmp.getNode()->dump(&DAG);
dbgs() << '\n');
WorkListRemover DeadNodes(*this);
DAG.ReplaceAllUsesOfValueWith(N1, Tmp, &DeadNodes);
removeFromWorkList(TheXor);
DAG.DeleteNode(TheXor);
return DAG.getNode(ISD::BRCOND, N->getDebugLoc(),
MVT::Other, Chain, Tmp, N2);
}
}
if (Op0.getOpcode() != ISD::SETCC && Op1.getOpcode() != ISD::SETCC) {
bool Equal = false;
if (...
2010 Oct 01
0
[LLVMdev] Illegal optimization in LLVM 2.8 during SelectionDAG? (Re: comparison pattern trouble - might be a bug in LLVM 2.8?)
...&DAG);
> dbgs() << "\nWith: ";
> Tmp.getNode()->dump(&DAG);
> dbgs() << '\n');
> WorkListRemover DeadNodes(*this);
> DAG.ReplaceAllUsesOfValueWith(N1, Tmp, &DeadNodes);
> removeFromWorkList(TheXor);
> DAG.DeleteNode(TheXor);
> return DAG.getNode(ISD::BRCOND, N->getDebugLoc(),
> MVT::Other, Chain, Tmp, N2);
> }
> }
>
> if (Op0.getOpcode() != ISD::SETCC && Op1.getOpcode() != ISD::SETCC) {
>...
2010 Sep 29
0
[LLVMdev] comparison pattern trouble - might be a bug in LLVM 2.8?
On Sep 29, 2010, at 12:36 AM, Heikki Kultala wrote:
> On 29 Sep 2010, at 06:25, Heikki Kultala wrote:
>
>> Our architecture has 1-bit boolean predicate registers.
>>
>> I've defined comparison
>>
>> def NErrb : InstTCE<(outs I1Regs:$op3), (ins I32Regs:$op1,I32Regs:$op2), "", [(set I1Regs:$op3, (setne I32Regs:$op1, I32Regs:$op2))]>;
2010 Sep 29
1
[LLVMdev] comparison pattern trouble - might be a bug in LLVM 2.8?
On 29 Sep 2010, at 06:25, Heikki Kultala wrote:
> Our architecture has 1-bit boolean predicate registers.
>
> I've defined comparison
>
>
> def NErrb : InstTCE<(outs I1Regs:$op3), (ins I32Regs:$op1,I32Regs:$op2), "", [(set I1Regs:$op3, (setne I32Regs:$op1, I32Regs:$op2))]>;
>
>
>
>
> But then I end up having the following bug:
>
>
2011 Aug 27
3
[LLVMdev] OpenCL Backend
...;
> On Fri, Aug 26, 2011 at 9:52 AM, Duncan Sands <baldrick at free.fr> wrote:
> > Hi Akira,
> >
> >> Is this piece of code in DAGCombiner::visitLOAD removing a dead node?
> >>
> >> 06155 ? ? ? ? if (N->use_empty()) {
> >> 06156 ? ? ? ? ? removeFromWorkList(N);
> >> 06157 ? ? ? ? ? DAG.DeleteNode(N);
> >> 06158 ? ? ? ? }
> >
> > yes.
> >
> >> If it is, is there a reason it doesn't push its operands to the work
> >> list as done in line 974-975?
> >>
> >> 00970 ? ? // If N has...