=================================================================== RCS file: /home/cvs/OpenXM_contrib/gmp/mpn/powerpc32/Attic/mul_1.asm,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.2 diff -u -p -r1.1.1.1 -r1.1.1.2 --- OpenXM_contrib/gmp/mpn/powerpc32/Attic/mul_1.asm 2000/09/09 14:12:38 1.1.1.1 +++ OpenXM_contrib/gmp/mpn/powerpc32/Attic/mul_1.asm 2003/08/25 16:06:24 1.1.1.2 @@ -1,7 +1,7 @@ dnl PowerPC-32 mpn_mul_1 -- Multiply a limb vector with a limb and store dnl the result in a second limb vector. -dnl Copyright (C) 1995, 1997, 2000 Free Software Foundation, Inc. +dnl Copyright 1995, 1997, 2000, 2002 Free Software Foundation, Inc. dnl This file is part of the GNU MP Library. @@ -41,45 +41,45 @@ PROLOGUE(mpn_mul_1) addic r0,r0,0 C clear cy C Start software pipeline lwz r8,0(r4) - bdz .Lend3 - stmw r30,-8(r1) C save registers we are supposed to preserve + bdz L(end3) lwzu r9,4(r4) mullw r11,r8,r6 mulhwu r0,r8,r6 - bdz .Lend1 + bdz L(end1) C Software pipelined main loop -.Loop: lwz r8,4(r4) +L(oop): lwz r8,4(r4) mullw r10,r9,r6 - adde r30,r11,r12 + adde r5,r11,r12 mulhwu r12,r9,r6 - stw r30,4(r3) - bdz .Lend2 + stw r5,4(r3) + bdz L(end2) lwzu r9,8(r4) mullw r11,r8,r6 - adde r31,r10,r0 + adde r7,r10,r0 mulhwu r0,r8,r6 - stwu r31,8(r3) - bdnz .Loop + stwu r7,8(r3) + bdnz L(oop) C Finish software pipeline -.Lend1: mullw r10,r9,r6 - adde r30,r11,r12 +L(end1): + mullw r10,r9,r6 + adde r5,r11,r12 mulhwu r12,r9,r6 - stw r30,4(r3) - adde r31,r10,r0 - stwu r31,8(r3) + stw r5,4(r3) + adde r7,r10,r0 + stwu r7,8(r3) addze r3,r12 - lmw r30,-8(r1) C restore registers from stack blr -.Lend2: mullw r11,r8,r6 - adde r31,r10,r0 +L(end2): + mullw r11,r8,r6 + adde r7,r10,r0 mulhwu r0,r8,r6 - stwu r31,8(r3) - adde r30,r11,r12 - stw r30,4(r3) + stwu r7,8(r3) + adde r5,r11,r12 + stw r5,4(r3) addze r3,r0 - lmw r30,-8(r1) C restore registers from stack blr -.Lend3: mullw r11,r8,r6 +L(end3): + mullw r11,r8,r6 stw r11,4(r3) mulhwu r3,r8,r6 blr