Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: src/arm/lithium-arm.cc

Issue 6368053: Implements DoubleToI on ARM. Refactor some VFP code at the same time and... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: Created 9 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 1496 matching lines...) Expand 10 before | Expand all | Expand 10 after
1507 1507
1508 // Make sure that the temp and result_temp registers are 1508 // Make sure that the temp and result_temp registers are
1509 // different. 1509 // different.
1510 LUnallocated* result_temp = TempRegister(); 1510 LUnallocated* result_temp = TempRegister();
1511 LNumberTagD* result = new LNumberTagD(value, temp1, temp2); 1511 LNumberTagD* result = new LNumberTagD(value, temp1, temp2);
1512 Define(result, result_temp); 1512 Define(result, result_temp);
1513 return AssignPointerMap(result); 1513 return AssignPointerMap(result);
1514 } else { 1514 } else {
1515 ASSERT(to.IsInteger32()); 1515 ASSERT(to.IsInteger32());
1516 LOperand* value = UseRegister(instr->value()); 1516 LOperand* value = UseRegister(instr->value());
1517 LDoubleToI* res = new LDoubleToI(value); 1517 LDoubleToI* res = new LDoubleToI(value, TempRegister());
1518 return AssignEnvironment(DefineAsRegister(res)); 1518 return AssignEnvironment(DefineAsRegister(res));
1519 } 1519 }
1520 } else if (from.IsInteger32()) { 1520 } else if (from.IsInteger32()) {
1521 if (to.IsTagged()) { 1521 if (to.IsTagged()) {
1522 HValue* val = instr->value(); 1522 HValue* val = instr->value();
1523 LOperand* value = UseRegister(val); 1523 LOperand* value = UseRegister(val);
1524 if (val->HasRange() && val->range()->IsInSmiRange()) { 1524 if (val->HasRange() && val->range()->IsInSmiRange()) {
1525 return DefineSameAsFirst(new LSmiTag(value)); 1525 return DefineSameAsFirst(new LSmiTag(value));
1526 } else { 1526 } else {
1527 LNumberTagI* result = new LNumberTagI(value); 1527 LNumberTagI* result = new LNumberTagI(value);
(...skipping 345 matching lines...) Expand 10 before | Expand all | Expand 10 after
1873 1873
1874 1874
1875 LInstruction* LChunkBuilder::DoLeaveInlined(HLeaveInlined* instr) { 1875 LInstruction* LChunkBuilder::DoLeaveInlined(HLeaveInlined* instr) {
1876 HEnvironment* outer = current_block_->last_environment()->outer(); 1876 HEnvironment* outer = current_block_->last_environment()->outer();
1877 current_block_->UpdateEnvironment(outer); 1877 current_block_->UpdateEnvironment(outer);
1878 return NULL; 1878 return NULL;
1879 } 1879 }
1880 1880
1881 1881
1882 } } // namespace v8::internal 1882 } } // namespace v8::internal
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698