Home | History | Annotate | Download | only in src

Lines Matching refs:deoptimizer

31 #include "deoptimizer.h"
78 Deoptimizer* Deoptimizer::New(JSFunction* function,
85 Deoptimizer* deoptimizer = new Deoptimizer(isolate,
93 isolate->deoptimizer_data()->current_ = deoptimizer;
94 return deoptimizer;
98 Deoptimizer* Deoptimizer::Grab(Isolate* isolate) {
100 Deoptimizer* result = isolate->deoptimizer_data()->current_;
108 int Deoptimizer::ConvertJSFrameIndexToFrameIndex(int jsframe_index) {
125 DeoptimizedFrameInfo* Deoptimizer::DebuggerInspectableFrame(
148 Deoptimizer* deoptimizer = new Deoptimizer(isolate,
150 Deoptimizer::DEBUGGER,
156 deoptimizer->FillInputFrame(tos, frame);
159 Deoptimizer::ComputeOutputFrames(deoptimizer);
163 ASSERT_LT(jsframe_index, deoptimizer->jsframe_count());
166 int frame_index = deoptimizer->ConvertJSFrameIndexToFrameIndex(jsframe_index);
170 deoptimizer->output_[frame_index - 1]->GetFrameType() ==
176 deoptimizer->output_[frame_index - construct_offset]->GetFrameType() ==
179 DeoptimizedFrameInfo* info = new DeoptimizedFrameInfo(deoptimizer,
187 deoptimizer->output_[
197 deoptimizer->output_[frame_index]->GetTop());
200 deoptimizer->DeleteFrameDescriptions();
203 deoptimizer->MaterializeHeapNumbersForDebuggerInspectableFrame(
206 // Finished using the deoptimizer instance.
207 delete deoptimizer;
213 void Deoptimizer::DeleteDebuggerInspectableFrame(DeoptimizedFrameInfo* info,
222 void Deoptimizer::GenerateDeoptimizationEntries(MacroAssembler* masm,
240 Deoptimizer::DeoptimizeFunction(function);
249 void Deoptimizer::DeoptimizeAll() {
261 void Deoptimizer::DeoptimizeGlobalObject(JSObject* object) {
269 void Deoptimizer::VisitAllOptimizedFunctionsForContext(
289 void Deoptimizer::VisitAllOptimizedFunctionsForGlobalObject(
305 void Deoptimizer::VisitAllOptimizedFunctions(
324 void Deoptimizer::HandleWeakDeoptimizedCode(
339 void Deoptimizer::ComputeOutputFrames(Deoptimizer* deoptimizer) {
340 deoptimizer->DoComputeOutputFrames();
344 Deoptimizer::Deoptimizer(Isolate* isolate,
396 unsigned id = Deoptimizer::GetDeoptimizationId(
397 info->target_address(), Deoptimizer::EAGER);
426 Deoptimizer::~Deoptimizer() {
431 void Deoptimizer::DeleteFrameDescriptions() {
443 Address Deoptimizer::GetDeoptimizationEntry(int id, BailoutType type) {
464 int Deoptimizer::GetDeoptimizationId(Address addr, BailoutType type) {
484 int Deoptimizer::GetOutputInfo(DeoptimizationOutputData* data,
510 int Deoptimizer::GetDeoptimizedCodeCount(Isolate* isolate) {
524 void Deoptimizer::DoComputeOutputFrames() {
607 void Deoptimizer::MaterializeHeapNumbers() {
625 void Deoptimizer::MaterializeHeapNumbersForDebuggerInspectableFrame(
678 void Deoptimizer::DoTranslateCommand(TranslationIterator* iterator,
864 bool Deoptimizer::DoOsrTranslateCommand(TranslationIterator* iterator,
1042 void Deoptimizer::PatchStackCheckCode(Code* unoptimized_code,
1064 void Deoptimizer::RevertStackCheckCode(Code* unoptimized_code,
1086 unsigned Deoptimizer::ComputeInputFrameSize() const {
1107 unsigned Deoptimizer::ComputeFixedSize(JSFunction* function) const {
1115 unsigned Deoptimizer::ComputeIncomingArgumentSize(JSFunction* function) const {
1123 unsigned Deoptimizer::ComputeOutgoingArgumentSize() const {
1131 Object* Deoptimizer::ComputeLiteral(int index) const {
1139 void Deoptimizer::AddDoubleValue(intptr_t slot_address,
1147 MemoryChunk* Deoptimizer::CreateCode(BailoutType type) {
1150 // references. This is fine because the deoptimizer's code section
1175 Code* Deoptimizer::FindDeoptimizingCodeFromAddress(Address addr) {
1186 void Deoptimizer::RemoveDeoptimizingCode(Code* code) {
1477 Deoptimizer::HandleWeakDeoptimizedCode);
1623 DeoptimizedFrameInfo::DeoptimizedFrameInfo(Deoptimizer* deoptimizer,
1627 FrameDescription* output_frame = deoptimizer->output_[frame_index];
1642 output_frame = deoptimizer->output_[frame_index - 1];