Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 8 of 8 for CMOVQEQ (0.23 sec)

  1. test/codegen/mathbits.go

    }
    
    func LeadingZeros32(n uint32) int {
    	// amd64/v1,amd64/v2:"BSRQ","LEAQ",-"CMOVQEQ"
    	// amd64/v3: "LZCNTL",- "BSRL"
    	// s390x:"FLOGR"
    	// arm:"CLZ" arm64:"CLZW"
    	// mips:"CLZ"
    	// wasm:"I64Clz"
    	// ppc64x:"CNTLZW"
    	return bits.LeadingZeros32(n)
    }
    
    func LeadingZeros16(n uint16) int {
    	// amd64/v1,amd64/v2:"BSRL","LEAL",-"CMOVQEQ"
    	// amd64/v3: "LZCNTL",- "BSRL"
    	// s390x:"FLOGR"
    	// arm:"CLZ" arm64:"CLZ"
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 18:51:17 UTC 2024
    - 19.6K bytes
    - Viewed (0)
  2. src/crypto/internal/nistec/p256_asm_amd64.s

    	// Speculatively subtract
    	SUBQ acc5, acc0
    	SBBQ x_ptr, acc1
    	SBBQ y_ptr, acc2
    	SBBQ t1, acc3
    	// If condition is 0, keep original value
    	TESTQ t0, t0
    	CMOVQEQ acc5, acc0
    	CMOVQEQ x_ptr, acc1
    	CMOVQEQ y_ptr, acc2
    	CMOVQEQ t1, acc3
    	// Store result
    	MOVQ acc0, (8*0)(res_ptr)
    	MOVQ acc1, (8*1)(res_ptr)
    	MOVQ acc2, (8*2)(res_ptr)
    	MOVQ acc3, (8*3)(res_ptr)
    
    	RET
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 04 17:29:44 UTC 2024
    - 39.8K bytes
    - Viewed (0)
  3. test/codegen/condmove.go

    	// arm64:"CSEL\tNE"
    	// ppc64x:"ISEL\t[$]2"
    	// wasm:"Select"
    	return y
    }
    
    func cmovuintptr2(x, y uintptr) uintptr {
    	a := x * 2
    	if a == 0 {
    		a = 256
    	}
    	// amd64:"CMOVQEQ"
    	// arm64:"CSEL\tEQ"
    	// ppc64x:"ISEL\t[$]2"
    	// wasm:"Select"
    	return a
    }
    
    // Floating point CMOVs are not supported by amd64/arm64/ppc64x
    func cmovfloatmove(x, y int) float64 {
    	a := 1.0
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Oct 06 20:57:33 UTC 2023
    - 6.2K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssa/_gen/AMD64.rules

    // eliminate TEST instruction in classical "isPowerOfTwo" check
    (SETEQ       (TEST(Q|L) s:(Select0 blsr:(BLSR(Q|L) _)) s))        => (SETEQ       (Select1 <types.TypeFlags> blsr))
    (CMOVQEQ x y (TEST(Q|L) s:(Select0 blsr:(BLSR(Q|L) _)) s))        => (CMOVQEQ x y (Select1 <types.TypeFlags> blsr))
    (CMOVLEQ x y (TEST(Q|L) s:(Select0 blsr:(BLSR(Q|L) _)) s))        => (CMOVLEQ x y (Select1 <types.TypeFlags> blsr))
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Mar 12 19:38:41 UTC 2024
    - 93.9K bytes
    - Viewed (0)
  5. src/cmd/compile/internal/ssa/_gen/AMD64Ops.go

    		// CMOV instructions: 64, 32 and 16-bit sizes.
    		// if arg2 encodes a true result, return arg1, else arg0
    		{name: "CMOVQEQ", argLength: 3, reg: gp21, asm: "CMOVQEQ", resultInArg0: true},
    		{name: "CMOVQNE", argLength: 3, reg: gp21, asm: "CMOVQNE", resultInArg0: true},
    		{name: "CMOVQLT", argLength: 3, reg: gp21, asm: "CMOVQLT", resultInArg0: true},
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Aug 04 16:40:24 UTC 2023
    - 98K bytes
    - Viewed (1)
  6. src/cmd/compile/internal/ssa/rewriteAMD64.go

    	v_1 := v.Args[1]
    	v_0 := v.Args[0]
    	b := v.Block
    	// match: (CMOVQEQ x y (InvertFlags cond))
    	// result: (CMOVQEQ x y cond)
    	for {
    		x := v_0
    		y := v_1
    		if v_2.Op != OpAMD64InvertFlags {
    			break
    		}
    		cond := v_2.Args[0]
    		v.reset(OpAMD64CMOVQEQ)
    		v.AddArg3(x, y, cond)
    		return true
    	}
    	// match: (CMOVQEQ _ x (FlagEQ))
    	// result: x
    	for {
    		x := v_1
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Mar 12 19:38:41 UTC 2024
    - 712.7K bytes
    - Viewed (0)
  7. src/vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_amd64.s

    	ADCQ 8+sStore, acc1
    
    	// Finally, constant time compare to the tag at the end of the message
    	XORQ    AX, AX
    	MOVQ    $1, DX
    	XORQ    (0*8)(inp), acc0
    	XORQ    (1*8)(inp), acc1
    	ORQ     acc1, acc0
    	CMOVQEQ DX, AX
    
    	// Return true iff tags are equal
    	MOVB AX, ret+96(FP)
    	RET
    
    // ----------------------------------------------------------------------------
    // Special optimization for buffers smaller than 129 bytes
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Nov 29 21:28:33 UTC 2023
    - 105.6K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/ssa/opGen.go

    			},
    			outputs: []outputInfo{
    				{0, 49135}, // AX CX DX BX BP SI DI R8 R9 R10 R11 R12 R13 R15
    			},
    		},
    	},
    	{
    		name:         "CMOVQEQ",
    		argLen:       3,
    		resultInArg0: true,
    		asm:          x86.ACMOVQEQ,
    		reg: regInfo{
    			inputs: []inputInfo{
    				{0, 49135}, // AX CX DX BX BP SI DI R8 R9 R10 R11 R12 R13 R15
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 15:49:20 UTC 2024
    - 1M bytes
    - Viewed (0)
Back to top