Index: src/compiler/code-generator.cc |
diff --git a/src/compiler/code-generator.cc b/src/compiler/code-generator.cc |
index 059e62914c4e463bd7c3c8513d80838897dd75a2..a7c2c65c0856a72fd33f832528c42eca167bd5c9 100644 |
--- a/src/compiler/code-generator.cc |
+++ b/src/compiler/code-generator.cc |
@@ -872,12 +872,18 @@ void CodeGenerator::AddTranslationForOperand(Translation* translation, |
constant_object = |
handle(reinterpret_cast<Smi*>(constant.ToInt32()), isolate()); |
DCHECK(constant_object->IsSmi()); |
+ } else if (type.representation() == MachineRepresentation::kBit) { |
+ if (constant.ToInt32() == 0) { |
+ constant_object = isolate()->factory()->false_value(); |
+ } else { |
+ DCHECK_EQ(1, constant.ToInt32()); |
+ constant_object = isolate()->factory()->true_value(); |
+ } |
} else { |
// TODO(jarin,bmeurer): We currently pass in raw pointers to the |
// JSFunction::entry here. We should really consider fixing this. |
DCHECK(type == MachineType::Int32() || |
type == MachineType::Uint32() || |
- type.representation() == MachineRepresentation::kBit || |
type.representation() == MachineRepresentation::kWord32 || |
type.representation() == MachineRepresentation::kNone); |
DCHECK(type.representation() != MachineRepresentation::kNone || |