Home | History | Annotate | Download | only in bytecode

Lines Matching refs:vPC

277 void CodeBlock::printStructure(const char* name, const Instruction* vPC, int operand) const
279 unsigned instructionOffset = vPC - m_instructions.begin();
280 printf(" [%4d] %s: %s\n", instructionOffset, name, pointerToSourceString(vPC[operand].u.structure).UTF8String().c_str());
283 void CodeBlock::printStructures(const Instruction* vPC) const
286 unsigned instructionOffset = vPC - m_instructions.begin();
288 if (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id)) {
289 printStructure("get_by_id", vPC, 4);
292 if (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_self)) {
293 printStructure("get_by_id_self", vPC, 4);
296 if (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_proto)) {
297 printf(" [%4d] %s: %s, %s\n", instructionOffset, "get_by_id_proto", pointerToSourceString(vPC[4].u.structure).UTF8String().c_str(), pointerToSourceString(vPC[5].u.structure).UTF8String().c_str());
300 if (vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id_transition)) {
301 printf(" [%4d] %s: %s, %s, %s\n", instructionOffset, "put_by_id_transition", pointerToSourceString(vPC[4].u.structure).UTF8String().c_str(), pointerToSourceString(vPC[5].u.structure).UTF8String().c_str(), pointerToSourceString(vPC[6].u.structureChain).UTF8String().c_str());
304 if (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_chain)) {
305 printf(" [%4d] %s: %s, %s\n", instructionOffset, "get_by_id_chain", pointerToSourceString(vPC[4].u.structure).UTF8String().c_str(), pointerToSourceString(vPC[5].u.structureChain).UTF8String().c_str());
308 if (vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id)) {
309 printStructure("put_by_id", vPC, 4);
312 if (vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id_replace)) {
313 printStructure("put_by_id_replace", vPC, 4);
316 if (vPC[0].u.opcode == interpreter->getOpcode(op_resolve_global)) {
317 printStructure("resolve_global", vPC, 4);
322 ASSERT(vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_generic) || vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id_generic) || vPC[0].u.opcode == interpreter->getOpcode(op_call) || vPC[0].u.opcode == interpreter->getOpcode(op_call_eval) || vPC[0].u.opcode == interpreter->getOpcode(op_construct));
1354 void CodeBlock::derefStructures(Instruction* vPC) const
1358 if (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_self)) {
1359 vPC[4].u.structure->deref();
1362 if (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_proto)) {
1363 vPC[4].u.structure->deref();
1364 vPC[5].u.structure->deref();
1367 if (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_chain)) {
1368 vPC[4].u.structure->deref();
1369 vPC[5].u.structureChain->deref();
1372 if (vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id_transition)) {
1373 vPC[4].u.structure->deref();
1374 vPC[5].u.structure->deref();
1375 vPC[6].u.structureChain->deref();
1378 if (vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id_replace)) {
1379 vPC[4].u.structure->deref();
1382 if (vPC[0].u.opcode == interpreter->getOpcode(op_resolve_global)) {
1383 if(vPC[4].u.structure)
1384 vPC[4].u.structure->deref();
1387 if ((vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_proto_list))
1388 || (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_self_list))) {
1389 PolymorphicAccessStructureList* polymorphicStructures = vPC[4].u.polymorphicStructures;
1390 polymorphicStructures->derefStructures(vPC[5].u.operand);
1396 ASSERT(vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id) || vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id) || vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_generic) || vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id_generic) || vPC[0].u.opcode == interpreter->getOpcode(op_get_array_length) || vPC[0].u.opcode == interpreter->getOpcode(op_get_string_length));
1399 void CodeBlock::refStructures(Instruction* vPC) const
1403 if (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_self)) {
1404 vPC[4].u.structure->ref();
1407 if (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_proto)) {
1408 vPC[4].u.structure->ref();
1409 vPC[5].u.structure->ref();
1412 if (vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_chain)) {
1413 vPC[4].u.structure->ref();
1414 vPC[5].u.structureChain->ref();
1417 if (vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id_transition)) {
1418 vPC[4].u.structure->ref();
1419 vPC[5].u.structure->ref();
1420 vPC[6].u.structureChain->ref();
1423 if (vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id_replace)) {
1424 vPC[4].u.structure->ref();
1429 ASSERT(vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id) || vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id) || vPC[0].u.opcode == interpreter->getOpcode(op_get_by_id_generic) || vPC[0].u.opcode == interpreter->getOpcode(op_put_by_id_generic));