| Index: src/x64/lithium-x64.cc
|
| ===================================================================
|
| --- src/x64/lithium-x64.cc (revision 6346)
|
| +++ src/x64/lithium-x64.cc (working copy)
|
| @@ -571,6 +571,13 @@
|
| }
|
|
|
|
|
| +LOperand* LChunkBuilder::UseAny(HValue* value) {
|
| + return value->IsConstant()
|
| + ? chunk_->DefineConstantOperand(HConstant::cast(value))
|
| + : Use(value, new LUnallocated(LUnallocated::ANY));
|
| +}
|
| +
|
| +
|
| LOperand* LChunkBuilder::Use(HValue* value, LUnallocated* operand) {
|
| if (value->EmitAtUses()) {
|
| HInstruction* instr = HInstruction::cast(value);
|
| @@ -863,11 +870,7 @@
|
| } else if (value->IsPushArgument()) {
|
| op = new LArgument(argument_index++);
|
| } else {
|
| - op = UseOrConstant(value);
|
| - if (op->IsUnallocated()) {
|
| - LUnallocated* unalloc = LUnallocated::cast(op);
|
| - unalloc->set_policy(LUnallocated::ANY);
|
| - }
|
| + op = UseAny(value);
|
| }
|
| result->AddValue(op, value->representation());
|
| }
|
|
|