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

Side by Side Diff: test/cctest/compiler/test-simplified-lowering.cc

Issue 539903002: Move StructuredMachineAssembler into cctest suite. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Add a TODO. Created 6 years, 3 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 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <limits> 5 #include <limits>
6 6
7 #include "src/compiler/access-builder.h" 7 #include "src/compiler/access-builder.h"
8 #include "src/compiler/control-builders.h" 8 #include "src/compiler/control-builders.h"
9 #include "src/compiler/generic-node-inl.h" 9 #include "src/compiler/generic-node-inl.h"
10 #include "src/compiler/graph-visualizer.h" 10 #include "src/compiler/graph-visualizer.h"
11 #include "src/compiler/node-properties-inl.h" 11 #include "src/compiler/node-properties-inl.h"
12 #include "src/compiler/pipeline.h" 12 #include "src/compiler/pipeline.h"
13 #include "src/compiler/representation-change.h" 13 #include "src/compiler/representation-change.h"
14 #include "src/compiler/simplified-lowering.h" 14 #include "src/compiler/simplified-lowering.h"
15 #include "src/compiler/simplified-node-factory.h"
16 #include "src/compiler/typer.h" 15 #include "src/compiler/typer.h"
17 #include "src/compiler/verifier.h" 16 #include "src/compiler/verifier.h"
18 #include "src/execution.h" 17 #include "src/execution.h"
19 #include "src/parser.h" 18 #include "src/parser.h"
20 #include "src/rewriter.h" 19 #include "src/rewriter.h"
21 #include "src/scopes.h" 20 #include "src/scopes.h"
22 #include "test/cctest/cctest.h" 21 #include "test/cctest/cctest.h"
23 #include "test/cctest/compiler/codegen-tester.h" 22 #include "test/cctest/compiler/codegen-tester.h"
24 #include "test/cctest/compiler/graph-builder-tester.h" 23 #include "test/cctest/compiler/graph-builder-tester.h"
25 #include "test/cctest/compiler/value-helper.h" 24 #include "test/cctest/compiler/value-helper.h"
(...skipping 423 matching lines...) Expand 10 before | Expand all | Expand 10 after
449 t.GenerateCode(); 448 t.GenerateCode();
450 449
451 if (Pipeline::SupportedTarget()) { 450 if (Pipeline::SupportedTarget()) {
452 Object* result = t.Call(); 451 Object* result = t.Call();
453 CHECK_EQ(t.isolate()->heap()->true_value(), result); 452 CHECK_EQ(t.isolate()->heap()->true_value(), result);
454 } 453 }
455 } 454 }
456 455
457 // Create and run code that copies the elements from {this} to {that}. 456 // Create and run code that copies the elements from {this} to {that}.
458 void RunCopyElements(AccessTester<E>* that) { 457 void RunCopyElements(AccessTester<E>* that) {
458 // TODO(titzer): Rewrite this test without StructuredGraphBuilder support.
459 #if 0
459 SimplifiedLoweringTester<Object*> t; 460 SimplifiedLoweringTester<Object*> t;
460 461
461 Node* one = t.Int32Constant(1); 462 Node* one = t.Int32Constant(1);
462 Node* index = t.Int32Constant(0); 463 Node* index = t.Int32Constant(0);
463 Node* limit = t.Int32Constant(static_cast<int>(num_elements)); 464 Node* limit = t.Int32Constant(static_cast<int>(num_elements));
464 t.environment()->Push(index); 465 t.environment()->Push(index);
465 Node* src = this->GetBaseNode(&t); 466 Node* src = this->GetBaseNode(&t);
466 Node* dst = that->GetBaseNode(&t); 467 Node* dst = that->GetBaseNode(&t);
467 { 468 {
468 LoopBuilder loop(&t); 469 LoopBuilder loop(&t);
(...skipping 15 matching lines...) Expand all
484 } 485 }
485 index = t.environment()->Pop(); 486 index = t.environment()->Pop();
486 t.Return(t.jsgraph.TrueConstant()); 487 t.Return(t.jsgraph.TrueConstant());
487 t.LowerAllNodes(); 488 t.LowerAllNodes();
488 t.GenerateCode(); 489 t.GenerateCode();
489 490
490 if (Pipeline::SupportedTarget()) { 491 if (Pipeline::SupportedTarget()) {
491 Object* result = t.Call(); 492 Object* result = t.Call();
492 CHECK_EQ(t.isolate()->heap()->true_value(), result); 493 CHECK_EQ(t.isolate()->heap()->true_value(), result);
493 } 494 }
495 #endif
494 } 496 }
495 497
496 E GetElement(int index) { 498 E GetElement(int index) {
497 BoundsCheck(index); 499 BoundsCheck(index);
498 if (tagged) { 500 if (tagged) {
499 E* raw = reinterpret_cast<E*>(tagged_array->GetDataStartAddress()); 501 E* raw = reinterpret_cast<E*>(tagged_array->GetDataStartAddress());
500 return raw[index]; 502 return raw[index];
501 } else { 503 } else {
502 return untagged_array[index]; 504 return untagged_array[index];
503 } 505 }
(...skipping 907 matching lines...) Expand 10 before | Expand all | Expand 10 after
1411 1413
1412 Node* store = t.graph()->NewNode(t.simplified()->StoreField(access), t.p0, 1414 Node* store = t.graph()->NewNode(t.simplified()->StoreField(access), t.p0,
1413 t.p1, t.start, t.start); 1415 t.p1, t.start, t.start);
1414 t.Effect(store); 1416 t.Effect(store);
1415 t.Lower(); 1417 t.Lower();
1416 1418
1417 CHECK_EQ(IrOpcode::kStore, store->opcode()); 1419 CHECK_EQ(IrOpcode::kStore, store->opcode());
1418 CHECK_EQ(t.p0, store->InputAt(0)); 1420 CHECK_EQ(t.p0, store->InputAt(0));
1419 CheckChangeOf(IrOpcode::kChangeTaggedToFloat64, t.p1, store->InputAt(2)); 1421 CheckChangeOf(IrOpcode::kChangeTaggedToFloat64, t.p1, store->InputAt(2));
1420 } 1422 }
OLDNEW
« no previous file with comments | « test/cctest/compiler/test-js-context-specialization.cc ('k') | test/cctest/compiler/test-structured-machine-assembler.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698