On 2013/11/20 13:14:08, Sven Panne wrote:
Is this CL still necessary? What test cases are crashing? If there are none,
please add some.

With current implementation of {Prepare}CallCFunction the change doesn't change
the behavior as on the affected platforms first N arguments are passed in
registers, e.g. on x64 first 4 parameters will be passed in registers and it
doesn't make any difference whether you pass 0,1,2, or 3 as long as the number of actual params is less than 4. The only platform where passing 1 and 2 makes a difference is ia32 where all arguments are passed on the stack. I stumbled upon
this problem while reading the code and trying to understand why we pass 2
parameters in registers but tell PrepareCallCFunction that it should expect only 1. This is confusing. As I said it works fine with the existing implementation but should PrepareCallCFunction change the treatment of num_reg_arguments the inconsistency this patch is addressing may result in some hard to catch bugs.
Since the patch doesn't affect generated code I don't see what test I could
provide.

https://codereview.chromium.org/74753006/

--
--
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