Index: src/mips/deoptimizer-mips.cc |
diff --git a/src/mips/deoptimizer-mips.cc b/src/mips/deoptimizer-mips.cc |
index b57d2d3a964c8cbfa9e777219e0704e9aff2d81e..7302c2f6ddca886596fe3890f6ad06592934a422 100644 |
--- a/src/mips/deoptimizer-mips.cc |
+++ b/src/mips/deoptimizer-mips.cc |
@@ -201,11 +201,11 @@ void Deoptimizer::RevertStackCheckCodeAt(Code* unoptimized_code, |
} |
-static int LookupBailoutId(DeoptimizationInputData* data, unsigned ast_id) { |
+static int LookupBailoutId(DeoptimizationInputData* data, BailoutId ast_id) { |
ByteArray* translations = data->TranslationByteArray(); |
int length = data->DeoptCount(); |
for (int i = 0; i < length; i++) { |
- if (static_cast<unsigned>(data->AstId(i)->value()) == ast_id) { |
+ if (data->AstId(i) == ast_id) { |
TranslationIterator it(translations, data->TranslationIndex(i)->value()); |
int value = it.Next(); |
ASSERT(Translation::BEGIN == static_cast<Translation::Opcode>(value)); |
@@ -224,7 +224,7 @@ void Deoptimizer::DoComputeOsrOutputFrame() { |
optimized_code_->deoptimization_data()); |
unsigned ast_id = data->OsrAstId()->value(); |
- int bailout_id = LookupBailoutId(data, ast_id); |
+ int bailout_id = LookupBailoutId(data, BailoutId(ast_id)); |
unsigned translation_index = data->TranslationIndex(bailout_id)->value(); |
ByteArray* translations = data->TranslationByteArray(); |
@@ -587,7 +587,7 @@ void Deoptimizer::DoComputeConstructStubFrame(TranslationIterator* iterator, |
void Deoptimizer::DoComputeJSFrame(TranslationIterator* iterator, |
int frame_index) { |
// Read the ast node id, function, and frame height for this output frame. |
- int node_id = iterator->Next(); |
+ BailoutId node_id = BailoutId(iterator->Next()); |
JSFunction* function; |
if (frame_index != 0) { |
function = JSFunction::cast(ComputeLiteral(iterator->Next())); |
@@ -602,7 +602,7 @@ void Deoptimizer::DoComputeJSFrame(TranslationIterator* iterator, |
if (FLAG_trace_deopt) { |
PrintF(" translating "); |
function->PrintName(); |
- PrintF(" => node=%d, height=%d\n", node_id, height_in_bytes); |
+ PrintF(" => node=%d, height=%d\n", node_id.ToInt(), height_in_bytes); |
} |
// The 'fixed' part of the frame consists of the incoming parameters and |