Bug 1120960 - Remove NativeObject::lookup workaround for MSVC bug. r=Waldo
authorJan de Mooij <jdemooij@mozilla.com>
Wed, 14 Jan 2015 10:13:28 +0100
changeset 223744 d60a0e201e2c36892fc20732bf091f7402d398e8
parent 223743 c31ea1719f8a87c45309dcb44362bde251218c7e
child 223745 3264ed4b05ca81039064edfed20e92bec27b8841
child 223778 08878d0f0b3371259755a91458d11562f521d34a
push id10811
push usercbook@mozilla.com
push dateWed, 14 Jan 2015 13:52:17 +0000
treeherderfx-team@b8d38d19dbd9 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersWaldo
bugs1120960
milestone38.0a1
Bug 1120960 - Remove NativeObject::lookup workaround for MSVC bug. r=Waldo
js/src/jit/BaselineJIT.cpp
js/src/vm/NativeObject.cpp
--- a/js/src/jit/BaselineJIT.cpp
+++ b/js/src/jit/BaselineJIT.cpp
@@ -265,19 +265,18 @@ CanEnterBaselineJIT(JSContext *cx, Handl
 
     if (!cx->compartment()->ensureJitCompartmentExists(cx))
         return Method_Error;
 
     if (script->hasBaselineScript())
         return Method_Compiled;
 
     // Check script warm-up counter.
-    if (script->incWarmUpCounter() <= js_JitOptions.baselineWarmUpThreshold) {
+    if (script->incWarmUpCounter() <= js_JitOptions.baselineWarmUpThreshold)
         return Method_Skipped;
-    }
 
     if (script->isCallsiteClone()) {
         // Ensure the original function is compiled too, so that bailouts from
         // Ion code have a BaselineScript to resume into.
         RootedScript original(cx, script->donorFunction()->nonLazyScript());
         MOZ_ASSERT(original != script);
 
         if (!original->canBaselineCompile())
--- a/js/src/vm/NativeObject.cpp
+++ b/js/src/vm/NativeObject.cpp
@@ -265,24 +265,16 @@ js::NativeObject::slotInRange(uint32_t s
 {
     uint32_t capacity = numFixedSlots() + numDynamicSlots();
     if (sentinel == SENTINEL_ALLOWED)
         return slot <= capacity;
     return slot < capacity;
 }
 #endif /* DEBUG */
 
-#if defined(_MSC_VER)
-/*
- * Work around a compiler bug in MSVC9 and above, where inlining this function
- * causes stack pointer offsets to go awry and spp to refer to something higher
- * up the stack.
- */
-MOZ_NEVER_INLINE
-#endif
 Shape *
 js::NativeObject::lookup(ExclusiveContext *cx, jsid id)
 {
     MOZ_ASSERT(isNative());
     ShapeTable::Entry *entry;
     return Shape::search(cx, lastProperty(), id, &entry);
 }