On Sat, Oct 18, 2014 at 7:56 PM, Erik Arvidsson <[email protected]> wrote:
> I don't think an access check is needed. The function and prototype are > both new objects created by the class definition evaluation. > I see, you are right. This code is scary though. I would like this invariant (that the function and prototype are new, just created objects to be very prominent in the code. Here is an idea: - Split Runtime_Define class into Runtime_CreateClassPrototype and Runtime_DefineClassConstructor. - Pass class prototype into both Runtime_DefineConstructor and into EmitClassDefineProperties (the latter will assume class prototype and constructor are both on the stack. In fact, you probably do not need a constructor there at all). WDYT? On Oct 18, 2014 5:05 AM, <[email protected]> wrote: > >> >> https://codereview.chromium.org/639123009/diff/1/src/ia32/ >> full-codegen-ia32.cc >> File src/ia32/full-codegen-ia32.cc (right): >> >> https://codereview.chromium.org/639123009/diff/1/src/ia32/ >> full-codegen-ia32.cc#newcode2446 >> src/ia32/full-codegen-ia32.cc:2446: __ >> CallRuntime(Runtime::kSetProperty, 4); >> On 2014/10/18 08:30:33, Dmitry Lomov (chromium) wrote: >> >>> You should use StoreIC here (see EmitKeyedPropertyAssignment for how >>> >> it is done) >> >> s/Keyed/Named/ of course. >> Maybe given how much runtime calling is going on here anyway, maybe it's >> not worth it yet to install ICs here >> >> https://codereview.chromium.org/639123009/ >> > -- -- 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/d/optout.
