Changeset 38975 in webkit for trunk/JavaScriptCore/assembler/AssemblerBuffer.h
- Timestamp:
- Dec 3, 2008, 4:10:53 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/assembler/AssemblerBuffer.h
r38545 r38975 38 38 39 39 class AssemblerBuffer { 40 static const int inlineCapacity = 256; 40 41 public: 41 AssemblerBuffer( int capacity)42 : m_buffer( static_cast<char*>(fastMalloc(capacity)))43 , m_capacity( capacity)42 AssemblerBuffer() 43 : m_buffer(m_inlineBuffer) 44 , m_capacity(inlineCapacity) 44 45 , m_size(0) 45 46 { … … 48 49 ~AssemblerBuffer() 49 50 { 50 fastFree(m_buffer); 51 if (m_buffer != m_inlineBuffer) 52 fastFree(m_buffer); 51 53 } 52 54 … … 113 115 } 114 116 115 AssemblerBuffer* reset()116 {117 m_size = 0;118 return this;119 }120 121 117 void* executableCopy() 122 118 { … … 136 132 { 137 133 m_capacity += m_capacity / 2; 138 m_buffer = static_cast<char*>(fastRealloc(m_buffer, m_capacity)); 134 135 if (m_buffer == m_inlineBuffer) { 136 char* newBuffer = static_cast<char*>(fastMalloc(m_capacity)); 137 m_buffer = static_cast<char*>(memcpy(newBuffer, m_buffer, m_size)); 138 } else 139 m_buffer = static_cast<char*>(fastRealloc(m_buffer, m_capacity)); 139 140 } 140 141 142 char m_inlineBuffer[inlineCapacity]; 141 143 char* m_buffer; 142 144 int m_capacity;
Note:
See TracChangeset
for help on using the changeset viewer.