Index: src/ia32/deoptimizer-ia32.cc |
diff --git a/src/ia32/deoptimizer-ia32.cc b/src/ia32/deoptimizer-ia32.cc |
index 32421aecdb54b85b6bf151f352afd05ad8210e7b..fc324d2f8650e5b83a396600792daaa411454af8 100644 |
--- a/src/ia32/deoptimizer-ia32.cc |
+++ b/src/ia32/deoptimizer-ia32.cc |
@@ -299,11 +299,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)); |
@@ -325,7 +325,7 @@ void Deoptimizer::DoComputeOsrOutputFrame() { |
// the ast id. Confusing. |
ASSERT(bailout_id_ == ast_id); |
- 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(); |
@@ -696,7 +696,7 @@ void Deoptimizer::DoComputeConstructStubFrame(TranslationIterator* iterator, |
void Deoptimizer::DoComputeJSFrame(TranslationIterator* iterator, |
int frame_index) { |
- int node_id = iterator->Next(); |
+ BailoutId node_id = BailoutId(iterator->Next()); |
JSFunction* function; |
if (frame_index != 0) { |
function = JSFunction::cast(ComputeLiteral(iterator->Next())); |
@@ -711,7 +711,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 |