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

Side by Side Diff: test/compiler-unittests/change-lowering-unittest.cc

Issue 513803002: Fix expectations of lowering tests. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: 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
« no previous file with comments | « src/compiler/simplified-operator-reducer.cc ('k') | test/compiler-unittests/graph-unittest.h » ('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 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 "src/compiler/change-lowering.h" 5 #include "src/compiler/change-lowering.h"
6 #include "src/compiler/js-graph.h" 6 #include "src/compiler/js-graph.h"
7 #include "src/compiler/node-properties-inl.h" 7 #include "src/compiler/node-properties-inl.h"
8 #include "src/compiler/simplified-operator.h" 8 #include "src/compiler/simplified-operator.h"
9 #include "src/compiler/typer.h" 9 #include "src/compiler/typer.h"
10 #include "test/compiler-unittests/graph-unittest.h" 10 #include "test/compiler-unittests/graph-unittest.h"
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after
262 262
263 Node* val = Parameter(0); 263 Node* val = Parameter(0);
264 Node* node = graph()->NewNode(simplified()->ChangeTaggedToInt32(), val); 264 Node* node = graph()->NewNode(simplified()->ChangeTaggedToInt32(), val);
265 Reduction reduction = Reduce(node); 265 Reduction reduction = Reduce(node);
266 ASSERT_TRUE(reduction.Changed()); 266 ASSERT_TRUE(reduction.Changed());
267 267
268 Node* phi = reduction.replacement(); 268 Node* phi = reduction.replacement();
269 Capture<Node*> branch, if_true; 269 Capture<Node*> branch, if_true;
270 EXPECT_THAT( 270 EXPECT_THAT(
271 phi, 271 phi,
272 IsPhi(IsTruncateFloat64ToInt32(IsLoad( 272 IsPhi(IsChangeFloat64ToInt32(IsLoad(
273 kMachFloat64, val, IsInt32Constant(HeapNumberValueOffset()), 273 kMachFloat64, val, IsInt32Constant(HeapNumberValueOffset()),
274 IsControlEffect(CaptureEq(&if_true)))), 274 IsControlEffect(CaptureEq(&if_true)))),
275 IsWord32Sar(val, IsInt32Constant(SmiShiftAmount())), 275 IsWord32Sar(val, IsInt32Constant(SmiShiftAmount())),
276 IsMerge(AllOf(CaptureEq(&if_true), IsIfTrue(CaptureEq(&branch))), 276 IsMerge(AllOf(CaptureEq(&if_true), IsIfTrue(CaptureEq(&branch))),
277 IsIfFalse(AllOf( 277 IsIfFalse(AllOf(
278 CaptureEq(&branch), 278 CaptureEq(&branch),
279 IsBranch(IsWord32And(val, IsInt32Constant(kSmiTagMask)), 279 IsBranch(IsWord32And(val, IsInt32Constant(kSmiTagMask)),
280 graph()->start())))))); 280 graph()->start()))))));
281 } 281 }
282 282
283 283
284 TARGET_TEST_F(ChangeLowering32Test, ChangeTaggedToUint32) { 284 TARGET_TEST_F(ChangeLowering32Test, ChangeTaggedToUint32) {
285 STATIC_ASSERT(kSmiTag == 0); 285 STATIC_ASSERT(kSmiTag == 0);
286 STATIC_ASSERT(kSmiTagSize == 1); 286 STATIC_ASSERT(kSmiTagSize == 1);
287 287
288 Node* val = Parameter(0); 288 Node* val = Parameter(0);
289 Node* node = graph()->NewNode(simplified()->ChangeTaggedToUint32(), val); 289 Node* node = graph()->NewNode(simplified()->ChangeTaggedToUint32(), val);
290 Reduction reduction = Reduce(node); 290 Reduction reduction = Reduce(node);
291 ASSERT_TRUE(reduction.Changed()); 291 ASSERT_TRUE(reduction.Changed());
292 292
293 Node* phi = reduction.replacement(); 293 Node* phi = reduction.replacement();
294 Capture<Node*> branch, if_true; 294 Capture<Node*> branch, if_true;
295 EXPECT_THAT( 295 EXPECT_THAT(
296 phi, 296 phi,
297 IsPhi(IsTruncateFloat64ToInt32(IsLoad( 297 IsPhi(IsChangeFloat64ToUint32(IsLoad(
298 kMachFloat64, val, IsInt32Constant(HeapNumberValueOffset()), 298 kMachFloat64, val, IsInt32Constant(HeapNumberValueOffset()),
299 IsControlEffect(CaptureEq(&if_true)))), 299 IsControlEffect(CaptureEq(&if_true)))),
300 IsWord32Sar(val, IsInt32Constant(SmiShiftAmount())), 300 IsWord32Sar(val, IsInt32Constant(SmiShiftAmount())),
301 IsMerge(AllOf(CaptureEq(&if_true), IsIfTrue(CaptureEq(&branch))), 301 IsMerge(AllOf(CaptureEq(&if_true), IsIfTrue(CaptureEq(&branch))),
302 IsIfFalse(AllOf( 302 IsIfFalse(AllOf(
303 CaptureEq(&branch), 303 CaptureEq(&branch),
304 IsBranch(IsWord32And(val, IsInt32Constant(kSmiTagMask)), 304 IsBranch(IsWord32And(val, IsInt32Constant(kSmiTagMask)),
305 graph()->start())))))); 305 graph()->start()))))));
306 } 306 }
307 307
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
396 396
397 Node* val = Parameter(0); 397 Node* val = Parameter(0);
398 Node* node = graph()->NewNode(simplified()->ChangeTaggedToInt32(), val); 398 Node* node = graph()->NewNode(simplified()->ChangeTaggedToInt32(), val);
399 Reduction reduction = Reduce(node); 399 Reduction reduction = Reduce(node);
400 ASSERT_TRUE(reduction.Changed()); 400 ASSERT_TRUE(reduction.Changed());
401 401
402 Node* phi = reduction.replacement(); 402 Node* phi = reduction.replacement();
403 Capture<Node*> branch, if_true; 403 Capture<Node*> branch, if_true;
404 EXPECT_THAT( 404 EXPECT_THAT(
405 phi, 405 phi,
406 IsPhi(IsTruncateFloat64ToInt32(IsLoad( 406 IsPhi(IsChangeFloat64ToInt32(IsLoad(
407 kMachFloat64, val, IsInt32Constant(HeapNumberValueOffset()), 407 kMachFloat64, val, IsInt32Constant(HeapNumberValueOffset()),
408 IsControlEffect(CaptureEq(&if_true)))), 408 IsControlEffect(CaptureEq(&if_true)))),
409 IsTruncateInt64ToInt32( 409 IsTruncateInt64ToInt32(
410 IsWord64Sar(val, IsInt32Constant(SmiShiftAmount()))), 410 IsWord64Sar(val, IsInt32Constant(SmiShiftAmount()))),
411 IsMerge(AllOf(CaptureEq(&if_true), IsIfTrue(CaptureEq(&branch))), 411 IsMerge(AllOf(CaptureEq(&if_true), IsIfTrue(CaptureEq(&branch))),
412 IsIfFalse(AllOf( 412 IsIfFalse(AllOf(
413 CaptureEq(&branch), 413 CaptureEq(&branch),
414 IsBranch(IsWord64And(val, IsInt32Constant(kSmiTagMask)), 414 IsBranch(IsWord64And(val, IsInt32Constant(kSmiTagMask)),
415 graph()->start())))))); 415 graph()->start()))))));
416 } 416 }
417 417
418 418
419 TARGET_TEST_F(ChangeLowering64Test, ChangeTaggedToUint32) { 419 TARGET_TEST_F(ChangeLowering64Test, ChangeTaggedToUint32) {
420 STATIC_ASSERT(kSmiTag == 0); 420 STATIC_ASSERT(kSmiTag == 0);
421 STATIC_ASSERT(kSmiTagSize == 1); 421 STATIC_ASSERT(kSmiTagSize == 1);
422 422
423 Node* val = Parameter(0); 423 Node* val = Parameter(0);
424 Node* node = graph()->NewNode(simplified()->ChangeTaggedToUint32(), val); 424 Node* node = graph()->NewNode(simplified()->ChangeTaggedToUint32(), val);
425 Reduction reduction = Reduce(node); 425 Reduction reduction = Reduce(node);
426 ASSERT_TRUE(reduction.Changed()); 426 ASSERT_TRUE(reduction.Changed());
427 427
428 Node* phi = reduction.replacement(); 428 Node* phi = reduction.replacement();
429 Capture<Node*> branch, if_true; 429 Capture<Node*> branch, if_true;
430 EXPECT_THAT( 430 EXPECT_THAT(
431 phi, 431 phi,
432 IsPhi(IsTruncateFloat64ToInt32(IsLoad( 432 IsPhi(IsChangeFloat64ToUint32(IsLoad(
433 kMachFloat64, val, IsInt32Constant(HeapNumberValueOffset()), 433 kMachFloat64, val, IsInt32Constant(HeapNumberValueOffset()),
434 IsControlEffect(CaptureEq(&if_true)))), 434 IsControlEffect(CaptureEq(&if_true)))),
435 IsTruncateInt64ToInt32( 435 IsTruncateInt64ToInt32(
436 IsWord64Sar(val, IsInt32Constant(SmiShiftAmount()))), 436 IsWord64Sar(val, IsInt32Constant(SmiShiftAmount()))),
437 IsMerge(AllOf(CaptureEq(&if_true), IsIfTrue(CaptureEq(&branch))), 437 IsMerge(AllOf(CaptureEq(&if_true), IsIfTrue(CaptureEq(&branch))),
438 IsIfFalse(AllOf( 438 IsIfFalse(AllOf(
439 CaptureEq(&branch), 439 CaptureEq(&branch),
440 IsBranch(IsWord64And(val, IsInt32Constant(kSmiTagMask)), 440 IsBranch(IsWord64And(val, IsInt32Constant(kSmiTagMask)),
441 graph()->start())))))); 441 graph()->start()))))));
442 } 442 }
(...skipping 26 matching lines...) Expand all
469 IsIfTrue(AllOf(CaptureEq(&branch), 469 IsIfTrue(AllOf(CaptureEq(&branch),
470 IsBranch(IsUint32LessThanOrEqual( 470 IsBranch(IsUint32LessThanOrEqual(
471 val, IsInt32Constant(SmiMaxValue())), 471 val, IsInt32Constant(SmiMaxValue())),
472 graph()->start()))), 472 graph()->start()))),
473 AllOf(CaptureEq(&if_false), IsIfFalse(CaptureEq(&branch)))))); 473 AllOf(CaptureEq(&if_false), IsIfFalse(CaptureEq(&branch))))));
474 } 474 }
475 475
476 } // namespace compiler 476 } // namespace compiler
477 } // namespace internal 477 } // namespace internal
478 } // namespace v8 478 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/simplified-operator-reducer.cc ('k') | test/compiler-unittests/graph-unittest.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698