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

Side by Side Diff: src/hydrogen-instructions.cc

Issue 6528013: Implement crankshaft support for pixel array stores. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: review feedback 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
« no previous file with comments | « src/hydrogen-instructions.h ('k') | src/ia32/lithium-codegen-ia32.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 HYDROGEN_CONCRETE_INSTRUCTION_LIST(DEFINE_COMPILE) 50 HYDROGEN_CONCRETE_INSTRUCTION_LIST(DEFINE_COMPILE)
51 #undef DEFINE_COMPILE 51 #undef DEFINE_COMPILE
52 52
53 53
54 const char* Representation::Mnemonic() const { 54 const char* Representation::Mnemonic() const {
55 switch (kind_) { 55 switch (kind_) {
56 case kNone: return "v"; 56 case kNone: return "v";
57 case kTagged: return "t"; 57 case kTagged: return "t";
58 case kDouble: return "d"; 58 case kDouble: return "d";
59 case kInteger32: return "i"; 59 case kInteger32: return "i";
60 default: 60 case kExternal: return "x";
61 case kNumRepresentations:
61 UNREACHABLE(); 62 UNREACHABLE();
62 return NULL; 63 return NULL;
63 } 64 }
65 UNREACHABLE();
66 return NULL;
64 } 67 }
65 68
66 69
67 static int32_t ConvertAndSetOverflow(int64_t result, bool* overflow) { 70 static int32_t ConvertAndSetOverflow(int64_t result, bool* overflow) {
68 if (result > kMaxInt) { 71 if (result > kMaxInt) {
69 *overflow = true; 72 *overflow = true;
70 return kMaxInt; 73 return kMaxInt;
71 } 74 }
72 if (result < kMinInt) { 75 if (result < kMinInt) {
73 *overflow = true; 76 *overflow = true;
(...skipping 1121 matching lines...) Expand 10 before | Expand all | Expand 10 after
1195 1198
1196 void HStoreKeyed::PrintDataTo(StringStream* stream) const { 1199 void HStoreKeyed::PrintDataTo(StringStream* stream) const {
1197 object()->PrintNameTo(stream); 1200 object()->PrintNameTo(stream);
1198 stream->Add("["); 1201 stream->Add("[");
1199 key()->PrintNameTo(stream); 1202 key()->PrintNameTo(stream);
1200 stream->Add("] = "); 1203 stream->Add("] = ");
1201 value()->PrintNameTo(stream); 1204 value()->PrintNameTo(stream);
1202 } 1205 }
1203 1206
1204 1207
1208 void HStorePixelArrayElement::PrintDataTo(StringStream* stream) const {
1209 external_pointer()->PrintNameTo(stream);
1210 stream->Add("[");
1211 key()->PrintNameTo(stream);
1212 stream->Add("] = ");
1213 value()->PrintNameTo(stream);
1214 }
1215
1216
1205 void HLoadGlobal::PrintDataTo(StringStream* stream) const { 1217 void HLoadGlobal::PrintDataTo(StringStream* stream) const {
1206 stream->Add("[%p]", *cell()); 1218 stream->Add("[%p]", *cell());
1207 if (check_hole_value()) stream->Add(" (deleteable/read-only)"); 1219 if (check_hole_value()) stream->Add(" (deleteable/read-only)");
1208 } 1220 }
1209 1221
1210 1222
1211 void HStoreGlobal::PrintDataTo(StringStream* stream) const { 1223 void HStoreGlobal::PrintDataTo(StringStream* stream) const {
1212 stream->Add("[%p] = ", *cell()); 1224 stream->Add("[%p] = ", *cell());
1213 value()->PrintNameTo(stream); 1225 value()->PrintNameTo(stream);
1214 } 1226 }
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after
1479 1491
1480 1492
1481 void HCheckPrototypeMaps::Verify() { 1493 void HCheckPrototypeMaps::Verify() {
1482 HInstruction::Verify(); 1494 HInstruction::Verify();
1483 ASSERT(HasNoUses()); 1495 ASSERT(HasNoUses());
1484 } 1496 }
1485 1497
1486 #endif 1498 #endif
1487 1499
1488 } } // namespace v8::internal 1500 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/hydrogen-instructions.h ('k') | src/ia32/lithium-codegen-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698