- 26 Jun, 2008 1 commit
-
-
darin@apple.com authored
* Scripts/check-for-weak-vtables: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34826 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 16 Jun, 2008 1 commit
-
-
darin@apple.com authored
2008-06-15 Darin Adler <darin@apple.com> Rubber stamped by Sam. - renamed kjs_html.h/cpp to JSPluginElementFunctions.h/cpp - renamed kjs_events.h/cpp to JSEventListener.h/cpp * GNUmakefile.am: * WebCore.pro: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * WebCoreSources.bkl: * bindings/js/JSCanvasRenderingContext2DCustom.cpp: * bindings/js/JSDOMApplicationCacheCustom.cpp: * bindings/js/JSDOMWindowBase.cpp: * bindings/js/JSEventCustom.cpp: * bindings/js/JSEventListener.cpp: Copied from WebCore/bindings/js/kjs_events.cpp. * bindings/js/JSEventListener.h: Copied from WebCore/bindings/js/kjs_events.h. * bindings/js/JSEventTargetBase.h: * bindings/js/JSHTMLAppletElementCustom.cpp: * bindings/js/JSHTMLCollectionCustom.cpp: * bindings/js/JSHTMLDocumentCustom.cpp: * bindings/js/JSHTMLEmbedElementCustom.cpp: * bindings/js/JSHTMLInputElementBase.h: * bindings/js/JSHTMLObjectElementCustom.cpp: * bindings/js/JSHTMLSelectElementCustom.cpp: * bindings/js/JSPluginElementFunctions.cpp: Copied from WebCore/bindings/js/kjs_html.cpp. * bindings/js/JSPluginElementFunctions.h: Copied from WebCore/bindings/js/kjs_html.h. * bindings/js/JSSVGLazyEventListener.h: * bindings/js/JSXMLHttpRequestCustom.cpp: * bindings/js/ScriptController.cpp: * bindings/js/kjs_events.cpp: Removed. * bindings/js/kjs_events.h: Removed. * bindings/js/kjs_html.cpp: Removed. * bindings/js/kjs_html.h: Removed. WebKitTools: 2008-06-15 Darin Adler <darin@apple.com> * Scripts/do-webcore-rename: Updated for the latest round of renaming. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34591 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 04 Jun, 2008 1 commit
-
-
cwzwarich@webkit.org authored
Reviewed by Oliver. Add an option to dump statistics on executed instructions. JavaScriptCore: * VM/Machine.cpp: (KJS::Machine::privateExecute): * VM/Opcode.cpp: (KJS::): (KJS::OpcodeStats::~OpcodeStats): (KJS::OpcodeStats::recordInstruction): * VM/Opcode.h: WebKitTools: * Scripts/check-for-global-initializers: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34371 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 19 Jan, 2008 1 commit
-
-
rdar://problem/5695344ddkilzer@apple.com authored
Reviewed by Darin. We now touch a check-for-global-initializers.timestamp file in the TARGET_TEMP_DIR directory to determine when new object files have been compiled and thus need to be checked. If the timestamp file doesn't exist, all object files will be checked. Previously the modification time of the "executable" (the framework binary, e.g., WebKit.framework/WebKit) was used, but since this was the last file modified at the end of the compile phase, no object files would ever get checked! Also added JSCustomSQLTransactionCallback.o to the list of files since it has static initializers in Debug builds of WebCore. * Scripts/check-for-global-initializers: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@29668 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 03 Dec, 2007 1 commit
-
-
slewis@apple.com authored
* Scripts/check-for-global-initializers: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@28367 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 14 Aug, 2007 1 commit
-
-
ggaren authored
Removed special case that didn't belong. (It would allow a global initializer to sneak into production builds, which would cause a system-wide performance regression on Mac OS X.) * Scripts/check-for-global-initializers: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@25077 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 10 Jul, 2007 1 commit
-
-
ggaren authored
Reviewed by Tim Hatcher. Added a Page counter. This helped me while investigating <rdar://problem/5314463> 40MB of WebKit memory still allocated after closing large email in Mail * WebCore.xcodeproj/project.pbxproj: * page/Page.cpp: (WebCore::): (WebCore::PageCounter::~PageCounter): (WebCore::Page::Page): (WebCore::Page::~Page): WebKitTools: Reviewed by Tim Hatcher. Ignore Page.o in debug builds because it now has a static PageCounter object. * Scripts/check-for-global-initializers: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@24174 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 28 May, 2007 2 commits
-
-
weinig authored
Add scripts and data to generate a coverage data for WebKit. * CodeCoverage/README: Added. * CodeCoverage/amber.png: Added. * CodeCoverage/cov.py: Added. * CodeCoverage/emerald.png: Added. * CodeCoverage/gcov.css: Added. * CodeCoverage/glass.png: Added. * CodeCoverage/regenerate-coverage-display: Added. * CodeCoverage/ruby.png: Added. * CodeCoverage/run-generate-coverage-data: Added. * CodeCoverage/snow.png: Added. * Scripts/build-webkit: Add --coverage by Niko * Scripts/check-for-global-initializers: Skip the check on coverage builds * Scripts/generate-coverage-data: Added. * Scripts/run-javascriptcore-tests: Add --coverage by Niko git-svn-id: http://svn.webkit.org/repository/webkit/trunk@21848 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
bdash authored
Build fix after r21745. * Scripts/check-for-global-initializers: Skip CachedPage.o as it now has a global initializer in debug builds. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@21839 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 10 May, 2007 1 commit
-
-
mjs authored
Reviewed by Oliver. - new test case for: <rdar://problem/5063277> blank screen after login to Citibank Online (accessing document before frame starts loading cancels load) <rdar://problem/5159541> REGRESSION (r20972): Wall Street Journal pages replaced by advertisements (13465) (The test case covers both scenarios.) * http/tests/misc/frame-access-during-load-expected.checksum: Added. * http/tests/misc/frame-access-during-load-expected.png: Added. * http/tests/misc/frame-access-during-load-expected.txt: Added. * http/tests/misc/frame-access-during-load.html: Added. - test results beneficially or harmlessly changed as a result of the above fixes * css2.1/t0801-c412-hz-box-00-b-a-expected.checksum: * css2.1/t0801-c412-hz-box-00-b-a-expected.png: * css2.1/t0801-c412-hz-box-00-b-a-expected.txt: This reflects an <object> containing an image now creating an image renderer. ...
-
- 03 May, 2007 1 commit
-
-
ggaren authored
in the ignore list. * Scripts/check-for-global-initializers: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@21228 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 07 Mar, 2007 1 commit
-
-
bdash authored
Reviewed by Maciej. Update check-for-global-initializers to ignore new debug initializers in bidi.o and kjs_events.o. * Scripts/check-for-global-initializers: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@20038 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 19 Feb, 2007 2 commits
-
-
ggaren authored
* Scripts/check-for-global-initializers: Ignore the global counter I added for SubresourceLoaders. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19714 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin authored
* Scripts/check-for-global-initializers: Delete the linked executable if the check fails. Without this, you only see the global initializer error once, which makes it very easy to miss them. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19712 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 11 Feb, 2007 1 commit
-
-
darin authored
so it doesn't give a perl exception (happens in clean builds, for example). git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19565 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 08 Feb, 2007 1 commit
-
-
darin authored
* Scripts/check-for-global-initializers: For speed, only check files that have been modified since the last time we linked. For tidiness, capture stderr from nm, and prevent "nm: no name list" messages from going out. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19498 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 31 Jan, 2007 1 commit
-
-
ggaren authored
Reviewed by Darin Adler. Added a Range counter to detect leaks. Tweaked the Node counter. Also fixed a TextIterator destructive modification bug that I noticed along the way. No test case for this bug because no clients have been bitten by it yet. * dom/Node.cpp: Renamed NodeImplCounter to NodeCounter, changed counter to unsigned, fixed formatting to match style guidelines. (WebCore::NodeCounter::~NodeCounter): (WebCore::Node::Node): (WebCore::Node::~Node): * dom/Range.cpp: (WebCore::RangeCounter::~RangeCounter): Added. (WebCore::Range::Range): (WebCore::Range::~Range): (WebCore::Range::ownerDocument): New accessor, used by TextIterator to avoid annoying NULL checks. * dom/Range.h: * editing/TextIterator.cpp: (WebCore::TextIterator::subrange): (1) Don't initialize result with entireRange -- doing so would create a PassRefPtr that pointed to entireRange, so this function would destructively modify the Range you passed it. Initialize it with a new Range instead. (2) Don't use a PassRefPtr as a local variable, because they have sneaky semantics. Use a RefPtr instead. (3) Don't call CharacterIterator::range() willy-nilly, since it does non-trivial work. Use a local variable instead. WebKitTools: Reviewed by Darin Adler. Added Selection::toRange to the leaks -exclude list, since it comes up as a false positive (Radar 4967949). Also added RangeCounter to the global initializer exclude list. I added a RangeCounter since leaks won't detect all Range leaks anymore. * Scripts/check-for-global-initializers: * Scripts/run-webkit-tests: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19317 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 29 Jan, 2007 1 commit
-
-
ggaren authored
Reviewed by Maciej Stachowiak. Fixed <rdar://problem/4485644> REGRESSION: JavaScriptCore has init routines The TCMalloc module now initializes, if needed, inside GetCache() and fastMallocSetIsMultiThreaded(). We leverage the same synchronization technique used for enabling / disabling the single-threaded optimization to synchronize initialization of the library without requiring a lock for every malloc. 1,251 runs of tcmalloc_unittest, 2 runs of a custom, massively multi-threaded tcmalloc_unittest, and my custom version of the PLT show no regressions. Super-accurate JS iBench reports a .24% regression, which is right at the limit of its error range, so I'm declaring victory. * wtf/FastMalloc.cpp: (WTF::fastMallocSetIsMultiThreaded): Initialize, if needed. (InitModule() checks the "if needed" part.) (WTF::TCMalloc_ThreadCache::GetCache): Restored original TCMalloc code inside #ifdef, for posterity. Added new initialization logic. (WTF::TCMalloc_ThreadCache::InitModule): Call InitTSD(), since we don't have a static initializer to call it for us, now. This means that fastMalloc is not usable as a general libc allocator, but it never was, and if it were the general libc allocator, we wouldn't be here in the first place, so whatever. (WTF::TCMalloc_ThreadCache::InitTSD): Don't try to take the pageheap_lock, since InitModule already has it. WebKitTools: Reviewed by Maciej Stachowiak. Fixed <rdar://problem/4485644> REGRESSION: JavaScriptCore has init routines No more mollycoddling for you, FastMalloc.o! * Scripts/check-for-global-initializers: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@19245 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 05 Apr, 2006 1 commit
-
-
darin authored
Reviewed by Maciej. - JavaScriptCore part of fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8049 StringImpl hash traits deleted value creates an init routine for WebCore <rdar://problem/4442248> REGRESSION: WebCore has init routines (8049) Change HashMap and HashSet implementation so they fold various types together. This allows us to implement maps and sets that use RefPtr<WebCore::StringImpl> and WebCore::String in terms of the underlying raw pointer type, and hence use -1 for the deleted value. * kxmlcore/HashTraits.h: Added a new type to HashTraits, StorageTraits, which is a type to be used when storing a value that has the same layout as the type itself. This is used only for non-key cases. In the case of keys, the hash function must also be considered. Moved emptyValue out of GenericHashTraitsBase into GenericHashTraits. Added a new bool to HashTraits, needsRef, which indicates whether the type needs explicit reference counting. If the type itself has needsRef true, but the storage type has needsRef false, then the HashSet or HashMap has to handle the reference counting explicitly. Added hash trait specializations for all signed integer values that give -1 as the deleted value. Gave all integers StorageTraits of the canonical integer type of the same size so int and long will share code. Gave all pointers and RefPtrs StorageTraits of the appropriately sized integer type. Removed redundant TraitType and emptyValue definitions in the pointer specialization for HashTraits. Added PairBaseHashTraits, which doesn't try to set up needsDestruction and deletedValue. Useful for types where we don't want to force the existence of deletedValue, such as the type of a pair in a HashMap which is not the actual storage type. Removed an unneeded parameter from the DeletedValueAssigner template. Added HashKeyStorageTraits template, which determines what type can be used to store a given hash key type with a given hash function, and specialized it for pointers and RefPtr so that pointer hash tables share an underlying HashTable that uses IntHash. * kxmlcore/HashTable.h: Added HashTableConstIteratorAdapter, HashTableIteratorAdapter, NeedsRef, RefCountManagerBase, RefCountManager, HashTableRefCountManagerBase, and HashTableRefCountManager. All are used by both HashSet and HashMap to handle hash tables where the type stored is not the same as the real value type. * kxmlcore/HashFunctions.h: Added a new struct named IntTypes that finds an integer type given a sizeof value. Renamed pointerHash to intHash and made it use overloading and take integer parameters. Added an IntHash struct which is a hash function that works for integers. Changed PtrHash to call IntHash with an appropriately sized integer. Made IntHash the default hash function for many integer types. Made PtrHash the default hash function for RefPtr as well as for raw pointers. * kxmlcore/HashSet.h: Changed implementation to use a separate "storage type" derived from the new traits. The HashTable will use the storage type and all necessary translation and ref/deref is done at the HashSet level. Also reorganized the file so that the HashSet is at the top and has no inline implementation inside it so it's easy to read the interface to HashSet. * kxmlcore/HashMap.h: Changed implementation to use a separate "storage type" derived from the new traits. The HashTable will use the storage type and all necessary translation and ref/deref is done at the HashMap level. Also reorganized the file so that the HashMap is at the top and has no inline implementation inside it so it's easy to read the interface to HashMap. * kxmlcore/HashMapPtrSpec.h: Removed. Superceded by optimizations in HashMap itself. * JavaScriptCore.xcodeproj/project.pbxproj: Remove HashMapPtrSpec.h, resort files, and also remove some unnecessary build settings from the aggregate target that generates derived sources. * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Ditto. WebCore: Reviewed by Maciej. - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8049 StringImpl hash traits deleted value creates an init routine for WebCore <rdar://problem/4442248> REGRESSION: WebCore has init routines (8049) * platform/StringHash.h: Added. Moved hash functions and such for WebCore::String and friends into this file so we don't have to include the hash traits header everywhere. Changed hashing for WebCore::StringImpl and WebCore::String so that they use a raw pointer for the underlying storage type, taking advantage of the new feature added in JavaScriptCore. * platform/AtomicString.h: Moved StrHash specialization to StringHash.h. * platform/PlatformString.h: Moved StrHash specialization to StringHash.h. * platform/StringImpl.h: Moved StrHash, CaseInsensitiveHash, and HashTraits to StringHash.h. Left DefaultHash behind so that you can't get the wrong hash function by accident if you forget to include "StringHash.h". * platform/StringImpl.cpp: Added include of StringHash.h and removed RefPtr<StringImpl> HashTraits<RefPtr<StringImpl> >::_deleted, which is the object with a global initializer causing all the trouble! * kwq/AccessibilityObjectCache.h: Changed hash function to be IntHash instead of PtrHash. * dom/StyledElement.cpp: Changed MappedAttributeKeyTraits to inherit from the generic traits in KXMLCore so we get a StorageType. Also cleaned up a tiny bit by adding default values to the MappedAttributeKey constructor. * platform/CharsetNames.cpp: Changed hash traits here to be a new TextEncodingIDHashTraits struct rather than defining new default traits for the integer type since more integer types have default traits in HashTraits.h now. Also added a specialization so this class will share the underlying implementation (since InvalidEncoding happens to be -1). * bridge/mac/FrameMac.h: * dom/Document.h: * dom/xml_tokenizer.h: * khtml/xsl/XSLTProcessor.h: * kwq/JavaAppletWidget.h: * page/FramePrivate.h: * page/Page.cpp: * platform/AtomicString.cpp: * platform/TransferJob.h: * rendering/render_applet.h: Added include of StringHash.h. * WebCore.xcodeproj/project.pbxproj: Added StringHash.h. Remove unneeded CREATE_HASH_TABLE variable in build settings. Re-sorted some file lists. Added quotes to the CREATE_HASH_TABLE initialization in the rule that builds generated files. Removed various unneeded build settings for that target as well. * ForwardingHeaders/kxmlcore/HashTraits.h: Added. - other minor cleanup * bridge/mac/FrameMac.mm: Sorted includes. * dom/Node.cpp: Removed bogus symbol after #endif. * khtml/xsl/XSLTProcessor.cpp: Sorted includes. Removed redundant using namespace WebCore. * loader/Cache.cpp: Ditto. WebKitTools: Reviewed by Maciej. * Scripts/check-for-global-initializers: Remove StringImpl from the list of files that are allowed to have global initializers. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13703 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 29 Mar, 2006 1 commit
-
-
darin authored
- make the global initializer check work on Xcode 2.1 (although it's better on 2.2) * Scripts/check-for-global-initializers: Use NATIVE_ARCH if there is no CURRENT_ARCH. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13565 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
- 28 Mar, 2006 4 commits
-
-
eseidel authored
Reviewed by darin. Remove global initializers. * kcanvas/device/quartz/KCanvasFilterQuartz.mm: * ksvg2/svg/SVGAngle.cpp: * ksvg2/svg/SVGColor.cpp: * ksvg2/svg/SVGLength.cpp: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13549 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
thatcher authored
Exit gracefully if $ENV{'CURRENT_ARCH'} is undefined. Rolling out my previous change. * Scripts/check-for-global-initializers: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13545 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
thatcher authored
* Scripts/check-for-global-initializers: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13544 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-
darin authored
* Scripts/check-for-global-initializers: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@13539 268f45cc-cd09-0410-ab3c-d52691b4dbfc
-