Searched refs:jumpTable (Results 1 - 4 of 4) sorted by relevance

/external/webkit/JavaScriptCore/jit/
H A DJIT.cpp495 ASSERT(record.jumpTable.simpleJumpTable->branchOffsets.size() == record.jumpTable.simpleJumpTable->ctiOffsets.size());
497 record.jumpTable.simpleJumpTable->ctiDefault = patchBuffer.locationOf(m_labels[bytecodeIndex + record.defaultOffset]);
499 for (unsigned j = 0; j < record.jumpTable.simpleJumpTable->branchOffsets.size(); ++j) {
500 unsigned offset = record.jumpTable.simpleJumpTable->branchOffsets[j];
501 record.jumpTable.simpleJumpTable->ctiOffsets[j] = offset ? patchBuffer.locationOf(m_labels[bytecodeIndex + offset]) : record.jumpTable.simpleJumpTable->ctiDefault;
506 record.jumpTable.stringJumpTable->ctiDefault = patchBuffer.locationOf(m_labels[bytecodeIndex + record.defaultOffset]);
508 StringJumpTable::StringOffsetTable::iterator end = record.jumpTable.stringJumpTable->offsetTable.end();
509 for (StringJumpTable::StringOffsetTable::iterator it = record.jumpTable
[all...]
H A DJIT.h127 } jumpTable; member in struct:JSC::SwitchRecord
132 SwitchRecord(SimpleJumpTable* jumpTable, unsigned bytecodeIndex, unsigned defaultOffset, Type type) argument
137 this->jumpTable.simpleJumpTable = jumpTable;
140 SwitchRecord(StringJumpTable* jumpTable, unsigned bytecodeIndex, unsigned defaultOffset) argument
145 this->jumpTable.stringJumpTable = jumpTable;
H A DJITOpcodes.cpp1349 SimpleJumpTable* jumpTable = &m_codeBlock->immediateSwitchJumpTable(tableIndex); local
1350 m_switches.append(SwitchRecord(jumpTable, m_bytecodeIndex, defaultOffset, SwitchRecord::Immediate));
1351 jumpTable->ctiOffsets.grow(jumpTable->branchOffsets.size());
1367 SimpleJumpTable* jumpTable = &m_codeBlock->characterSwitchJumpTable(tableIndex); local
1368 m_switches.append(SwitchRecord(jumpTable, m_bytecodeIndex, defaultOffset, SwitchRecord::Character));
1369 jumpTable->ctiOffsets.grow(jumpTable->branchOffsets.size());
1385 StringJumpTable* jumpTable = &m_codeBlock->stringSwitchJumpTable(tableIndex); local
1386 m_switches.append(SwitchRecord(jumpTable, m_bytecodeInde
[all...]
/external/webkit/JavaScriptCore/bytecompiler/
H A DBytecodeGenerator.cpp1925 static void prepareJumpTableForImmediateSwitch(SimpleJumpTable& jumpTable, int32_t switchAddress, uint32_t clauseCount, RefPtr<Label>* labels, ExpressionNode** nodes, int32_t min, int32_t max) argument
1927 jumpTable.min = min;
1928 jumpTable.branchOffsets.resize(max - min + 1);
1929 jumpTable.branchOffsets.fill(0);
1934 jumpTable.add(keyForImmediateSwitch(nodes[i], min, max), labels[i]->bind(switchAddress, switchAddress + 3));
1951 static void prepareJumpTableForCharacterSwitch(SimpleJumpTable& jumpTable, int32_t switchAddress, uint32_t clauseCount, RefPtr<Label>* labels, ExpressionNode** nodes, int32_t min, int32_t max) argument
1953 jumpTable.min = min;
1954 jumpTable.branchOffsets.resize(max - min + 1);
1955 jumpTable.branchOffsets.fill(0);
1960 jumpTable
1964 prepareJumpTableForStringSwitch(StringJumpTable& jumpTable, int32_t switchAddress, uint32_t clauseCount, RefPtr<Label>* labels, ExpressionNode** nodes) argument
1987 SimpleJumpTable& jumpTable = m_codeBlock->addImmediateSwitchJumpTable(); local
1993 SimpleJumpTable& jumpTable = m_codeBlock->addCharacterSwitchJumpTable(); local
2000 StringJumpTable& jumpTable = m_codeBlock->addStringSwitchJumpTable(); local
[all...]

Completed in 70 milliseconds