Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 4 of 4 for SumBytes2 (0.87 sec)

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

    // 2, 4 or 8 bytes respectively. The result is a single byte however
    // other bytes might contain junk so a zero extension is required if
    // the desired output type is larger than 1 byte.
    (SumBytes2 x) => (ADDW (SRWconst <typ.UInt8> x [8]) x)
    (SumBytes4 x) => (SumBytes2 (ADDW <typ.UInt16> (SRWconst <typ.UInt16> x [16]) x))
    (SumBytes8 x) => (SumBytes4 (ADDW <typ.UInt32> (SRDconst <typ.UInt32> x [32]) x))
    
    (Bswap64 ...) => (MOVDBR ...)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 12 18:09:26 UTC 2023
    - 74.3K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/_gen/S390XOps.go

    			argLength: 2,
    			reg:       regInfo{inputs: []regMask{gp, r3}, outputs: []regMask{r2, r3}},
    			asm:       "MLGR",
    		},
    
    		// pseudo operations to sum the output of the POPCNT instruction
    		{name: "SumBytes2", argLength: 1, typ: "UInt8"}, // sum the rightmost 2 bytes in arg0 ignoring overflow
    		{name: "SumBytes4", argLength: 1, typ: "UInt8"}, // sum the rightmost 4 bytes in arg0 ignoring overflow
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Feb 24 00:21:13 UTC 2023
    - 52.5K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssa/rewriteS390X.go

    	}
    	return false
    }
    func rewriteValueS390X_OpPopCount16(v *Value) bool {
    	v_0 := v.Args[0]
    	b := v.Block
    	typ := &b.Func.Config.Types
    	// match: (PopCount16 x)
    	// result: (MOVBZreg (SumBytes2 (POPCNT <typ.UInt16> x)))
    	for {
    		x := v_0
    		v.reset(OpS390XMOVBZreg)
    		v0 := b.NewValue0(v.Pos, OpS390XSumBytes2, typ.UInt8)
    		v1 := b.NewValue0(v.Pos, OpS390XPOPCNT, typ.UInt16)
    		v1.AddArg(x)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Oct 12 18:09:26 UTC 2023
    - 395.1K bytes
    - Viewed (0)
  4. src/cmd/compile/internal/ssa/opGen.go

    				{0, 23551}, // R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 R11 R12 R14
    			},
    			outputs: []outputInfo{
    				{0, 4}, // R2
    				{1, 8}, // R3
    			},
    		},
    	},
    	{
    		name:   "SumBytes2",
    		argLen: 1,
    		reg:    regInfo{},
    	},
    	{
    		name:   "SumBytes4",
    		argLen: 1,
    		reg:    regInfo{},
    	},
    	{
    		name:   "SumBytes8",
    		argLen: 1,
    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