Displaying 4 results from an estimated 4 matches for "expandintres_shift".
2009 Dec 01
2
[LLVMdev] Possible bug in ExpandShiftWithUnknownAmountBit
...de you pasted came from the function
ExpandShiftByConstant and indeed it looks correct. In my example I used 6
as the shift amount but forgot to mention that it's stored in a register.
Otherwise ExpandShiftWithUnknownAmountBit wouldn't get called. Below is the
execution of DAGTypeLegalizer::ExpandIntRes_Shift() using my example
showing how ExpandShiftWithUnknownAmountBit gets called. My email is about
the logic of this function.
if (ConstantSDNode *CN = dyn_cast<ConstantSDNode>(N->getOperand(1))) { <==
False
...
}
if (ExpandShiftWithKnownAmountBit(N, Lo, Hi)) { <== The call returns Fa...
2009 Dec 01
0
[LLVMdev] Possible bug in ExpandShiftWithUnknownAmountBit
Hi Javier,
> The problem is the implementation of the expansion. Perhaps an example
> can help illustrate better. Take the case of a 64-bit integer shifted
> left by say 6 bits and is decomposed using 32-bit registers. Because 6
> is less than the 32 (the register size) the resulting low part should be
> equal to the source low part shifted left by 6 bits. The current
>
2017 May 19
2
When a libcall will be generated?
Hi All,
I am looking at a linker error under O2:
undefined symbol __lshrdi3
I have two questions here:
1. Does that mean our libgcc (?) doesn't implement __lshrdi3? Or more
generally, why I have
such linker error?
2. Seems some operations are combined, and replaced with __lshrdi3 call.
I am interested in
when such libcall will be generated? Could you show me one
2009 Dec 01
2
[LLVMdev] Possible bug in ExpandShiftWithUnknownAmountBit
Hi Duncan,
The problem is the implementation of the expansion. Perhaps an example
can help illustrate better. Take the case of a 64-bit integer shifted
left by say 6 bits and is decomposed using 32-bit registers. Because 6
is less than the 32 (the register size) the resulting low part should be
equal to the source low part shifted left by 6 bits. The current
implementation places a zero