trunk/src/emu/cpu/mips/mips3drc.c
| r241671 | r241672 | |
| 2774 | 2774 | UML_FSTOINT(block, FPR64(FDREG), FPR32(FSREG), SIZE_QWORD, ROUND_ROUND);// fstoint <fdreg>,<fsreg>,qword,round |
| 2775 | 2775 | else /* ROUND.L.D - MIPS III */ |
| 2776 | 2776 | UML_FDTOINT(block, FPR64(FDREG), FPR64(FSREG), SIZE_QWORD, ROUND_ROUND);// fdtoint <fdreg>,<fsreg>,qword,round |
| 2777 | UML_DSEXT(block, FPR64(FDREG), FPR64(FDREG), SIZE_DWORD); |
| 2777 | 2778 | return TRUE; |
| 2778 | 2779 | |
| 2779 | 2780 | case 0x09: |
| r241671 | r241672 | |
| 2781 | 2782 | UML_FSTOINT(block, FPR64(FDREG), FPR32(FSREG), SIZE_QWORD, ROUND_TRUNC);// fstoint <fdreg>,<fsreg>,qword,trunc |
| 2782 | 2783 | else /* TRUNC.L.D - MIPS III */ |
| 2783 | 2784 | UML_FDTOINT(block, FPR64(FDREG), FPR64(FSREG), SIZE_QWORD, ROUND_TRUNC);// fdtoint <fdreg>,<fsreg>,qword,trunc |
| 2785 | UML_DSEXT(block, FPR64(FDREG), FPR64(FDREG), SIZE_DWORD); |
| 2784 | 2786 | return TRUE; |
| 2785 | 2787 | |
| 2786 | 2788 | case 0x0a: |
| r241671 | r241672 | |
| 2788 | 2790 | UML_FSTOINT(block, FPR64(FDREG), FPR32(FSREG), SIZE_QWORD, ROUND_CEIL);// fstoint <fdreg>,<fsreg>,qword,ceil |
| 2789 | 2791 | else /* CEIL.L.D - MIPS III */ |
| 2790 | 2792 | UML_FDTOINT(block, FPR64(FDREG), FPR64(FSREG), SIZE_QWORD, ROUND_CEIL);// fdtoint <fdreg>,<fsreg>,qword,ceil |
| 2793 | UML_DSEXT(block, FPR64(FDREG), FPR64(FDREG), SIZE_DWORD); |
| 2791 | 2794 | return TRUE; |
| 2792 | 2795 | |
| 2793 | 2796 | case 0x0b: |
| r241671 | r241672 | |
| 2795 | 2798 | UML_FSTOINT(block, FPR64(FDREG), FPR32(FSREG), SIZE_QWORD, ROUND_FLOOR);// fstoint <fdreg>,<fsreg>,qword,floor |
| 2796 | 2799 | else /* FLOOR.L.D - MIPS III */ |
| 2797 | 2800 | UML_FDTOINT(block, FPR64(FDREG), FPR64(FSREG), SIZE_QWORD, ROUND_FLOOR);// fdtoint <fdreg>,<fsreg>,qword,floor |
| 2801 | UML_DSEXT(block, FPR64(FDREG), FPR64(FDREG), SIZE_DWORD); |
| 2798 | 2802 | return TRUE; |
| 2799 | 2803 | |
| 2800 | 2804 | case 0x0c: |