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.