Index: src/compiler/code-generator.cc |
diff --git a/src/compiler/code-generator.cc b/src/compiler/code-generator.cc |
index 852aa16e31978ff2489729d401c83caee221bdbd..4327c7e6a3a3761f0d9dfacfec61a02270e98c66 100644 |
--- a/src/compiler/code-generator.cc |
+++ b/src/compiler/code-generator.cc |
@@ -858,12 +858,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 || |