Displaying 5 results from an estimated 5 matches for "userinst".
Did you mean:
useinst
2020 Jun 09
2
LoopStrengthReduction generates false code
...10, 0) IV={0,+,1}<nuw><nsw><%while.body>
IV Chain#1 Inc: ( %i.010 = phi i32 [ 0, %entry ], [ %inc, %while.body ]) IV+1
Chain: %cmp11 = icmp eq i32 %i.010, 0 Cost: 0
LSR has identified the following interesting factors and types: *8
LSR is examining the following fixup sites:
UserInst=%cmp11, OperandValToReplace=%i.010
UserInst=%0, OperandValToReplace=%arrayidx
LSR found 2 uses:
LSR is examining the following uses:
LSR Use: Kind=ICmpZero, Offsets={0}, widest fixup type: i32
reg({0,+,-1}<nw><%while.body>)
LSR Use: Kind=Address of i32 in addrspace(0), Offsets...
2020 Jun 09
2
LoopStrengthReduction generates false code
...while.body>
>> IV Chain#1 Inc: ( %i.010 = phi i32 [ 0, %entry ], [ %inc, %while.body ]) IV+1
>> Chain: %cmp11 = icmp eq i32 %i.010, 0 Cost: 0
>> LSR has identified the following interesting factors and types: *8
>> LSR is examining the following fixup sites:
>> UserInst=%cmp11, OperandValToReplace=%i.010
>> UserInst=%0, OperandValToReplace=%arrayidx
>> LSR found 2 uses:
>> LSR is examining the following uses:
>> LSR Use: Kind=ICmpZero, Offsets={0}, widest fixup type: i32
>> reg({0,+,-1}<nw><%while.body>)
>> LSR...
2020 Jun 10
2
LoopStrengthReduction generates false code
...n#1 Inc: ( %i.010 = phi i32 [ 0, %entry ], [ %inc, %while.body ]) IV+1
>>>> Chain: %cmp11 = icmp eq i32 %i.010, 0 Cost: 0
>>>> LSR has identified the following interesting factors and types: *8
>>>> LSR is examining the following fixup sites:
>>>> UserInst=%cmp11, OperandValToReplace=%i.010
>>>> UserInst=%0, OperandValToReplace=%arrayidx
>>>> LSR found 2 uses:
>>>> LSR is examining the following uses:
>>>> LSR Use: Kind=ICmpZero, Offsets={0}, widest fixup type: i32
>>>> reg({0,+,-1}<nw&...
2013 Oct 31
2
[LLVMdev] The order of GVN and IndVarSimplify
...than just N or i, so we can consider the register
// requirements for both N and i at the same time. Limiting this code to
// equality icmps is not a problem because all interesting loops use
// equality icmps, thanks to IndVarSimplify.
if (ICmpInst *CI = dyn_cast<ICmpInst>(LF.UserInst))
if (CI->isEquality()) {
and this is happening for the first loop but not the second. The reason
is that the second loop still has two loads of *l by the time IndVarSimplify
is run; one for the precondition of the rotated loop and one for the loop
exit. This means that IndVarSimplify c...
2013 Nov 05
0
[LLVMdev] The order of GVN and IndVarSimplify
..., so we can consider the register
> // requirements for both N and i at the same time. Limiting this code to
> // equality icmps is not a problem because all interesting loops use
> // equality icmps, thanks to IndVarSimplify.
> if (ICmpInst *CI = dyn_cast<ICmpInst>(LF.UserInst))
> if (CI->isEquality()) {
>
> and this is happening for the first loop but not the second. The reason
> is that the second loop still has two loads of *l by the time IndVarSimplify
> is run; one for the precondition of the rotated loop and one for the loop
> exit. Thi...