| Index: src/hydrogen-instructions.cc
|
| diff --git a/src/hydrogen-instructions.cc b/src/hydrogen-instructions.cc
|
| index 8b40a249d34372d793adad1c69c6496d82e5bd52..3cdf02a96114d7d58b1c102ff5f2071cba88787a 100644
|
| --- a/src/hydrogen-instructions.cc
|
| +++ b/src/hydrogen-instructions.cc
|
| @@ -1538,17 +1538,8 @@ HInstruction* HForceRepresentation::New(Zone* zone, HValue* context,
|
| HValue* value, Representation representation) {
|
| if (FLAG_fold_constants && value->IsConstant()) {
|
| HConstant* c = HConstant::cast(value);
|
| - if (c->HasNumberValue()) {
|
| - double double_res = c->DoubleValue();
|
| - if (representation.IsDouble()) {
|
| - return HConstant::New(zone, context, double_res);
|
| -
|
| - } else if (representation.CanContainDouble(double_res)) {
|
| - return HConstant::New(zone, context,
|
| - static_cast<int32_t>(double_res),
|
| - representation);
|
| - }
|
| - }
|
| + c = c->CopyToRepresentation(representation, zone);
|
| + if (c != NULL) return c;
|
| }
|
| return new(zone) HForceRepresentation(value, representation);
|
| }
|
|
|