So I wouldn't replace *all* movq by movp, but only those that have to either
be
movq or movl. Those that are always movq stay movq.

Does this make sense?

Yes, this totally makes sense. Sorry for the late response as rebasing SIMD with
bleeding_edge took most of my time.

Firstly, I want to clarify that I have introduced movp in
https://codereview.chromium.org/64453002/. It will abstract the move pointer
instructions for X64 and X32. In the movp implementation, if the target is x64, we use "emit_rex_64", and if it is x32, we have to use "emit_optional_rex_32" (I
will have to do this in the x32 branch of V8 in my github repository).

Secondly, if I follow your sentences correctly, we might be able to introduce
AssemblerEmittingMode for X64 assembler instruction, for example,
     enum AssemblerEmittingMode {
         ARCHITECTURE_DEPENDENT,
         ALWAYS_64_BIT,
         ALWAYS_32_BIT
     }

and introduce move instruction with a default mode as ARCHITECTURE_DEPENDENT. It will address most of the movq usage in the X64 code. When we have to use 64-bit
or 32-bit, we use ALWAYS_64_BIT or ALWAYS_32_BIT. What do you think?

Could we have some chat or phone call on the future collaboration? I am
[email protected] at Gtalk.

https://codereview.chromium.org/64313002/

--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to