Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 3 of 3 for convertPPC64OpToOpCC (0.15 sec)

  1. src/cmd/compile/internal/ssa/rewritePPC64latelower.go

    	// cond: v.Block == z.Block
    	// result: (CMPconst [0] convertPPC64OpToOpCC(z))
    	for {
    		if auxIntToInt64(v.AuxInt) != 0 {
    			break
    		}
    		z := v_0
    		if z.Op != OpPPC64ADD {
    			break
    		}
    		if !(v.Block == z.Block) {
    			break
    		}
    		v.reset(OpPPC64CMPconst)
    		v.AuxInt = int64ToAuxInt(0)
    		v.AddArg(convertPPC64OpToOpCC(z))
    		return true
    	}
    	// match: (CMPconst [0] z:(AND x y))
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 19:59:38 UTC 2024
    - 16.5K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/_gen/PPC64latelower.rules

    (CMPconst [0] z:((ADD|AND|ANDN|OR|SUB|NOR|XOR) x y)) && v.Block == z.Block => (CMPconst [0] convertPPC64OpToOpCC(z))
    (CMPconst [0] z:((NEG|CNTLZD|RLDICL) x)) && v.Block == z.Block => (CMPconst [0] convertPPC64OpToOpCC(z))
    // Note: ADDCCconst only assembles to 1 instruction for int16 constants.
    (CMPconst [0] z:(ADDconst [c] x)) && int64(int16(c)) == c && v.Block == z.Block => (CMPconst [0] convertPPC64OpToOpCC(z))
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 19:59:38 UTC 2024
    - 3.8K bytes
    - Viewed (0)
  3. src/cmd/compile/internal/ssa/rewrite.go

    // of this conversion is:
    // a' = (ADDCC x y)
    // a  = (Select0 a')
    // b  = (CMPconst [0] a)
    // c  = (OR a z)
    //
    // Which makes it trivial to rewrite b using a lowering rule.
    func convertPPC64OpToOpCC(op *Value) *Value {
    	ccOpMap := map[Op]Op{
    		OpPPC64ADD:      OpPPC64ADDCC,
    		OpPPC64ADDconst: OpPPC64ADDCCconst,
    		OpPPC64AND:      OpPPC64ANDCC,
    		OpPPC64ANDconst: OpPPC64ANDCCconst,
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 19:02:52 UTC 2024
    - 64.2K bytes
    - Viewed (0)
Back to top