Changeset 44897 in webkit for trunk/JavaScriptCore
- Timestamp:
- Jun 20, 2009, 6:14:41 AM (16 years ago)
- Location:
- trunk/JavaScriptCore
- Files:
-
- 8 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/ChangeLog
r44889 r44897 1 2009-06-20 Zoltan Herczeg <[email protected]> 2 3 Bug 24986: ARM JIT port 4 <https://bugs.webkit.org/show_bug.cgi?id=24986> 5 6 Reviewed by Oliver Hunt. 7 8 Move SegmentedVector to /wtf subdirectory 9 and change "namespace JSC" to "namespace WTF" 10 11 Additional build file updates by David Kilzer. 12 13 * GNUmakefile.am: Updated path to SegmentedVector.h. 14 * JavaScriptCore.order: Updated SegmentedVector namespace from 15 JSC to WTF in mangled C++ method name. 16 * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: 17 Removed reference to bytecompiler\SegmentedVector.h. 18 * JavaScriptCore.vcproj/WTF/WTF.vcproj: Added reference to 19 wtf\SegmentedVector.h. 20 * JavaScriptCore.xcodeproj/project.pbxproj: Moved 21 SegmentedVector.h definition from bytecompiler subdirectory to 22 wtf subdirectory. 23 * bytecompiler/BytecodeGenerator.h: Updated #include path to 24 SegmentedVector.h and prepended WTF:: namespace to its use. 25 * parser/Lexer.h: Ditto. 26 * wtf/SegmentedVector.h: Renamed from JavaScriptCore/bytecompiler/SegmentedVector.h. 27 (WTF::SegmentedVector::SegmentedVector): 28 (WTF::SegmentedVector::~SegmentedVector): 29 (WTF::SegmentedVector::size): 30 (WTF::SegmentedVector::at): 31 (WTF::SegmentedVector::operator[]): 32 (WTF::SegmentedVector::last): 33 (WTF::SegmentedVector::append): 34 (WTF::SegmentedVector::removeLast): 35 (WTF::SegmentedVector::grow): 36 (WTF::SegmentedVector::clear): 37 (WTF::SegmentedVector::deleteAllSegments): 38 (WTF::SegmentedVector::segmentExistsFor): 39 (WTF::SegmentedVector::segmentFor): 40 (WTF::SegmentedVector::subscriptFor): 41 (WTF::SegmentedVector::ensureSegmentsFor): 42 (WTF::SegmentedVector::ensureSegment): 43 1 44 2009-06-19 Gavin Barraclough <[email protected]> 2 45 -
trunk/JavaScriptCore/GNUmakefile.am
r44550 r44897 109 109 JavaScriptCore/bytecode/SamplingTool.cpp \ 110 110 JavaScriptCore/bytecode/SamplingTool.h \ 111 JavaScriptCore/bytecompiler/SegmentedVector.h \112 111 JavaScriptCore/config.h \ 113 112 JavaScriptCore/debugger/DebuggerActivation.cpp \ … … 258 257 JavaScriptCore/wtf/RefPtrHashMap.h \ 259 258 JavaScriptCore/wtf/RetainPtr.h \ 259 JavaScriptCore/wtf/SegmentedVector.h \ 260 260 JavaScriptCore/wtf/StdLibExtras.h \ 261 261 JavaScriptCore/wtf/StringExtras.h \ -
trunk/JavaScriptCore/JavaScriptCore.order
r43951 r44897 187 187 __ZN3JSC10Identifier3addEPNS_12JSGlobalDataEPKti 188 188 __ZN3WTF7HashSetIPN3JSC7UString3RepENS_7StrHashIS4_EENS_10HashTraitsIS4_EEE3addINS1_11UCharBufferENS1_21UCharBufferTranslatorEE 189 __ZN3 JSC15SegmentedVectorINS_10IdentifierELm64EE6appendIS1_EEvRKT_189 __ZN3WTF15SegmentedVectorINS_10IdentifierELm64EE6appendIS1_EEvRKT_ 190 190 __ZNK3JSC9HashTable11createTableEPNS_12JSGlobalDataE 191 191 __ZN3JSC20ParserArenaDeletablenwEmPNS_12JSGlobalDataE -
trunk/JavaScriptCore/JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj
r44564 r44897 1472 1472 > 1473 1473 </File> 1474 <File1475 RelativePath="..\..\bytecompiler\SegmentedVector.h"1476 >1477 </File>1478 1474 </Filter> 1479 1475 <Filter -
trunk/JavaScriptCore/JavaScriptCore.vcproj/WTF/WTF.vcproj
r44508 r44897 410 410 </File> 411 411 <File 412 RelativePath="..\..\wtf\SegmentedVector.h" 413 > 414 </File> 415 <File 412 416 RelativePath="..\..\wtf\StdLibExtras.h" 413 417 > -
trunk/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
r44711 r44897 1229 1229 148A1ECD0D10C23B0069A47C /* RefPtrHashMap.h */, 1230 1230 51F648D60BB4E2CA0033D760 /* RetainPtr.h */, 1231 969A07290ED1CE6900F1F681 /* SegmentedVector.h */, 1231 1232 FE1B44790ECCD73B004F4DD1 /* StdLibExtras.h */, 1232 1233 E11D51750B2E798D0056C188 /* StringExtras.h */, … … 1278 1279 960097A50EBABB58007A7297 /* LabelScope.h */, 1279 1280 969A07280ED1CE6900F1F681 /* RegisterID.h */, 1280 969A07290ED1CE6900F1F681 /* SegmentedVector.h */,1281 1281 ); 1282 1282 path = bytecompiler; -
trunk/JavaScriptCore/bytecompiler/BytecodeGenerator.h
r44224 r44897 38 38 #include "Interpreter.h" 39 39 #include "RegisterID.h" 40 #include "SegmentedVector.h"41 40 #include "SymbolTable.h" 42 41 #include "Debugger.h" 43 42 #include "Nodes.h" 44 43 #include <wtf/PassRefPtr.h> 44 #include <wtf/SegmentedVector.h> 45 45 #include <wtf/Vector.h> 46 46 … … 450 450 RegisterID m_argumentsRegister; 451 451 int m_activationRegisterIndex; 452 SegmentedVector<RegisterID, 32> m_calleeRegisters;453 SegmentedVector<RegisterID, 32> m_parameters;454 SegmentedVector<RegisterID, 32> m_globals;455 SegmentedVector<Label, 32> m_labels;456 SegmentedVector<LabelScope, 8> m_labelScopes;452 WTF::SegmentedVector<RegisterID, 32> m_calleeRegisters; 453 WTF::SegmentedVector<RegisterID, 32> m_parameters; 454 WTF::SegmentedVector<RegisterID, 32> m_globals; 455 WTF::SegmentedVector<Label, 32> m_labels; 456 WTF::SegmentedVector<LabelScope, 8> m_labelScopes; 457 457 RefPtr<RegisterID> m_lastConstant; 458 458 int m_finallyDepth; -
trunk/JavaScriptCore/parser/Lexer.h
r44224 r44897 24 24 25 25 #include "Lookup.h" 26 #include "SegmentedVector.h"27 26 #include "SourceCode.h" 28 27 #include <wtf/ASCIICType.h> 28 #include <wtf/SegmentedVector.h> 29 29 #include <wtf/Vector.h> 30 30 #include <wtf/unicode/Unicode.h> … … 109 109 int m_next3; 110 110 111 SegmentedVector<JSC::Identifier, initialIdentifierTableCapacity> m_identifiers;111 WTF::SegmentedVector<JSC::Identifier, initialIdentifierTableCapacity> m_identifiers; 112 112 113 113 JSGlobalData* m_globalData; -
trunk/JavaScriptCore/wtf/SegmentedVector.h
r44895 r44897 32 32 #include <wtf/Vector.h> 33 33 34 namespace JSC{34 namespace WTF { 35 35 36 36 // SegmentedVector is just like Vector, but it doesn't move the values … … 109 109 private: 110 110 typedef Vector<T, SegmentSize> Segment; 111 111 112 112 void deleteAllSegments() 113 113 { … … 117 117 delete m_segments[i]; 118 118 } 119 119 120 120 bool segmentExistsFor(size_t index) 121 121 { 122 122 return index / SegmentSize < m_segments.size(); 123 123 } 124 124 125 125 Segment* segmentFor(size_t index) 126 126 { 127 127 return m_segments[index / SegmentSize]; 128 128 } 129 129 130 130 size_t subscriptFor(size_t index) 131 131 { 132 132 return index % SegmentSize; 133 133 } 134 134 135 135 void ensureSegmentsFor(size_t size) 136 136 { … … 148 148 for (size_t i = segmentCount - 1; i < end; ++i) 149 149 ensureSegment(i, SegmentSize); 150 150 151 151 // Grow segment N to accomodate the remainder. 152 152 ensureSegment(end, subscriptFor(size - 1) + 1);
Note:
See TracChangeset
for help on using the changeset viewer.