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

Side by Side Diff: runtime/vm/intermediate_language_arm.cc

Issue 13818006: Unboxed load/store indexed of Float32x4 (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 8 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 (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_ARM. 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_ARM.
6 #if defined(TARGET_ARCH_ARM) 6 #if defined(TARGET_ARCH_ARM)
7 7
8 #include "vm/intermediate_language.h" 8 #include "vm/intermediate_language.h"
9 9
10 #include "lib/error.h" 10 #include "lib/error.h"
(...skipping 1246 matching lines...) Expand 10 before | Expand all | Expand 10 after
1257 UNIMPLEMENTED(); 1257 UNIMPLEMENTED();
1258 return NULL; 1258 return NULL;
1259 } 1259 }
1260 1260
1261 1261
1262 void UnboxDoubleInstr::EmitNativeCode(FlowGraphCompiler* compiler) { 1262 void UnboxDoubleInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
1263 UNIMPLEMENTED(); 1263 UNIMPLEMENTED();
1264 } 1264 }
1265 1265
1266 1266
1267 LocationSummary* BoxFloat32x4Instr::MakeLocationSummary() const {
1268 UNIMPLEMENTED();
1269 return NULL;
1270 }
1271
1272
1273 void BoxFloat32x4Instr::EmitNativeCode(FlowGraphCompiler* compiler) {
1274 UNIMPLEMENTED();
1275 }
1276
1277
1278 LocationSummary* UnboxFloat32x4Instr::MakeLocationSummary() const {
1279 UNIMPLEMENTED();
1280 return NULL;
1281 }
1282
1283
1284 void UnboxFloat32x4Instr::EmitNativeCode(FlowGraphCompiler* compiler) {
1285 UNIMPLEMENTED();
1286 }
1287
1288
1267 LocationSummary* BinaryDoubleOpInstr::MakeLocationSummary() const { 1289 LocationSummary* BinaryDoubleOpInstr::MakeLocationSummary() const {
1268 UNIMPLEMENTED(); 1290 UNIMPLEMENTED();
1269 return NULL; 1291 return NULL;
1270 } 1292 }
1271 1293
1272 1294
1273 void BinaryDoubleOpInstr::EmitNativeCode(FlowGraphCompiler* compiler) { 1295 void BinaryDoubleOpInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
1274 UNIMPLEMENTED(); 1296 UNIMPLEMENTED();
1275 } 1297 }
1276 1298
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
1428 1450
1429 void CheckSmiInstr::EmitNativeCode(FlowGraphCompiler* compiler) { 1451 void CheckSmiInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
1430 Register value = locs()->in(0).reg(); 1452 Register value = locs()->in(0).reg();
1431 Label* deopt = compiler->AddDeoptStub(deopt_id(), 1453 Label* deopt = compiler->AddDeoptStub(deopt_id(),
1432 kDeoptCheckSmi); 1454 kDeoptCheckSmi);
1433 __ tst(value, ShifterOperand(kSmiTagMask)); 1455 __ tst(value, ShifterOperand(kSmiTagMask));
1434 __ b(deopt, NE); 1456 __ b(deopt, NE);
1435 } 1457 }
1436 1458
1437 1459
1460 LocationSummary* CheckNonSmiInstr::MakeLocationSummary() const {
1461 const intptr_t kNumInputs = 1;
1462 const intptr_t kNumTemps = 0;
1463 LocationSummary* summary =
1464 new LocationSummary(kNumInputs, kNumTemps, LocationSummary::kNoCall);
1465 summary->set_in(0, Location::RequiresRegister());
1466 return summary;
1467 }
1468
1469
1470 void CheckNonSmiInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
1471 Register value = locs()->in(0).reg();
1472 Label* deopt = compiler->AddDeoptStub(deopt_id(),
1473 kDeoptCheckNonSmi);
1474 __ tst(value, ShifterOperand(kSmiTagMask));
1475 __ b(deopt, EQ);
1476 }
1477
1478
1438 LocationSummary* CheckArrayBoundInstr::MakeLocationSummary() const { 1479 LocationSummary* CheckArrayBoundInstr::MakeLocationSummary() const {
1439 UNIMPLEMENTED(); 1480 UNIMPLEMENTED();
1440 return NULL; 1481 return NULL;
1441 } 1482 }
1442 1483
1443 1484
1444 void CheckArrayBoundInstr::EmitNativeCode(FlowGraphCompiler* compiler) { 1485 void CheckArrayBoundInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
1445 UNIMPLEMENTED(); 1486 UNIMPLEMENTED();
1446 } 1487 }
1447 1488
(...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after
1755 1796
1756 1797
1757 void CreateClosureInstr::EmitNativeCode(FlowGraphCompiler* compiler) { 1798 void CreateClosureInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
1758 UNIMPLEMENTED(); 1799 UNIMPLEMENTED();
1759 } 1800 }
1760 1801
1761 } // namespace dart 1802 } // namespace dart
1762 1803
1763 #endif // defined TARGET_ARCH_ARM 1804 #endif // defined TARGET_ARCH_ARM
1764 1805
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698