OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 934 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
945 ASSERT_EQUAL_64(0xffff00f0, x6); | 945 ASSERT_EQUAL_64(0xffff00f0, x6); |
946 ASSERT_EQUAL_64(0x0000f0f0, x7); | 946 ASSERT_EQUAL_64(0x0000f0f0, x7); |
947 ASSERT_EQUAL_64(0x0000f00f, x8); | 947 ASSERT_EQUAL_64(0x0000f00f, x8); |
948 ASSERT_EQUAL_64(0x00000ff00000ffffL, x9); | 948 ASSERT_EQUAL_64(0x00000ff00000ffffL, x9); |
949 ASSERT_EQUAL_64(0xff0000f0, x10); | 949 ASSERT_EQUAL_64(0xff0000f0, x10); |
950 ASSERT_EQUAL_64(0xff00ff00ff0000f0L, x11); | 950 ASSERT_EQUAL_64(0xff00ff00ff0000f0L, x11); |
951 | 951 |
952 TEARDOWN(); | 952 TEARDOWN(); |
953 } | 953 } |
954 | 954 |
| 955 |
955 TEST(eor_extend) { | 956 TEST(eor_extend) { |
956 SETUP(); | 957 SETUP(); |
957 | 958 |
958 START(); | 959 START(); |
959 __ Mov(x0, 0x1111111111111111UL); | 960 __ Mov(x0, 0x1111111111111111UL); |
960 __ Mov(x1, 0x8000000080008081UL); | 961 __ Mov(x1, 0x8000000080008081UL); |
961 __ Eor(w6, w0, Operand(w1, UXTB)); | 962 __ Eor(w6, w0, Operand(w1, UXTB)); |
962 __ Eor(x7, x0, Operand(x1, UXTH, 1)); | 963 __ Eor(x7, x0, Operand(x1, UXTH, 1)); |
963 __ Eor(w8, w0, Operand(w1, UXTW, 2)); | 964 __ Eor(w8, w0, Operand(w1, UXTW, 2)); |
964 __ Eor(x9, x0, Operand(x1, UXTX, 3)); | 965 __ Eor(x9, x0, Operand(x1, UXTX, 3)); |
(...skipping 2508 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3473 ASSERT_EQUAL_64(0x1234567890abcdefUL + 1, x18); | 3474 ASSERT_EQUAL_64(0x1234567890abcdefUL + 1, x18); |
3474 ASSERT_EQUAL_64(0, x19); | 3475 ASSERT_EQUAL_64(0, x19); |
3475 ASSERT_EQUAL_64(0xedcba9876f543211UL, x20); | 3476 ASSERT_EQUAL_64(0xedcba9876f543211UL, x20); |
3476 ASSERT_EQUAL_64(1, x21); | 3477 ASSERT_EQUAL_64(1, x21); |
3477 ASSERT_EQUAL_64(0x100000000UL, x22); | 3478 ASSERT_EQUAL_64(0x100000000UL, x22); |
3478 ASSERT_EQUAL_64(0x10000, x23); | 3479 ASSERT_EQUAL_64(0x10000, x23); |
3479 | 3480 |
3480 TEARDOWN(); | 3481 TEARDOWN(); |
3481 } | 3482 } |
3482 | 3483 |
| 3484 |
3483 TEST(flags) { | 3485 TEST(flags) { |
3484 SETUP(); | 3486 SETUP(); |
3485 | 3487 |
3486 START(); | 3488 START(); |
3487 __ Mov(x0, 0); | 3489 __ Mov(x0, 0); |
3488 __ Mov(x1, 0x1111111111111111L); | 3490 __ Mov(x1, 0x1111111111111111L); |
3489 __ Neg(x10, Operand(x0)); | 3491 __ Neg(x10, Operand(x0)); |
3490 __ Neg(x11, Operand(x1)); | 3492 __ Neg(x11, Operand(x1)); |
3491 __ Neg(w12, Operand(w1)); | 3493 __ Neg(w12, Operand(w1)); |
3492 // Clear the C flag. | 3494 // Clear the C flag. |
(...skipping 2992 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6485 ASSERT_EQUAL_64(1, x25); | 6487 ASSERT_EQUAL_64(1, x25); |
6486 ASSERT_EQUAL_64(0xffffffffffffffffUL, x26); | 6488 ASSERT_EQUAL_64(0xffffffffffffffffUL, x26); |
6487 ASSERT_EQUAL_64(0x7fffffffffffffffUL, x27); | 6489 ASSERT_EQUAL_64(0x7fffffffffffffffUL, x27); |
6488 ASSERT_EQUAL_64(0x8000000000000000UL, x28); | 6490 ASSERT_EQUAL_64(0x8000000000000000UL, x28); |
6489 ASSERT_EQUAL_64(0x7ffffffffffffc00UL, x29); | 6491 ASSERT_EQUAL_64(0x7ffffffffffffc00UL, x29); |
6490 ASSERT_EQUAL_64(0x8000000000000400UL, x30); | 6492 ASSERT_EQUAL_64(0x8000000000000400UL, x30); |
6491 | 6493 |
6492 TEARDOWN(); | 6494 TEARDOWN(); |
6493 } | 6495 } |
6494 | 6496 |
| 6497 |
6495 TEST(fcvtzu) { | 6498 TEST(fcvtzu) { |
6496 SETUP(); | 6499 SETUP(); |
6497 | 6500 |
6498 START(); | 6501 START(); |
6499 __ Fmov(s0, 1.0); | 6502 __ Fmov(s0, 1.0); |
6500 __ Fmov(s1, 1.1); | 6503 __ Fmov(s1, 1.1); |
6501 __ Fmov(s2, 1.5); | 6504 __ Fmov(s2, 1.5); |
6502 __ Fmov(s3, -1.5); | 6505 __ Fmov(s3, -1.5); |
6503 __ Fmov(s4, kFP32PositiveInfinity); | 6506 __ Fmov(s4, kFP32PositiveInfinity); |
6504 __ Fmov(s5, kFP32NegativeInfinity); | 6507 __ Fmov(s5, kFP32NegativeInfinity); |
(...skipping 2909 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9414 AbsHelperX(kXMinInt); | 9417 AbsHelperX(kXMinInt); |
9415 AbsHelperX(kXMaxInt); | 9418 AbsHelperX(kXMaxInt); |
9416 | 9419 |
9417 AbsHelperW(0); | 9420 AbsHelperW(0); |
9418 AbsHelperW(42); | 9421 AbsHelperW(42); |
9419 AbsHelperW(-42); | 9422 AbsHelperW(-42); |
9420 AbsHelperW(kWMinInt); | 9423 AbsHelperW(kWMinInt); |
9421 AbsHelperW(kWMaxInt); | 9424 AbsHelperW(kWMaxInt); |
9422 } | 9425 } |
9423 | 9426 |
OLD | NEW |