search for: suboperator

Displaying 4 results from an estimated 4 matches for "suboperator".

2013 Oct 01
3
[LLVMdev] ScalarEvolution::createNodeForPHI
...Flags = setFlags(Flags, SCEV::FlagNW); } //-------------------------------------------------------------------------// Is there any reason to not check also Sub operator in a similar way to the Add operator? //-------------------------------------------------------------------------// if (const SubOperator *OBO = dyn_cast<SubOperator>(BEValueV)) { if (OBO->hasNoUnsignedWrap()) Flags = setFlags(Flags, SCEV::FlagNUW); if (OBO->hasNoSignedWrap()) Flags = setFlags(Flags, SCEV::FlagNSW); } //-------------------------------------------------------------------------// Thanks in adva...
2013 Oct 02
0
[LLVMdev] ScalarEvolution::createNodeForPHI
...> } > //-------------------------------------------------------------------------// > > Is there any reason to not check also Sub operator in a similar way to the Add > operator? > > //-------------------------------------------------------------------------// > if (const SubOperator *OBO = dyn_cast<SubOperator>(BEValueV)) { > if (OBO->hasNoUnsignedWrap()) > Flags = setFlags(Flags, SCEV::FlagNUW); > if (OBO->hasNoSignedWrap()) > Flags = setFlags(Flags, SCEV::FlagNSW); > } > //-----------------------------------------------------------------...
2013 Oct 02
1
[LLVMdev] ScalarEvolution::createNodeForPHI
...------------------------------------------------// > > > > Is there any reason to not check also Sub operator in a similar way > > to the Add > > operator? > > > > //-------------------------------------------------------------------------// > > if (const SubOperator *OBO = dyn_cast<SubOperator>(BEValueV)) { > > if (OBO->hasNoUnsignedWrap()) > > Flags = setFlags(Flags, SCEV::FlagNUW); > > if (OBO->hasNoSignedWrap()) > > Flags = setFlags(Flags, SCEV::FlagNSW); > > } > > //-----------------------------------...
2015 Jan 15
4
[LLVMdev] confusion w.r.t. scalar evolution and nuw
I've been doing some digging in this area (scev, wrapping arithmetic), learning as much as I can, and have reached a point where I'm fairly confused about the semantics of nuw in scalar evolution expressions. Consider the following program: define void @foo(i32 %begin) { entry: br label %loop loop: %idx = phi i32 [ %begin, %entry ], [ %idx.dec, %loop ] %idx.dec = sub nuw i32