Ignore:
Timestamp:
Nov 18, 2002, 11:57:11 PM (23 years ago)
Author:
darin
Message:

JavaScriptCore:

  • reduced the creation of Value objects and hoisted the property map into Object for another gain of about 6%
  • JavaScriptCore.pbproj/project.pbxproj: Made property_map.h public.
  • kjs/array_object.cpp: (compareWithCompareFunctionForQSort): Don't wrap the ValueImp * in a Value just to add it to a list. (ArrayProtoFuncImp::call): Pass the globalObject directly so we don't have to ref/deref.
  • kjs/function.cpp: (FunctionImp::call): Use a reference for the global object to avoid ref/deref. (GlobalFuncImp::call): Ditto.
  • kjs/internal.cpp: (BooleanImp::toObject): Put the object directly into the list, don't create a Value. (StringImp::toObject): Ditto. (NumberImp::toObject): Ditto. (InterpreterImp::evaluate): Use a reference for the global object.
  • kjs/internal.h: Return a reference for the global object.
  • kjs/interpreter.cpp: (Interpreter::globalObject): Ditto.
  • kjs/interpreter.h: Ditto.
  • kjs/object.cpp: Use _prop directly in the object, not a separate pointer.
  • kjs/object.h: Ditto.
  • kjs/types.cpp: Added List methods that work directly with ValueImp. (List::append): Added a ValueImp version. (List::prepend): Ditto. (List::appendList): Work directly with the ValueImp's. (List::prependList): Ditto. (List::copy): Use appendList. (List::empty): Use a shared global List.
  • kjs/types.h: Update for above changes.

WebCore:

  • force-js-clean-timestamp: Another Object change.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/internal.cpp

    r2748 r2753  
    187187{
    188188  List args;
    189   args.append(Boolean(const_cast<BooleanImp*>(this)));
     189  args.append(const_cast<BooleanImp*>(this));
    190190  return Object::dynamicCast(exec->interpreter()->builtinBoolean().construct(exec,args));
    191191}
     
    216216{
    217217  List args;
    218   args.append(Value(const_cast<StringImp*>(this)));
     218  args.append(const_cast<StringImp*>(this));
    219219  return Object::dynamicCast(exec->interpreter()->builtinString().construct(exec,args));
    220220}
     
    245245{
    246246  List args;
    247   args.append(Number(const_cast<NumberImp*>(this)));
     247  args.append(const_cast<NumberImp*>(this));
    248248  return Object::dynamicCast(exec->interpreter()->builtinNumber().construct(exec,args));
    249249}
     
    735735  progNode->ref();
    736736
    737   Object globalObj = globalObject();
     737  Object &globalObj = globalObject();
    738738  Object thisObj = globalObject();
    739739
Note: See TracChangeset for help on using the changeset viewer.