On Fri, Dec 13, 2013 at 06:24:21AM -0800, Nicolas B. Pierron wrote:
> On 12/13/2013 05:58 AM, Feng, Haitao wrote:
> >Yes, I am asking about the spill size for Float32, as they might be in a
> >snapshot, I asked about the reading and writing such a stack slot as
> >well. It should be 4-byte and the current implement used 8-byte.
> 
> What is 4-byte and is currently 8-byte?  The stack slot for the
> float, on x64?  Is it also the case on x86?  For x64, I think the
> reason is just because we handle stack slots of 64bits no less.
It seems that it is 8-bytes on both x64 and x86 from the source codes:

542           case MIRType_Double:
543           case MIRType_Float32:
544             return LDefinition::DOUBLE;
at http://mxr.mozilla.org/mozilla-central/source/js/src/jit/LIR.h#542

By the way, Dan is introducint LDefinition::FLOAT32 at the
https://bugzilla.mozilla.org/show_bug.cgi?id=949668. My posted question
is solved once his patches are committed.

> 
> The problem might be in the stack allocator, if it does not
> interpret floating point values.
> 
> >Could you talk a little bit more on the trouble with Float32x4 and where
> >we eagerly spill Value-size content in the code?
> 
> In the bailout code, we are spilling to construct a machine state,
> and in the spills around out-of-line VM calls.
Thanks for giving me the code location of this in IRC. I will submit a
bug and use movups to store/load the full XMM register for x64 and x86
so that it works for Float32x4 registers in the future.

> 
> >Dan wrote a patch to
> >allocate and spill Float32x4
> >(https://bugzilla.mozilla.org/show_bug.cgi?id=947711), could you give
> >review comments there?
> 
> This is fine as long as they remain on the stack, but if they are in
> registers then this would be incomplete as we will read 128 bits out
> of 64 bits spills.  Can you ask me for feedback on these patches?
> 
> -- 
> Nicolas B. Pierron
> _______________________________________________
> dev-tech-js-engine-internals mailing list
> [email protected]
> https://lists.mozilla.org/listinfo/dev-tech-js-engine-internals
_______________________________________________
dev-tech-js-engine-internals mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-js-engine-internals

Reply via email to