| Index: src/compiler/code-generator.cc
|
| diff --git a/src/compiler/code-generator.cc b/src/compiler/code-generator.cc
|
| index 114190c3586fa58883e641b6cadbc33f3e965c3d..dd6565c17b58dba25cd3c7cedb9e48d065ee8ffa 100644
|
| --- a/src/compiler/code-generator.cc
|
| +++ b/src/compiler/code-generator.cc
|
| @@ -528,10 +528,9 @@ void CodeGenerator::AddTranslationForOperand(Translation* translation,
|
| InstructionOperand* op,
|
| MachineType type) {
|
| if (op->IsStackSlot()) {
|
| - // TODO(jarin) kMachBool and kRepBit should materialize true and false
|
| - // rather than creating an int value.
|
| - if (type == kMachBool || type == kRepBit || type == kMachInt32 ||
|
| - type == kMachInt8 || type == kMachInt16) {
|
| + if (type == kMachBool || type == kRepBit) {
|
| + translation->StoreBoolStackSlot(StackSlotOperand::cast(op)->index());
|
| + } else if (type == kMachInt32 || type == kMachInt8 || type == kMachInt16) {
|
| translation->StoreInt32StackSlot(StackSlotOperand::cast(op)->index());
|
| } else if (type == kMachUint32 || type == kMachUint16 ||
|
| type == kMachUint8) {
|
| @@ -547,10 +546,9 @@ void CodeGenerator::AddTranslationForOperand(Translation* translation,
|
| DoubleStackSlotOperand::cast(op)->index());
|
| } else if (op->IsRegister()) {
|
| InstructionOperandConverter converter(this, instr);
|
| - // TODO(jarin) kMachBool and kRepBit should materialize true and false
|
| - // rather than creating an int value.
|
| - if (type == kMachBool || type == kRepBit || type == kMachInt32 ||
|
| - type == kMachInt8 || type == kMachInt16) {
|
| + if (type == kMachBool || type == kRepBit) {
|
| + translation->StoreBoolRegister(converter.ToRegister(op));
|
| + } else if (type == kMachInt32 || type == kMachInt8 || type == kMachInt16) {
|
| translation->StoreInt32Register(converter.ToRegister(op));
|
| } else if (type == kMachUint32 || type == kMachUint16 ||
|
| type == kMachUint8) {
|
|
|