| Index: src/x64/lithium-x64.cc
|
| diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc
|
| index d5d643658903bc62493e428ddeb373b8fb17b318..93a2eb7fcc3ff52c16d1fddddaabdb1e0b8be9e8 100644
|
| --- a/src/x64/lithium-x64.cc
|
| +++ b/src/x64/lithium-x64.cc
|
| @@ -665,7 +665,7 @@ LInstruction* LChunkBuilder::MarkAsCall(LInstruction* instr,
|
|
|
| LInstruction* LChunkBuilder::AssignPointerMap(LInstruction* instr) {
|
| ASSERT(!instr->HasPointerMap());
|
| - instr->set_pointer_map(new(zone()) LPointerMap(position_, zone()));
|
| + instr->set_pointer_map(new(zone()) LPointerMap(zone()));
|
| return instr;
|
| }
|
|
|
| @@ -859,7 +859,6 @@ void LChunkBuilder::DoBasicBlock(HBasicBlock* block, HBasicBlock* next_block) {
|
| void LChunkBuilder::VisitInstruction(HInstruction* current) {
|
| HInstruction* old_current = current_instruction_;
|
| current_instruction_ = current;
|
| - if (current->has_position()) position_ = current->position();
|
|
|
| LInstruction* instr = NULL;
|
| if (current->CanReplaceWithDummyUses()) {
|
| @@ -914,7 +913,6 @@ void LChunkBuilder::VisitInstruction(HInstruction* current) {
|
| }
|
| #endif
|
|
|
| - instr->set_position(position_);
|
| if (FLAG_stress_pointer_maps && !instr->HasPointerMap()) {
|
| instr = AssignPointerMap(instr);
|
| }
|
| @@ -1216,9 +1214,11 @@ LInstruction* LChunkBuilder::DoMathAbs(HUnaryMathOperation* instr) {
|
|
|
|
|
| LInstruction* LChunkBuilder::DoMathLog(HUnaryMathOperation* instr) {
|
| - LOperand* input = UseFixedDouble(instr->value(), xmm1);
|
| + ASSERT(instr->representation().IsDouble());
|
| + ASSERT(instr->value()->representation().IsDouble());
|
| + LOperand* input = UseRegisterAtStart(instr->value());
|
| LMathLog* result = new(zone()) LMathLog(input);
|
| - return MarkAsCall(DefineFixedDouble(result, xmm1), instr);
|
| + return DefineSameAsFirst(result);
|
| }
|
|
|
|
|
| @@ -1822,7 +1822,6 @@ LInstruction* LChunkBuilder::DoChange(HChange* instr) {
|
| // building a stack frame.
|
| if (from.IsTagged()) {
|
| if (to.IsDouble()) {
|
| - info()->MarkAsDeferredCalling();
|
| LOperand* value = UseRegister(instr->value());
|
| LNumberUntagD* res = new(zone()) LNumberUntagD(value);
|
| return AssignEnvironment(DefineAsRegister(res));
|
|
|