Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 4 of 4 for biton64 (0.12 sec)

  1. src/cmd/compile/internal/ssa/_gen/AMD64.rules

    (Ctz64NonZero x) && buildcfg.GOAMD64 <  3 => (Select0 (BSFQ x))
    (Ctz32NonZero x) && buildcfg.GOAMD64 <  3 => (BSFL x)
    (Ctz16NonZero x) && buildcfg.GOAMD64 <  3 => (BSFL x)
    (Ctz8NonZero  x) && buildcfg.GOAMD64 <  3 => (BSFL x)
    
    // BitLen64 of a 64 bit value x requires checking whether x == 0, since BSRQ is undefined when x == 0.
    // However, for zero-extended values, we can cheat a bit, and calculate
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Mar 12 19:38:41 UTC 2024
    - 93.9K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/_gen/PPC64.rules

    (Ctz32 x) => (CNTTZW (MOVWZreg x))
    (Ctz16 x) => (POPCNTW (MOVHZreg (ANDN <typ.Int16> (ADDconst <typ.Int16> [-1] x) x)))
    (Ctz8 x)  => (POPCNTB (MOVBZreg (ANDN <typ.UInt8> (ADDconst <typ.UInt8> [-1] x) x)))
    
    (BitLen64 x) => (SUBFCconst [64] (CNTLZD <typ.Int> x))
    (BitLen32 x) => (SUBFCconst [32] (CNTLZW <typ.Int> x))
    
    (PopCount64 ...) => (POPCNTD ...)
    (PopCount(32|16|8) x) => (POPCNT(W|W|B) (MOV(W|H|B)Zreg x))
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 19:02:52 UTC 2024
    - 53.2K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssa/rewritedec64.go

    		v.AddArg2(v0, v1)
    		return true
    	}
    	return false
    }
    func rewriteValuedec64_OpBitLen64(v *Value) bool {
    	v_0 := v.Args[0]
    	b := v.Block
    	typ := &b.Func.Config.Types
    	// match: (BitLen64 x)
    	// result: (Add32 <typ.Int> (BitLen32 <typ.Int> (Int64Hi x)) (BitLen32 <typ.Int> (Or32 <typ.UInt32> (Int64Lo x) (Zeromask (Int64Hi x)))))
    	for {
    		x := v_0
    		v.reset(OpAdd32)
    		v.Type = typ.Int
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Jan 19 22:42:34 UTC 2023
    - 65.3K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssa/_gen/S390X.rules

    (Ctz64 <t> x) => (SUB (MOVDconst [64]) (FLOGR (AND <t> (SUBconst <t> [1] x) (NOT <t> x))))
    (Ctz32 <t> x) => (SUB (MOVDconst [64]) (FLOGR (MOVWZreg (ANDW <t> (SUBWconst <t> [1] x) (NOTW <t> x)))))
    
    (BitLen64 x) => (SUB (MOVDconst [64]) (FLOGR x))
    
    // POPCNT treats the input register as a vector of 8 bytes, producing
    // a population count for each individual byte. For inputs larger than
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 12 18:09:26 UTC 2023
    - 74.3K bytes
    - Viewed (0)
Back to top