Displaying 4 results from an estimated 4 matches for "sethasnounsignedwrap".
Did you mean:
sethasnosignedwrap
2014 Jun 25
2
[LLVMdev] Question Regarding Sign-Overflow
...b/IR/Instructions.cpp&ct=xref_jump_to_def&cl=GROK&l=2025&gsn=hasNoSignedWrap>()); Res <https://cs.corp.google.com/#piper///depot/google3/third_party/llvm/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp&ct=xref_jump_to_def&cl=GROK&l=1471&gsn=Res>->setHasNoUnsignedWrap <https://cs.corp.google.com/#piper///depot/google3/third_party/llvm/llvm/lib/IR/Instructions.cpp&ct=xref_jump_to_def&cl=GROK&l=2009&gsn=setHasNoUnsignedWrap>(I <https://cs.corp.google.com/#piper///depot/google3/third_party/llvm/llvm/lib/Transforms/InstCombine/InstCombineAdd...
2015 Apr 06
2
[LLVMdev] inconsistent wording in the LangRef regarding "shl nsw"
...lt has the sign bit set) but "mul i8 1, i8 -128"
does not sign overflow (by the usual definition of sign-overflow), so
this violates (2).
InstCombine already has a check for this edge-case when folding
multiplies into left shifts:
...
if (I.hasNoUnsignedWrap())
Shl->setHasNoUnsignedWrap();
if (I.hasNoSignedWrap() && *** NewCst->isNotMinSignedValue() ***)
Shl->setHasNoSignedWrap();
...
(though the check is a bit weird -- NewCst is Log2(IVal) so I think it
cannot ever be INT_MIN, and I suspect that the check is supposed to be
"IVal->isNotMinS...
2011 Aug 11
0
[LLVMdev] RE : IR code modification/transformation
...t;
> So I want to read all parameters of the instruction, like the var name, the number, the type,...
Parameters (operands): Add->getOperand(n) (for n = 0, 1, ... ,
Add->getNumOperands()).
A few other "parameters" like nuw/nsw/exact can be accessed as
Add->hasNoUnsignedWrap()/setHasNoUnsignedWrap() and friends.
Var name: Add->getName() / Add->setName().
Can efficiently be transfered to the new instruction with Sub->takeName(Add).
The number is automatically assigned if it doesn't have a name. I'm
not sure if there's an easy way to determine it other than printing it
to...
2011 Aug 11
5
[LLVMdev] IR code modification/transformation
Hi,
I have a question about the llvm passes.
I'm iterating over a basicblock and I can get an instruction and print it.
Now, I want to iterate over the instruction and be able to modify the values of the instruction.
For example, if my instruction is an add "<result> = add i32 4, %var" I want to transform it in a sub "<result> = sub i32 4, %var".
I looked up