Changeset 163027 in webkit for trunk/Source/JavaScriptCore/dfg/DFGOSREntrypointCreationPhase.cpp
- Timestamp:
- Jan 29, 2014, 11:18:54 AM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/dfg/DFGOSREntrypointCreationPhase.cpp
r161126 r163027 1 1 /* 2 * Copyright (C) 2013 Apple Inc. All rights reserved.2 * Copyright (C) 2013, 2014 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 64 64 if (!block) 65 65 continue; 66 unsigned nodeIndex = 0; 66 67 Node* firstNode = block->at(0); 68 while (firstNode->isSemanticallySkippable()) 69 firstNode = block->at(++nodeIndex); 67 70 if (firstNode->op() == LoopHint 68 71 && firstNode->codeOrigin == CodeOrigin(bytecodeIndex)) { … … 84 87 CodeOrigin codeOrigin = target->at(0)->codeOrigin; 85 88 86 for (int argument = 0; argument < baseline->numParameters(); ++argument) {87 Node* oldNode = target->variablesAtHead.argument(argument);88 if (!oldNode) {89 // Just for sanity, always have a SetArgument even if it's not needed.90 oldNode = m_graph.m_arguments[argument];91 }92 Node* node = newRoot->appendNode(93 m_graph, SpecNone, SetArgument, codeOrigin,94 OpInfo(oldNode->variableAccessData()));95 m_graph.m_arguments[argument] = node;96 }97 89 Vector<Node*> locals(baseline->m_numCalleeRegisters); 98 90 for (int local = 0; local < baseline->m_numCalleeRegisters; ++local) { … … 109 101 Edge(locals[local])); 110 102 } 103 104 for (int argument = 0; argument < baseline->numParameters(); ++argument) { 105 Node* oldNode = target->variablesAtHead.argument(argument); 106 if (!oldNode) { 107 // Just for sanity, always have a SetArgument even if it's not needed. 108 oldNode = m_graph.m_arguments[argument]; 109 } 110 Node* node = newRoot->appendNode( 111 m_graph, SpecNone, SetArgument, codeOrigin, 112 OpInfo(oldNode->variableAccessData())); 113 m_graph.m_arguments[argument] = node; 114 } 115 111 116 for (int local = 0; local < baseline->m_numCalleeRegisters; ++local) { 112 117 Node* previousHead = target->variablesAtHead.local(local);
Note:
See TracChangeset
for help on using the changeset viewer.