my part LGTM
http://codereview.chromium.org/1989012/diff/9001/10006 File src/ia32/full-codegen-ia32.cc (right): http://codereview.chromium.org/1989012/diff/9001/10006#newcode2568 src/ia32/full-codegen-ia32.cc:2568: __ CallRuntime(Runtime::kSwapElements, 3); runtime call here might be quite expensive. I don't have any numbers, but when x64 port had only runtime call w/o inlined version, there was a notable regression. http://codereview.chromium.org/1989012/diff/9001/10006#newcode2620 src/ia32/full-codegen-ia32.cc:2620: // it make sense to use that here instead of the runtime call? runtime call might be fine most of the time. The only problem: if we have cache miss invocation of JS function from C++ might be unnecessary expensive. I think that the stub is the best solution. I didn't implement it in the first place to keep pieces digestible. http://codereview.chromium.org/1989012/diff/9001/10006#newcode2624 src/ia32/full-codegen-ia32.cc:2624: STATIC_ASSERT(kSmiTag == 0); if you're going to uncomment this code, those assertions are probably unnecessary http://codereview.chromium.org/1989012/show -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
