Florian,

If your latest changes to this area already covers this, I'd be happy
to not submit this.

Cheers,
Kasper

On Fri, Dec 18, 2009 at 10:43 AM,  <[email protected]> wrote:
> Reviewers: fschneider,
>
> Description:
> Avoid using full array literal boilerplate cloning for non-nested
> literals that are too big to hit the fast case.
>
> Please review this at http://codereview.chromium.org/503055
>
> SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/
>
> Affected files:
>  M     bleeding_edge/src/ia32/codegen-ia32.cc
>
>
> Index: bleeding_edge/src/ia32/codegen-ia32.cc
> ===================================================================
> --- bleeding_edge/src/ia32/codegen-ia32.cc      (revision 3488)
> +++ bleeding_edge/src/ia32/codegen-ia32.cc      (working copy)
> @@ -4443,10 +4443,13 @@
>   // Clone the boilerplate object.
>   int length = node->values()->length();
>   Result clone;
> -  if (node->depth() == 1 &&
> -      length <= FastCloneShallowArrayStub::kMaximumLength) {
> -    FastCloneShallowArrayStub stub(length);
> -    clone = frame_->CallStub(&stub, 1);
> +  if (node->depth() == 1) {
> +    if (length <= FastCloneShallowArrayStub::kMaximumLength) {
> +      FastCloneShallowArrayStub stub(length);
> +      clone = frame_->CallStub(&stub, 1);
> +    } else {
> +      clone = frame_->CallRuntime(Runtime::kCloneShallowLiteralBoilerplate,
> 1);
> +    }
>   } else {
>     clone = frame_->CallRuntime(Runtime::kCloneLiteralBoilerplate, 1);
>   }
>
>
>

-- 
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to