Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 71 for isel (0.24 sec)

  1. test/codegen/shift.go

    		r1 = val64 >> shift
    	}
    	if shift >= 0 && shift < 32 {
    		// arm64:"LSR",-"CSEL"
    		r2 = val32 >> shift
    	}
    	if shift >= 0 && shift < 16 {
    		// arm64:"LSR",-"CSEL"
    		r3 = val16 >> shift
    	}
    	if shift >= 0 && shift < 8 {
    		// arm64:"LSR",-"CSEL"
    		r4 = val8 >> shift
    	}
    	return r1, r2, r3, r4
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue May 21 18:53:43 UTC 2024
    - 12.7K bytes
    - Viewed (0)
  2. src/cmd/compile/internal/ssa/_gen/PPC64latelower.rules

    // Simplify ISEL x $0 z into ISELZ
    (ISEL [a] x (MOVDconst [0]) z) => (ISELZ [a] x z)
    // Simplify ISEL $0 y z into ISELZ by inverting comparison and reversing arguments.
    (ISEL [a] (MOVDconst [0]) y z) => (ISELZ [a^0x4] y z)
    
    // SETBC, SETBCR is supported on ISA 3.1(Power10) and newer, use ISELZ for
    // older targets
    (SETBC [2] cmp) && buildcfg.GOPPC64 <= 9 => (ISELZ [2] (MOVDconst [1]) cmp)
    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/_gen/PPC64.rules

    (ISEL [1] _ y (Flag(EQ|LT))) => y
    (ISEL [1] x _ (FlagGT)) => x
    
    (ISEL [4] x _ (Flag(EQ|GT))) => x
    (ISEL [4] _ y (FlagLT)) => y
    
    (SETBC [n] (InvertFlags bool)) => (SETBCR [n] bool)
    (SETBCR [n] (InvertFlags bool)) => (SETBC [n] bool)
    
    (ISEL [n] x y (InvertFlags bool)) && n%4 == 0 => (ISEL [n+1] x y bool)
    (ISEL [n] x y (InvertFlags bool)) && n%4 == 1 => (ISEL [n-1] x y bool)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Jun 07 19:02:52 UTC 2024
    - 53.2K bytes
    - Viewed (0)
  4. src/internal/runtime/syscall/asm_linux_ppc64x.s

    	MOVD	R4, R3
    	MOVD	R5, R4
    	MOVD	R6, R5
    	MOVD	R7, R6
    	MOVD	R8, R7
    	MOVD	R9, R8
    	SYSCALL	R10
    	MOVD	$-1, R6
    	ISEL	CR0SO, R3, R0, R5 // errno = (error) ? R3 : 0
    	ISEL	CR0SO, R6, R3, R3 // r1 = (error) ? -1 : 0
    	MOVD	$0, R4            // r2 is not used on linux/ppc64
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Feb 21 21:28:32 UTC 2024
    - 702 bytes
    - Viewed (0)
  5. src/cmd/asm/internal/asm/testdata/ppc64.s

    	CRXOR CR0GT, CR0EQ, CR0SO       // 4c620982
    
    	ISEL $0, R3, R4, R5             // 7ca3201e
    	ISEL $1, R3, R4, R5             // 7ca3205e
    	ISEL $2, R3, R4, R5             // 7ca3209e
    	ISEL $3, R3, R4, R5             // 7ca320de
    	ISEL $4, R3, R4, R5             // 7ca3211e
    	ISEL $31, R3, R4, R5            // 7ca327de
    	ISEL CR0LT, R3, R4, R5          // 7ca3201e
    	ISEL CR0GT, R3, R4, R5          // 7ca3205e
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 17 21:53:50 UTC 2024
    - 50.2K bytes
    - Viewed (0)
  6. src/cmd/compile/internal/ssa/rewritePPC64.go

    	// result: (ISEL [a] x y cmp)
    	for {
    		x := v_0
    		y := v_1
    		if v_2.Op != OpPPC64SETBC {
    			break
    		}
    		a := auxIntToInt32(v_2.AuxInt)
    		cmp := v_2.Args[0]
    		v.reset(OpPPC64ISEL)
    		v.AuxInt = int32ToAuxInt(a)
    		v.AddArg3(x, y, cmp)
    		return true
    	}
    	// match: (CondSelect x y (SETBCR [a] cmp))
    	// result: (ISEL [a+4] x y cmp)
    	for {
    		x := v_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)
  7. src/cmd/internal/obj/ppc64/anames.go

    	"FNMADD",
    	"FNMADDCC",
    	"FNMADDS",
    	"FNMADDSCC",
    	"FNMSUB",
    	"FNMSUBCC",
    	"FNMSUBS",
    	"FNMSUBSCC",
    	"FRSP",
    	"FRSPCC",
    	"FSUB",
    	"FSUBCC",
    	"FSUBS",
    	"FSUBSCC",
    	"ISEL",
    	"MOVMW",
    	"LBAR",
    	"LHAR",
    	"LSW",
    	"LWAR",
    	"LWSYNC",
    	"MOVDBR",
    	"MOVWBR",
    	"MOVB",
    	"MOVBU",
    	"MOVBZ",
    	"MOVBZU",
    	"MOVH",
    	"MOVHBR",
    	"MOVHU",
    	"MOVHZ",
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 01 18:50:29 UTC 2024
    - 6.7K bytes
    - Viewed (0)
  8. src/cmd/compile/internal/ssa/rewritePPC64latelower.go

    	v_1 := v.Args[1]
    	v_0 := v.Args[0]
    	// match: (ISEL [a] x (MOVDconst [0]) z)
    	// result: (ISELZ [a] x z)
    	for {
    		a := auxIntToInt32(v.AuxInt)
    		x := v_0
    		if v_1.Op != OpPPC64MOVDconst || auxIntToInt64(v_1.AuxInt) != 0 {
    			break
    		}
    		z := v_2
    		v.reset(OpPPC64ISELZ)
    		v.AuxInt = int32ToAuxInt(a)
    		v.AddArg2(x, z)
    		return true
    	}
    	// match: (ISEL [a] (MOVDconst [0]) y z)
    	// result: (ISELZ [a^0x4] y z)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 19:59:38 UTC 2024
    - 16.5K bytes
    - Viewed (0)
  9. src/cmd/compile/internal/ssa/_gen/PPC64Ops.go

    		// ISEL  arg2 ? arg0 : arg1
    		// ISELZ arg1 ? arg0 : $0
    		// auxInt values 0=LT 1=GT 2=EQ 3=SO (summary overflow/unordered) 4=GE 5=LE 6=NE 7=NSO (not summary overflow/not unordered)
    		// Note, auxInt^4 inverts the comparison condition. For example, LT^4 becomes GE, and "ISEL [a] x y z" is equivalent to ISEL [a^4] y x z".
    		{name: "ISEL", argLength: 3, reg: crgp21, asm: "ISEL", aux: "Int32", typ: "Int32"},
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 19:59:38 UTC 2024
    - 43.8K bytes
    - Viewed (0)
  10. src/crypto/internal/nistec/p256_asm_ppc64le.s

    	LXVD2X (P2ptr+R16), X2L
    	LXVD2X (P2ptr+R17), Y2H
    	LXVD2X (P2ptr+R18), Y2L
    	LXVD2X (P2ptr+R19), Z2H
    	LXVD2X (P2ptr+R20), Z2L
    
    	VSEL X1H, X2H, SEL, X1H
    	VSEL X1L, X2L, SEL, X1L
    	VSEL Y1H, Y2H, SEL, Y1H
    	VSEL Y1L, Y2L, SEL, Y1L
    	VSEL Z1H, Z2H, SEL, Z1H
    	VSEL Z1L, Z2L, SEL, Z1L
    
    	STXVD2X X1H, (P3ptr+R0)
    	STXVD2X X1L, (P3ptr+R16)
    	STXVD2X Y1H, (P3ptr+R17)
    	STXVD2X Y1L, (P3ptr+R18)
    	STXVD2X Z1H, (P3ptr+R19)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 04 17:29:44 UTC 2024
    - 56.5K bytes
    - Viewed (0)
Back to top