Merged r12485, r12486, r12491, r12494, r12495 into trunk branch.
Fix edge case of extension with NULL as source string.
Fixed CHECK failure in LCodeGen::DoWrapReceiver when --deopt-every-n-times flag is present
Correctly initialize regexp global cache.
Ensure correct enumeration indices in the dict
Fix API check for length of external arrays.
BUG=chromium:144649,chromium:148389,chromium:148378,chromium:148376,chromium:148896
R=yangguo@chromium.org,mstarzinger@chromium.org,verwaest@chromium.org
Review URL: https://codereview.chromium.org/10907233
git-svn-id: http://v8.googlecode.com/svn/trunk@12514 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
diff --git a/src/ia32/lithium-codegen-ia32.cc b/src/ia32/lithium-codegen-ia32.cc
index 33efdd8..2b42b13 100644
--- a/src/ia32/lithium-codegen-ia32.cc
+++ b/src/ia32/lithium-codegen-ia32.cc
@@ -2946,12 +2946,12 @@
FieldOperand(function, JSFunction::kSharedFunctionInfoOffset));
__ test_b(FieldOperand(scratch, SharedFunctionInfo::kStrictModeByteOffset),
1 << SharedFunctionInfo::kStrictModeBitWithinByte);
- __ j(not_equal, &receiver_ok, Label::kNear);
+ __ j(not_equal, &receiver_ok); // A near jump is not sufficient here!
// Do not transform the receiver to object for builtins.
__ test_b(FieldOperand(scratch, SharedFunctionInfo::kNativeByteOffset),
1 << SharedFunctionInfo::kNativeBitWithinByte);
- __ j(not_equal, &receiver_ok, Label::kNear);
+ __ j(not_equal, &receiver_ok);
// Normal function. Replace undefined or null with global receiver.
__ cmp(receiver, factory()->null_value());