Enum spirv::CLOp

source ·
#[repr(u32)]
pub enum CLOp {
Show 162 variants acos = 0, acosh = 1, acospi = 2, asin = 3, asinh = 4, asinpi = 5, atan = 6, atan2 = 7, atanh = 8, atanpi = 9, atan2pi = 10, cbrt = 11, ceil = 12, copysign = 13, cos = 14, cosh = 15, cospi = 16, erfc = 17, erf = 18, exp = 19, exp2 = 20, exp10 = 21, expm1 = 22, fabs = 23, fdim = 24, floor = 25, fma = 26, fmax = 27, fmin = 28, fmod = 29, fract = 30, frexp = 31, hypot = 32, ilogb = 33, ldexp = 34, lgamma = 35, lgamma_r = 36, log = 37, log2 = 38, log10 = 39, log1p = 40, logb = 41, mad = 42, maxmag = 43, minmag = 44, modf = 45, nan = 46, nextafter = 47, pow = 48, pown = 49, powr = 50, remainder = 51, remquo = 52, rint = 53, rootn = 54, round = 55, rsqrt = 56, sin = 57, sincos = 58, sinh = 59, sinpi = 60, sqrt = 61, tan = 62, tanh = 63, tanpi = 64, tgamma = 65, trunc = 66, half_cos = 67, half_divide = 68, half_exp = 69, half_exp2 = 70, half_exp10 = 71, half_log = 72, half_log2 = 73, half_log10 = 74, half_powr = 75, half_recip = 76, half_rsqrt = 77, half_sin = 78, half_sqrt = 79, half_tan = 80, native_cos = 81, native_divide = 82, native_exp = 83, native_exp2 = 84, native_exp10 = 85, native_log = 86, native_log2 = 87, native_log10 = 88, native_powr = 89, native_recip = 90, native_rsqrt = 91, native_sin = 92, native_sqrt = 93, native_tan = 94, fclamp = 95, degrees = 96, fmax_common = 97, fmin_common = 98, mix = 99, radians = 100, step = 101, smoothstep = 102, sign = 103, cross = 104, distance = 105, length = 106, normalize = 107, fast_distance = 108, fast_length = 109, fast_normalize = 110, s_abs = 141, s_abs_diff = 142, s_add_sat = 143, u_add_sat = 144, s_hadd = 145, u_hadd = 146, s_rhadd = 147, u_rhadd = 148, s_clamp = 149, u_clamp = 150, clz = 151, ctz = 152, s_mad_hi = 153, u_mad_sat = 154, s_mad_sat = 155, s_max = 156, u_max = 157, s_min = 158, u_min = 159, s_mul_hi = 160, rotate = 161, s_sub_sat = 162, u_sub_sat = 163, u_upsample = 164, s_upsample = 165, popcount = 166, s_mad24 = 167, u_mad24 = 168, s_mul24 = 169, u_mul24 = 170, vloadn = 171, vstoren = 172, vload_half = 173, vload_halfn = 174, vstore_half = 175, vstore_half_r = 176, vstore_halfn = 177, vstore_halfn_r = 178, vloada_halfn = 179, vstorea_halfn = 180, vstorea_halfn_r = 181, shuffle = 182, shuffle2 = 183, printf = 184, prefetch = 185, bitselect = 186, select = 187, u_abs = 201, u_abs_diff = 202, u_mul_hi = 203, u_mad_hi = 204,
}
Expand description

OpenCL.std extended instruction opcode

Variants§

§

acos = 0

§

acosh = 1

§

acospi = 2

§

asin = 3

§

asinh = 4

§

asinpi = 5

§

atan = 6

§

atan2 = 7

§

atanh = 8

§

atanpi = 9

§

atan2pi = 10

§

cbrt = 11

§

ceil = 12

§

copysign = 13

§

cos = 14

§

cosh = 15

§

cospi = 16

§

erfc = 17

§

erf = 18

§

exp = 19

§

exp2 = 20

§

exp10 = 21

§

expm1 = 22

§

fabs = 23

§

fdim = 24

§

floor = 25

§

fma = 26

§

fmax = 27

§

fmin = 28

§

fmod = 29

§

fract = 30

§

frexp = 31

§

hypot = 32

§

ilogb = 33

§

ldexp = 34

§

lgamma = 35

§

lgamma_r = 36

§

log = 37

§

log2 = 38

§

log10 = 39

§

log1p = 40

