| OLD | NEW |
| 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/v8.h" | 5 #include "src/v8.h" |
| 6 | 6 |
| 7 #include "test/cctest/cctest.h" | 7 #include "test/cctest/cctest.h" |
| 8 #include "test/cctest/compiler/codegen-tester.h" | 8 #include "test/cctest/compiler/codegen-tester.h" |
| 9 #include "test/cctest/compiler/value-helper.h" | 9 #include "test/cctest/compiler/value-helper.h" |
| 10 | 10 |
| (...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 362 RawMachineAssemblerTester<int32_t>* m) { | 362 RawMachineAssemblerTester<int32_t>* m) { |
| 363 FOR_UINT32_INPUTS(i) { | 363 FOR_UINT32_INPUTS(i) { |
| 364 input_b = *i; | 364 input_b = *i; |
| 365 int32_t expect = gen->expected(input_a, input_b); | 365 int32_t expect = gen->expected(input_a, input_b); |
| 366 if (false) printf(" cmp(a=%d, b=%d) ?== %d\n", input_a, input_b, expect); | 366 if (false) printf(" cmp(a=%d, b=%d) ?== %d\n", input_a, input_b, expect); |
| 367 CHECK_EQ(expect, m->Call(input_a, input_b)); | 367 CHECK_EQ(expect, m->Call(input_a, input_b)); |
| 368 } | 368 } |
| 369 } | 369 } |
| 370 | 370 |
| 371 | 371 |
| 372 #if V8_TURBOFAN_TARGET |
| 373 |
| 372 TEST(ParametersEqual) { | 374 TEST(ParametersEqual) { |
| 373 RawMachineAssemblerTester<int32_t> m(kMachInt32, kMachInt32); | 375 RawMachineAssemblerTester<int32_t> m(kMachInt32, kMachInt32); |
| 374 Node* p1 = m.Parameter(1); | 376 Node* p1 = m.Parameter(1); |
| 375 CHECK_NE(NULL, p1); | 377 CHECK_NE(NULL, p1); |
| 376 Node* p0 = m.Parameter(0); | 378 Node* p0 = m.Parameter(0); |
| 377 CHECK_NE(NULL, p0); | 379 CHECK_NE(NULL, p0); |
| 378 CHECK_EQ(p0, m.Parameter(0)); | 380 CHECK_EQ(p0, m.Parameter(0)); |
| 379 CHECK_EQ(p1, m.Parameter(1)); | 381 CHECK_EQ(p1, m.Parameter(1)); |
| 380 } | 382 } |
| 381 | 383 |
| 382 | 384 |
| 383 #if V8_TURBOFAN_TARGET | |
| 384 | |
| 385 void RunSmiConstant(int32_t v) { | 385 void RunSmiConstant(int32_t v) { |
| 386 // TODO(dcarney): on x64 Smis are generated with the SmiConstantRegister | 386 // TODO(dcarney): on x64 Smis are generated with the SmiConstantRegister |
| 387 #if !V8_TARGET_ARCH_X64 | 387 #if !V8_TARGET_ARCH_X64 |
| 388 if (Smi::IsValid(v)) { | 388 if (Smi::IsValid(v)) { |
| 389 RawMachineAssemblerTester<Object*> m; | 389 RawMachineAssemblerTester<Object*> m; |
| 390 m.Return(m.NumberConstant(v)); | 390 m.Return(m.NumberConstant(v)); |
| 391 CHECK_EQ(Smi::FromInt(v), m.Call()); | 391 CHECK_EQ(Smi::FromInt(v), m.Call()); |
| 392 } | 392 } |
| 393 #endif | 393 #endif |
| 394 } | 394 } |
| (...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 568 { | 568 { |
| 569 RawMachineAssemblerTester<int32_t> m; | 569 RawMachineAssemblerTester<int32_t> m; |
| 570 Float64BinopTester bt(&m); | 570 Float64BinopTester bt(&m); |
| 571 bt.AddReturn(bt.param1); | 571 bt.AddReturn(bt.param1); |
| 572 | 572 |
| 573 FOR_FLOAT64_INPUTS(i) { CHECK_EQ(*i, bt.call(-11.25, *i)); } | 573 FOR_FLOAT64_INPUTS(i) { CHECK_EQ(*i, bt.call(-11.25, *i)); } |
| 574 } | 574 } |
| 575 } | 575 } |
| 576 | 576 |
| 577 #endif // V8_TURBOFAN_TARGET | 577 #endif // V8_TURBOFAN_TARGET |
| OLD | NEW |