Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 3 of 3 for mergePPC64RShiftMask (0.25 sec)

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

    (ANDconst [m] (SRWconst x [s])) && mergePPC64RShiftMask(m,s,32) == 0 => (MOVDconst [0])
    (ANDconst [m] (SRWconst x [s])) && mergePPC64AndSrwi(m,s) != 0 => (RLWINM [mergePPC64AndSrwi(m,s)] x)
    (AND (MOVDconst [m]) (SRWconst x [s])) && mergePPC64RShiftMask(m,s,32) == 0 => (MOVDconst [0])
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 19:02:52 UTC 2024
    - 53.2K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/rewrite.go

    // and return mask & m.
    func mergePPC64RShiftMask(m, s, nbits int64) int64 {
    	smask := uint64((1<<uint(nbits))-1) >> uint(s)
    	return m & int64(smask)
    }
    
    // Combine (ANDconst [m] (SRWconst [s])) into (RLWINM [y]) or return 0
    func mergePPC64AndSrwi(m, s int64) int64 {
    	mask := mergePPC64RShiftMask(m, s, 32)
    	if !isPPC64WordRotateMask(mask) {
    		return 0
    	}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 19:02:52 UTC 2024
    - 64.2K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssa/rewritePPC64.go

    		v.AddArg2(x, r)
    		return true
    	}
    	// match: (ANDconst [m] (SRWconst x [s]))
    	// cond: mergePPC64RShiftMask(m,s,32) == 0
    	// result: (MOVDconst [0])
    	for {
    		m := auxIntToInt64(v.AuxInt)
    		if v_0.Op != OpPPC64SRWconst {
    			break
    		}
    		s := auxIntToInt64(v_0.AuxInt)
    		if !(mergePPC64RShiftMask(m, s, 32) == 0) {
    			break
    		}
    		v.reset(OpPPC64MOVDconst)
    		v.AuxInt = int64ToAuxInt(0)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 19:02:52 UTC 2024
    - 360.2K bytes
    - Viewed (0)
Back to top