OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 406 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
417 __ sqrtss(xmm1, xmm0); | 417 __ sqrtss(xmm1, xmm0); |
418 __ sqrtss(xmm1, Operand(ebx, ecx, times_4, 10000)); | 418 __ sqrtss(xmm1, Operand(ebx, ecx, times_4, 10000)); |
419 __ addps(xmm1, xmm0); | 419 __ addps(xmm1, xmm0); |
420 __ addps(xmm1, Operand(ebx, ecx, times_4, 10000)); | 420 __ addps(xmm1, Operand(ebx, ecx, times_4, 10000)); |
421 __ subps(xmm1, xmm0); | 421 __ subps(xmm1, xmm0); |
422 __ subps(xmm1, Operand(ebx, ecx, times_4, 10000)); | 422 __ subps(xmm1, Operand(ebx, ecx, times_4, 10000)); |
423 __ mulps(xmm1, xmm0); | 423 __ mulps(xmm1, xmm0); |
424 __ mulps(xmm1, Operand(ebx, ecx, times_4, 10000)); | 424 __ mulps(xmm1, Operand(ebx, ecx, times_4, 10000)); |
425 __ divps(xmm1, xmm0); | 425 __ divps(xmm1, xmm0); |
426 __ divps(xmm1, Operand(ebx, ecx, times_4, 10000)); | 426 __ divps(xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 427 __ minps(xmm1, xmm0); |
| 428 __ minps(xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 429 __ maxps(xmm1, xmm0); |
| 430 __ maxps(xmm1, Operand(ebx, ecx, times_4, 10000)); |
427 | 431 |
428 __ ucomiss(xmm0, xmm1); | 432 __ ucomiss(xmm0, xmm1); |
429 __ ucomiss(xmm0, Operand(ebx, ecx, times_4, 10000)); | 433 __ ucomiss(xmm0, Operand(ebx, ecx, times_4, 10000)); |
430 } | 434 } |
431 { | 435 { |
432 __ cvttss2si(edx, Operand(ebx, ecx, times_4, 10000)); | 436 __ cvttss2si(edx, Operand(ebx, ecx, times_4, 10000)); |
433 __ cvtsi2sd(xmm1, Operand(ebx, ecx, times_4, 10000)); | 437 __ cvtsi2sd(xmm1, Operand(ebx, ecx, times_4, 10000)); |
434 __ cvtss2sd(xmm1, Operand(ebx, ecx, times_4, 10000)); | 438 __ cvtss2sd(xmm1, Operand(ebx, ecx, times_4, 10000)); |
435 __ cvtss2sd(xmm1, xmm0); | 439 __ cvtss2sd(xmm1, xmm0); |
436 __ movsd(xmm1, Operand(ebx, ecx, times_4, 10000)); | 440 __ movsd(xmm1, Operand(ebx, ecx, times_4, 10000)); |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
543 __ vdivss(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); | 547 __ vdivss(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
544 __ vminss(xmm0, xmm1, xmm2); | 548 __ vminss(xmm0, xmm1, xmm2); |
545 __ vminss(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); | 549 __ vminss(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
546 __ vmaxss(xmm0, xmm1, xmm2); | 550 __ vmaxss(xmm0, xmm1, xmm2); |
547 __ vmaxss(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); | 551 __ vmaxss(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
548 | 552 |
549 __ vandps(xmm0, xmm1, xmm2); | 553 __ vandps(xmm0, xmm1, xmm2); |
550 __ vandps(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); | 554 __ vandps(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
551 __ vxorps(xmm0, xmm1, xmm2); | 555 __ vxorps(xmm0, xmm1, xmm2); |
552 __ vxorps(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); | 556 __ vxorps(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 557 __ vaddps(xmm0, xmm1, xmm2); |
| 558 __ vaddps(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 559 __ vmulps(xmm0, xmm1, xmm2); |
| 560 __ vmulps(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 561 __ vsubps(xmm0, xmm1, xmm2); |
| 562 __ vsubps(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 563 __ vminps(xmm0, xmm1, xmm2); |
| 564 __ vminps(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 565 __ vdivps(xmm0, xmm1, xmm2); |
| 566 __ vdivps(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 567 __ vmaxps(xmm0, xmm1, xmm2); |
| 568 __ vmaxps(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
553 | 569 |
554 __ vandpd(xmm0, xmm1, xmm2); | 570 __ vandpd(xmm0, xmm1, xmm2); |
555 __ vandpd(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); | 571 __ vandpd(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
556 __ vxorpd(xmm0, xmm1, xmm2); | 572 __ vxorpd(xmm0, xmm1, xmm2); |
557 __ vxorpd(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); | 573 __ vxorpd(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 574 __ vaddpd(xmm0, xmm1, xmm2); |
| 575 __ vaddpd(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 576 __ vmulpd(xmm0, xmm1, xmm2); |
| 577 __ vmulpd(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 578 __ vsubpd(xmm0, xmm1, xmm2); |
| 579 __ vsubpd(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 580 __ vminpd(xmm0, xmm1, xmm2); |
| 581 __ vminpd(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 582 __ vdivpd(xmm0, xmm1, xmm2); |
| 583 __ vdivpd(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
| 584 __ vmaxpd(xmm0, xmm1, xmm2); |
| 585 __ vmaxpd(xmm0, xmm1, Operand(ebx, ecx, times_4, 10000)); |
558 | 586 |
559 __ vpsllw(xmm0, xmm7, 21); | 587 __ vpsllw(xmm0, xmm7, 21); |
560 __ vpslld(xmm0, xmm7, 21); | 588 __ vpslld(xmm0, xmm7, 21); |
561 __ vpsrlw(xmm0, xmm7, 21); | 589 __ vpsrlw(xmm0, xmm7, 21); |
562 __ vpsrld(xmm0, xmm7, 21); | 590 __ vpsrld(xmm0, xmm7, 21); |
563 __ vpsraw(xmm0, xmm7, 21); | 591 __ vpsraw(xmm0, xmm7, 21); |
564 __ vpsrad(xmm0, xmm7, 21); | 592 __ vpsrad(xmm0, xmm7, 21); |
565 #define EMIT_SSE2_AVXINSTR(instruction, notUsed1, notUsed2, notUsed3) \ | 593 #define EMIT_SSE2_AVXINSTR(instruction, notUsed1, notUsed2, notUsed3) \ |
566 __ v##instruction(xmm7, xmm5, xmm1); \ | 594 __ v##instruction(xmm7, xmm5, xmm1); \ |
567 __ v##instruction(xmm7, xmm5, Operand(edx, 4)); | 595 __ v##instruction(xmm7, xmm5, Operand(edx, 4)); |
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
742 #ifdef OBJECT_PRINT | 770 #ifdef OBJECT_PRINT |
743 OFStream os(stdout); | 771 OFStream os(stdout); |
744 code->Print(os); | 772 code->Print(os); |
745 byte* begin = code->instruction_start(); | 773 byte* begin = code->instruction_start(); |
746 byte* end = begin + code->instruction_size(); | 774 byte* end = begin + code->instruction_size(); |
747 disasm::Disassembler::Disassemble(stdout, begin, end); | 775 disasm::Disassembler::Disassemble(stdout, begin, end); |
748 #endif | 776 #endif |
749 } | 777 } |
750 | 778 |
751 #undef __ | 779 #undef __ |
OLD | NEW |