Search Options

Results per page
Sort
Preferred Languages
Advance

Results 11 - 16 of 16 for addVV (0.03 sec)

  1. src/math/big/arith_amd64.s

    // It is restored with ADDQ Rx, Rx: if Rx was -1 the carry is set, otherwise it is cleared.
    // This is faster than using rotate instructions.
    
    // func addVV(z, x, y []Word) (c Word)
    TEXT ·addVV(SB),NOSPLIT,$0
    	MOVQ z_len+8(FP), DI
    	MOVQ x+24(FP), R8
    	MOVQ y+48(FP), R9
    	MOVQ z+0(FP), R10
    
    	MOVQ $0, CX		// c = 0
    	MOVQ $0, SI		// i = 0
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 19 23:33:27 UTC 2023
    - 9.1K bytes
    - Viewed (0)
  2. src/math/big/arith_s390x.s

    // arithmetic operations on vectors implemented in arith.go.
    
    // DI = R3, CX = R4, SI = r10, r8 = r8, r9=r9, r10 = r2, r11 = r5, r12 = r6, r13 = r7, r14 = r1 (R0 set to 0) + use R11
    // func addVV(z, x, y []Word) (c Word)
    
    TEXT ·addVV(SB), NOSPLIT, $0
    	MOVD addvectorfacility+0x00(SB), R1
    	BR   (R1)
    
    TEXT ·addVV_check(SB), NOSPLIT, $0
    	MOVB   ·hasVX(SB), R1
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 19 23:33:27 UTC 2023
    - 20.3K bytes
    - Viewed (0)
  3. src/math/big/nat.go

    		return z.add(y, x)
    	case m == 0:
    		// n == 0 because m >= n; result is 0
    		return z[:0]
    	case n == 0:
    		// result is x
    		return z.set(x)
    	}
    	// m > 0
    
    	z = z.make(m + 1)
    	c := addVV(z[0:n], x, y)
    	if m > n {
    		c = addVW(z[n:m], x[n:], c)
    	}
    	z[m] = c
    
    	return z.norm()
    }
    
    func (z nat) sub(x, y nat) nat {
    	m := len(x)
    	n := len(y)
    
    	switch {
    	case m < n:
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon May 13 21:31:58 UTC 2024
    - 31.7K bytes
    - Viewed (0)
  4. src/math/big/arith_arm64.s

    // arithmetic operations on vectors implemented in arith.go.
    
    // TODO: Consider re-implementing using Advanced SIMD
    // once the assembler supports those instructions.
    
    // func addVV(z, x, y []Word) (c Word)
    TEXT ·addVV(SB),NOSPLIT,$0
    	MOVD	z_len+8(FP), R0
    	MOVD	x+24(FP), R8
    	MOVD	y+48(FP), R9
    	MOVD	z+0(FP), R10
    	ADDS	$0, R0		// clear carry flag
    	TBZ	$0, R0, two
    	MOVD.P	8(R8), R11
    	MOVD.P	8(R9), R15
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 19 23:33:27 UTC 2023
    - 11.8K bytes
    - Viewed (0)
  5. src/math/big/arith_ppc64x.s

    #include "textflag.h"
    
    // This file provides fast assembly versions for the elementary
    // arithmetic operations on vectors implemented in arith.go.
    
    // func addVV(z, y, y []Word) (c Word)
    // z[i] = x[i] + y[i] for all i, carrying
    TEXT ·addVV(SB), NOSPLIT, $0
    	MOVD  z_len+8(FP), R7   // R7 = z_len
    	MOVD  x+24(FP), R8      // R8 = x[]
    	MOVD  y+48(FP), R9      // R9 = y[]
    	MOVD  z+0(FP), R10      // R10 = z[]
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 18:17:17 UTC 2024
    - 16.8K bytes
    - Viewed (0)
  6. src/math/big/natdiv.go

    		// If it underflows, q̂·v > u, which we fix up
    		// by decrementing q̂ and adding v back.
    		c := subVV(u[j:j+qhl], u[j:], qhatv)
    		if c != 0 {
    			c := addVV(u[j:j+n], u[j:], v)
    			// If n == qhl, the carry from subVV and the carry from addVV
    			// cancel out and don't affect u[j+n].
    			if n < qhl {
    				u[j+n] += c
    			}
    			qhat--
    		}
    
    		// Save quotient digit.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Mar 14 17:02:38 UTC 2024
    - 34.4K bytes
    - Viewed (0)
Back to top