Displaying 7 results from an estimated 7 matches for "lowerfp_to_sint".
2018 Sep 07
2
Clang for the PlayStation 2
On Fri, 7 Sep 2018 at 16:59, Tim Northover <t.p.northover at gmail.com> wrote:
> $ clang -target mips64el-img-linux -mcpu=mips3 -S -o- -Os tmp.c
>
Actually, I just tried your flags; you're missing `-msingle-float`, which
is what reproduces the crash on my end. Without it there is no problem.
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
2018 Sep 07
3
Clang for the PlayStation 2
On Thu, 6 Sep 2018 at 20:01, Tim Northover <t.p.northover at gmail.com> wrote:
> I just did a very quick experiment where I made lowerFP_TO_SINT and
> lowerFP_TO_SINT_STORE return SDValue() (which is the marker for "I
> don't want to handle this").
I just tried this, but the compiler still crashes with the same error.
Maybe our experiments were different.
To make it production-quality you'd want to predicate the c...
2018 Sep 07
4
Clang for the PlayStation 2
On Fri, 7 Sep 2018 at 17:48, Tim Northover <t.p.northover at gmail.com> wrote:
> I looked at your diffs and you've only changed one of the functions to
> return SDValue(), you need to change lowerFP_TO_SINT itself too. The
> one with the store is just there as an optimization; if it doesn't
> trigger (because of your diff) then lowerFP_TO_SINT will still create
> a bad node afterwards.
>
Thank you!
With that, the four bugs I found in newlib's C code are dead. I think the
lrint fi...
2018 Sep 06
3
Clang for the PlayStation 2
On Thu, 6 Sep 2018, 16:31 Tim Northover, <t.p.northover at gmail.com> wrote:
> > The PS2, for what it's worth, only has an i32 -> f32 instruction, so I
> think there's an impedance mismatch somewhere.
>
> This is also a fairly common situation. If the operation can be
> emulated with a reasonably small number of native instructions you can
> often get LLVM to
2009 May 21
0
[LLVMdev] [PATCH] Add new phase to legalization to handle vector operations
On Wed, May 20, 2009 at 4:55 PM, Dan Gohman <gohman at apple.com> wrote:
> Can you explain why you chose the approach of using a new pass?
> I pictured removing LegalizeDAG's type legalization code would
> mostly consist of finding all the places that use TLI.getTypeAction
> and just deleting code for handling its Expand and Promote. Are you
> anticipating something more
2009 May 20
2
[LLVMdev] [PATCH] Add new phase to legalization to handle vector operations
On May 20, 2009, at 1:34 PM, Eli Friedman wrote:
> On Wed, May 20, 2009 at 1:19 PM, Eli Friedman
> <eli.friedman at gmail.com> wrote:
>
>> Per subject, this patch adding an additional pass to handle vector
>>
>> operations; the idea is that this allows removing the code from
>>
>> LegalizeDAG that handles illegal types, which should be a significant
2009 May 21
2
[LLVMdev] [PATCH] Add new phase to legalization to handle vector operations
...ot;Invalid FP_TO_SINT to lower!");
Chain = DAG.getStore(Chain, dl, Value, StackSlot,
PseudoSourceValue::getFixedStack(SSFI), 0);
SDVTList Tys = DAG.getVTList(Op.getOperand(0).getValueType(), MVT::Other);
@@ -4854,7 +4882,7 @@
}
SDValue X86TargetLowering::LowerFP_TO_SINT(SDValue Op, SelectionDAG &DAG) {
- std::pair<SDValue,SDValue> Vals = FP_TO_SINTHelper(Op, DAG);
+ std::pair<SDValue,SDValue> Vals = FP_TO_INTHelper(Op, DAG, true);
SDValue FIST = Vals.first, StackSlot = Vals.second;
if (FIST.getNode() == 0) return SDValue();
@@ -4863,6 +48...