Ignore:
Timestamp:
Aug 4, 2010, 3:21:13 PM (15 years ago)
Author:
[email protected]
Message:

2010-08-04 Sheriff Bot <[email protected]>

Unreviewed, rolling out r64655.
http://trac.webkit.org/changeset/64655
https://bugs.webkit.org/show_bug.cgi?id=43496

JavaScriptCore references patch seems to have caused
regressions in QT and GTK builds (Requested by nlawrence on
#webkit).

  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::markAggregate):
  • runtime/Collector.cpp: (JSC::Heap::markConservatively):
  • runtime/JSCell.h: (JSC::JSValue::asCell): (JSC::MarkStack::append):
  • runtime/JSGlobalObject.cpp: (JSC::markIfNeeded):
  • runtime/JSONObject.cpp: (JSC::Stringifier::Holder::object):
  • runtime/JSObject.h: (JSC::JSObject::prototype):
  • runtime/JSStaticScopeObject.cpp: (JSC::JSStaticScopeObject::markChildren):
  • runtime/JSValue.h: (JSC::JSValue::): (JSC::JSValue::JSValue): (JSC::JSValue::asCell):
  • runtime/MarkStack.h:
  • runtime/NativeErrorConstructor.cpp:
  • runtime/NativeErrorConstructor.h:
  • runtime/Structure.h: (JSC::Structure::storedPrototype):

2010-08-04 Sheriff Bot <[email protected]>

Unreviewed, rolling out r64655.
http://trac.webkit.org/changeset/64655
https://bugs.webkit.org/show_bug.cgi?id=43496

JavaScriptCore references patch seems to have caused
regressions in QT and GTK builds (Requested by nlawrence on
#webkit).

  • JSValueWrapper.cpp: (JSValueWrapper::JSObjectMark):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/runtime/JSValue.h

    r64655 r64684  
    200200
    201201        bool isCell() const;
    202         JSCell*& asCell();
    203         JSCell* const& asCell() const;
     202        JSCell* asCell() const;
    204203        bool isValidCallee();
    205204
     
    242241                int32_t payload;
    243242            } asBits;
    244             struct {
    245                 int32_t tag;
    246                 JSCell* ptr;
    247             } asPtr;
    248243#else
    249244            struct {
     
    251246                int32_t tag;
    252247            } asBits;
    253             struct {
    254                 JSCell* ptr;
    255                 int32_t tag;
    256             } asPtr;
    257248#endif
    258249        } u;
     
    501492        else
    502493            u.asBits.tag = EmptyValueTag;
    503         u.asPtr.ptr = ptr;
     494        u.asBits.payload = reinterpret_cast<int32_t>(ptr);
    504495#if ENABLE(JSC_ZOMBIES)
    505496        ASSERT(!isZombie());
     
    513504        else
    514505            u.asBits.tag = EmptyValueTag;
    515         u.asPtr.ptr = const_cast<JSCell*>(ptr);
     506        u.asBits.payload = reinterpret_cast<int32_t>(const_cast<JSCell*>(ptr));
    516507#if ENABLE(JSC_ZOMBIES)
    517508        ASSERT(!isZombie());
     
    608599    }
    609600   
    610     ALWAYS_INLINE JSCell* const& JSValue::asCell() const
     601    ALWAYS_INLINE JSCell* JSValue::asCell() const
    611602    {
    612603        ASSERT(isCell());
    613         return u.asPtr.ptr;
    614     }
    615 
    616     ALWAYS_INLINE JSCell*& JSValue::asCell()
    617     {
    618         ASSERT(isCell());
    619         return u.asPtr.ptr;
     604        return reinterpret_cast<JSCell*>(u.asBits.payload);
    620605    }
    621606
Note: See TracChangeset for help on using the changeset viewer.