[BACK]Return to asmiw.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / asm

Annotation of OpenXM_contrib2/asir2000/asm/asmiw.c, Revision 1.1

1.1     ! noro        1: /* $OpenXM: OpenXM/src/asir99/asm/asmiw.c,v 1.1.1.1 1999/11/10 08:12:25 noro Exp $ */
        !             2: unsigned int dm(a1,a2,u)
        !             3: unsigned int a1,a2,*u;
        !             4: {
        !             5:        __asm
        !             6:        {
        !             7:        mov             eax,a1
        !             8:        mul             a2
        !             9:        mov     ebx,u
        !            10:        mov     DWORD PTR [ebx],edx
        !            11:        }
        !            12: }
        !            13:
        !            14: unsigned int dma(a1,a2,a3,u)
        !            15: unsigned int a1,a2,a3,*u;
        !            16: {
        !            17:        __asm
        !            18:        {
        !            19:        mov             eax,a1
        !            20:        mul             a2
        !            21:        add             eax,a3
        !            22:        adc             edx,0
        !            23:        mov     ebx,u
        !            24:        mov     DWORD PTR [ebx],edx
        !            25:        }
        !            26: }
        !            27:
        !            28: unsigned int dma2(a1,a2,a3,a4,u)
        !            29: unsigned int a1,a2,a3,a4,*u;
        !            30: {
        !            31:        __asm
        !            32:        {
        !            33:        mov             eax,a1
        !            34:        mul             a2
        !            35:        add             eax,a3
        !            36:        adc             edx,0
        !            37:        add             eax,a4
        !            38:        adc             edx,0
        !            39:        mov     ebx,u
        !            40:        mov     DWORD PTR [ebx],edx
        !            41:        }
        !            42: }
        !            43:
        !            44: unsigned int dmb(base,a1,a2,u)
        !            45: unsigned int base,a1,a2,*u;
        !            46: {
        !            47:        __asm
        !            48:        {
        !            49:        mov             eax,a1
        !            50:        mul             a2
        !            51:        div             base
        !            52:        mov     ebx,u
        !            53:        mov     DWORD PTR [ebx],eax
        !            54:        mov     eax,edx
        !            55:        }
        !            56: }
        !            57:
        !            58: unsigned int dmab(base,a1,a2,a3,u)
        !            59: unsigned int base,a1,a2,a3,*u;
        !            60: {
        !            61:        __asm
        !            62:        {
        !            63:        mov             eax,a1
        !            64:        mul             a2
        !            65:        add             eax,a3
        !            66:        adc             edx,0
        !            67:        div             base
        !            68:        mov     ebx,u
        !            69:        mov     DWORD PTR [ebx],eax
        !            70:        mov     eax,edx
        !            71:        }
        !            72: }
        !            73:
        !            74: unsigned int dsab(base,a1,a2,u)
        !            75: unsigned int base,a1,a2,*u;
        !            76: {
        !            77:        __asm
        !            78:        {
        !            79:        mov             edx,a1
        !            80:        mov             eax,a2
        !            81:        div             base
        !            82:        mov     ebx,u
        !            83:        mov     DWORD PTR [ebx],eax
        !            84:        mov     eax,edx
        !            85:        }
        !            86: }
        !            87:
        !            88: unsigned int dmar(a1,a2,a3,d)
        !            89: unsigned int a1,a2,a3,d;
        !            90: {
        !            91:        __asm
        !            92:        {
        !            93:        mov             eax,a1
        !            94:        mul             a2
        !            95:        add             eax,a3
        !            96:        adc             edx,0
        !            97:        div             d
        !            98:        mov     eax,edx
        !            99:        }
        !           100: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>