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

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

Issue 6546036: Combine typed and pixel arrays. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: fix wrong external element call 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 1436 matching lines...) Expand 10 before | Expand all | Expand 10 after
1447 return DefineAsRegister(new LJSArrayLength(array)); 1447 return DefineAsRegister(new LJSArrayLength(array));
1448 } 1448 }
1449 1449
1450 1450
1451 LInstruction* LChunkBuilder::DoFixedArrayLength(HFixedArrayLength* instr) { 1451 LInstruction* LChunkBuilder::DoFixedArrayLength(HFixedArrayLength* instr) {
1452 LOperand* array = UseRegisterAtStart(instr->value()); 1452 LOperand* array = UseRegisterAtStart(instr->value());
1453 return DefineAsRegister(new LFixedArrayLength(array)); 1453 return DefineAsRegister(new LFixedArrayLength(array));
1454 } 1454 }
1455 1455
1456 1456
1457 LInstruction* LChunkBuilder::DoPixelArrayLength(HPixelArrayLength* instr) { 1457 LInstruction* LChunkBuilder::DoExternalArrayLength(
1458 HExternalArrayLength* instr) {
1458 LOperand* array = UseRegisterAtStart(instr->value()); 1459 LOperand* array = UseRegisterAtStart(instr->value());
1459 return DefineAsRegister(new LPixelArrayLength(array)); 1460 return DefineAsRegister(new LExternalArrayLength(array));
1460 } 1461 }
1461 1462
1462 1463
1463 LInstruction* LChunkBuilder::DoValueOf(HValueOf* instr) { 1464 LInstruction* LChunkBuilder::DoValueOf(HValueOf* instr) {
1464 Abort("Unimplemented: %s", "DoValueOf"); 1465 Abort("Unimplemented: %s", "DoValueOf");
1465 return NULL; 1466 return NULL;
1466 } 1467 }
1467 1468
1468 1469
1469 LInstruction* LChunkBuilder::DoBoundsCheck(HBoundsCheck* instr) { 1470 LInstruction* LChunkBuilder::DoBoundsCheck(HBoundsCheck* instr) {
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
1653 new LLoadFunctionPrototype(UseRegister(instr->function())))); 1654 new LLoadFunctionPrototype(UseRegister(instr->function()))));
1654 } 1655 }
1655 1656
1656 1657
1657 LInstruction* LChunkBuilder::DoLoadElements(HLoadElements* instr) { 1658 LInstruction* LChunkBuilder::DoLoadElements(HLoadElements* instr) {
1658 LOperand* input = UseRegisterAtStart(instr->value()); 1659 LOperand* input = UseRegisterAtStart(instr->value());
1659 return DefineAsRegister(new LLoadElements(input)); 1660 return DefineAsRegister(new LLoadElements(input));
1660 } 1661 }
1661 1662
1662 1663
1663 LInstruction* LChunkBuilder::DoLoadPixelArrayExternalPointer( 1664 LInstruction* LChunkBuilder::DoLoadExternalArrayPointer(
1664 HLoadPixelArrayExternalPointer* instr) { 1665 HLoadExternalArrayPointer* instr) {
1665 LOperand* input = UseRegisterAtStart(instr->value()); 1666 LOperand* input = UseRegisterAtStart(instr->value());
1666 return DefineAsRegister(new LLoadPixelArrayExternalPointer(input)); 1667 return DefineAsRegister(new LLoadExternalArrayPointer(input));
1667 } 1668 }
1668 1669
1669 1670
1670 LInstruction* LChunkBuilder::DoLoadKeyedFastElement( 1671 LInstruction* LChunkBuilder::DoLoadKeyedFastElement(
1671 HLoadKeyedFastElement* instr) { 1672 HLoadKeyedFastElement* instr) {
1672 ASSERT(instr->representation().IsTagged()); 1673 ASSERT(instr->representation().IsTagged());
1673 ASSERT(instr->key()->representation().IsInteger32()); 1674 ASSERT(instr->key()->representation().IsInteger32());
1674 LOperand* obj = UseRegisterAtStart(instr->object()); 1675 LOperand* obj = UseRegisterAtStart(instr->object());
1675 LOperand* key = UseRegisterAtStart(instr->key()); 1676 LOperand* key = UseRegisterAtStart(instr->key());
1676 LLoadKeyedFastElement* result = new LLoadKeyedFastElement(obj, key); 1677 LLoadKeyedFastElement* result = new LLoadKeyedFastElement(obj, key);
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after
1909 1910
1910 LInstruction* LChunkBuilder::DoLeaveInlined(HLeaveInlined* instr) { 1911 LInstruction* LChunkBuilder::DoLeaveInlined(HLeaveInlined* instr) {
1911 HEnvironment* outer = current_block_->last_environment()->outer(); 1912 HEnvironment* outer = current_block_->last_environment()->outer();
1912 current_block_->UpdateEnvironment(outer); 1913 current_block_->UpdateEnvironment(outer);
1913 return NULL; 1914 return NULL;
1914 } 1915 }
1915 1916
1916 } } // namespace v8::internal 1917 } } // namespace v8::internal
1917 1918
1918 #endif // V8_TARGET_ARCH_X64 1919 #endif // V8_TARGET_ARCH_X64
OLDNEW
« src/objects.cc ('K') | « src/x64/lithium-x64.h ('k') | src/x64/stub-cache-x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698