§

logb = 41

§

mad = 42

§

maxmag = 43

§

minmag = 44

§

modf = 45

§

nan = 46

§

nextafter = 47

§

pow = 48

§

pown = 49

§

powr = 50

§

remainder = 51

§

remquo = 52

§

rint = 53

§

rootn = 54

§

round = 55

§

rsqrt = 56

§

sin = 57

§

sincos = 58

§

sinh = 59

§

sinpi = 60

§

sqrt = 61

§

tan = 62

§

tanh = 63

§

tanpi = 64

§

tgamma = 65

§

trunc = 66

§

half_cos = 67

§

half_divide = 68

§

half_exp = 69

§

half_exp2 = 70

§

half_exp10 = 71

§

half_log = 72

§

half_log2 = 73

§

half_log10 = 74

§

half_powr = 75

§

half_recip = 76

§

half_rsqrt = 77

§

half_sin = 78

§

half_sqrt = 79

§

half_tan = 80

§

native_cos = 81

§

native_divide = 82

§

native_exp = 83

§

native_exp2 = 84

§

native_exp10 = 85

§

native_log = 86

§

native_log2 = 87

§

native_log10 = 88

§

native_powr = 89

§

native_recip = 90

§

native_rsqrt = 91

§

native_sin = 92

§

native_sqrt = 93

§

native_tan = 94

§

fclamp = 95

§

degrees = 96

§

fmax_common = 97

§

fmin_common = 98

§

mix = 99

§

radians = 100

§

step = 101

§

smoothstep = 102

§

sign = 103

§

cross = 104

§

distance = 105

§

length = 106

§

normalize = 107

§

fast_distance = 108

§

fast_length = 109

§

fast_normalize = 110

§

s_abs = 141

§

s_abs_diff = 142

§

s_add_sat = 143

§

u_add_sat = 144

§

s_hadd = 145

§

u_hadd = 146

§

s_rhadd = 147

§

u_rhadd = 148

§

s_clamp = 149

§

u_clamp = 150

§

clz = 151

§

ctz = 152

§

s_mad_hi = 153

§

u_mad_sat = 154

§

s_mad_sat = 155

§

s_max = 156

§

u_max = 157

§

s_min = 158

§

u_min = 159

§

s_mul_hi = 160

§

rotate = 161

§

s_sub_sat = 162

§

u_sub_sat = 163

§

u_upsample = 164

§

s_upsample = 165

§

popcount = 166

§

s_mad24 = 167

§

u_mad24 = 168

§

s_mul24 = 169

§

u_mul24 = 170

§

vloadn = 171

§

vstoren = 172

§

vload_half = 173

§

vload_halfn = 174

§

vstore_half = 175

§

vstore_half_r = 176

§

vstore_halfn = 177

§

vstore_halfn_r = 178

§

vloada_halfn = 179

§

vstorea_halfn = 180

§

vstorea_halfn_r = 181

§

shuffle = 182

§

shuffle2 = 183

§

printf = 184

§

prefetch = 185

§

bitselect = 186

§

select = 187

§

u_abs = 201

§

u_abs_diff = 202

§

u_mul_hi = 203

§

u_mad_hi = 204

Implementations§

source§

impl CLOp

source

pub fn from_u32(n: u32) -> Option<Self>

Trait Implementations§

source§

impl Clone for CLOp

source§

fn clone(&self) -> CLOp

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CLOp

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Hash for CLOp

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Ord for CLOp

source§

fn cmp(&self, other: &CLOp) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized + PartialOrd,

Restrict a value to a certain interval. Read more
source§

impl PartialEq for CLOp

source§

fn eq(&self, other: &CLOp) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PartialOrd for CLOp

source§

fn partial_cmp(&self, other: &CLOp) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · source§

fn lt(&self, other: &Rhs) -> bool

This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · source§

fn le(&self, other: &Rhs) -> bool

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · source§

fn gt(&self, other: &Rhs) -> bool

This method tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · source§

fn ge(&self, other: &Rhs) -> bool

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more
source§

impl Copy for CLOp

source§

impl Eq for CLOp

source§

impl StructuralEq for CLOp

source§

impl StructuralPartialEq for CLOp

Auto Trait Implementations§

§

impl RefUnwindSafe for CLOp

§

impl Send for CLOp

§

impl Sync for CLOp

§

impl Unpin for CLOp

§

impl UnwindSafe for CLOp

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.