numpy.util
class AxisError
Constructors
1
class TooHardError
Constructors
1
tuple_get(tup, idx)
tuple_set(tup, idx, elm, init = 0)
tuple_add(tup, idx, inc, init = 0)
tuple_delete(tup, idx, init = 0)
tuple_insert(tup, idx, elm, init = 0)
tuple_swap(tup, idx1, idx2, init = 0)
tuple_perm(tup, perm)
tuple_perm_inv(perm)
tuple_apply(fn, tup1, tup2)
tuple_insert_tuple(tup, idx, ins, init = 0)
count(shape)
tuple_range(n: Literal[int])
tuple_equal(t1, t2)
broadcast(shape1, shape2)
normalize_index(idx: int, axis: int, n: int)
normalize_axis_index(axis: int, ndim: int, prefix: str = "")
has_duplicate(t)
normalize_axis_tuple(axis, ndim: int, argname: str = "", allow_duplicates: bool = False)
reconstruct_index(t1, t2, mask)
index_to_coords(index: int, limits)
index_to_fcoords(index: int, limits)
coords_to_index(coords: S, limits: S, S: type)
coords_to_findex(coords: S, limits: S, S: type)
sort(p: Ptr[T], n: int, key, T: type)
sort_by_stride(shape, strides)
median(arr, n: int)
multirange(limits)
fmultirange(limits)
noop(x: T, D: type, T: type)
ret {=D} %x
zero(T: type)
ret {=T} zeroinitializer
inf64()
ret double 0x7FF0000000000000
inf32()
ret float 0x7FF0000000000000
inf16()
ret half 0x7FF0000000000000
inf(T: type)
nan64()
ret double 0x7FF8000000000000
nan32()
ret float 0x7FF8000000000000
nan16()
ret half 0x7FF8000000000000
nan(T: type)
minnum64()
ret double 0x10000000000000
minnum32()
ret float 0x3810000000000000
minnum16()
ret half 0xHFBFF
minnum(T: type)
maxnum64()
ret double 0x7FEFFFFFFFFFFFFF
maxnum32()
ret float 0x47EFFFFFE0000000
maxnum16()
ret half 0xH7BFF
maxnum(T: type)
eps64()
ret double 0x3CB0000000000000
eps32()
ret float 0x3E80000000000000
eps16()
ret half 0xH1400
eps(T: type)
mantdig64()
mantdig32()
mantdig16()
mantdig(T: type)
maxexp64()
maxexp32()
maxexp16()
maxexp(T: type)
bitcast(x: T, D: type, T: type)
%y = bitcast {=T} %x to {=D}
ret {=D} %y
uitofp(x: T, D: type, T: type)
%y = uitofp {=T} %x to {=D}
ret {=D} %y
sitofp(x: T, D: type, T: type)
%y = sitofp {=T} %x to {=D}
ret {=D} %y
fptoui(x: T, D: type, T: type)
%y = fptoui {=T} %x to {=D}
ret {=D} %y
fptosi(x: T, D: type, T: type)
%y = fptosi {=T} %x to {=D}
ret {=D} %y
zext(x: T, D: type, T: type)
%y = zext {=T} %x to {=D}
ret {=D} %y
sext(x: T, D: type, T: type)
%y = sext {=T} %x to {=D}
ret {=D} %y
itrunc(x: T, D: type, T: type)
%y = trunc {=T} %x to {=D}
ret {=D} %y
fpext(x: T, D: type, T: type)
%y = fpext {=T} %x to {=D}
ret {=D} %y
fptrunc(x: T, D: type, T: type)
%y = fptrunc {=T} %x to {=D}
ret {=D} %y
fmin64(x: float, y: float)
declare double @llvm.minimum.f64(double, double)
%z = call double @llvm.minimum.f64(double %x, double %y)
ret double %z
fmin32(x: float32, y: float32)
declare float @llvm.minimum.f32(float, float)
%z = call float @llvm.minimum.f32(float %x, float %y)
ret float %z
fmin16(x: float16, y: float16)
declare half @llvm.minimum.f16(half, half)
%z = call half @llvm.minimum.f16(half %x, half %y)
ret half %z
fmin(x, y)
fmax64(x: float, y: float)
declare double @llvm.maximum.f64(double, double)
%z = call double @llvm.maximum.f64(double %x, double %y)
ret double %z
fmax32(x: float32, y: float32)
declare float @llvm.maximum.f32(float, float)
%z = call float @llvm.maximum.f32(float %x, float %y)
ret float %z
fmax16(x: float16, y: float16)
declare half @llvm.maximum.f16(half, half)
%z = call half @llvm.maximum.f16(half %x, half %y)
ret half %z
fmax(x, y)
fminnum64(x: float, y: float)
declare double @llvm.minimumnum.f64(double, double)
%z = call double @llvm.minimumnum.f64(double %x, double %y)
ret double %z
fminnum32(x: float32, y: float32)
declare float @llvm.minimumnum.f32(float, float)
%z = call float @llvm.minimumnum.f32(float %x, float %y)
ret float %z
fminnum16(x: float16, y: float16)
declare half @llvm.minimumnum.f16(half, half)
%z = call half @llvm.minimumnum.f16(half %x, half %y)
ret half %z
fminnum(x, y)
fmaxnum64(x: float, y: float)
declare double @llvm.maximumnum.f64(double, double)
%z = call double @llvm.maximumnum.f64(double %x, double %y)
ret double %z
fmaxnum32(x: float32, y: float32)
declare float @llvm.maximumnum.f32(float, float)
%z = call float @llvm.maximumnum.f32(float %x, float %y)
ret float %z
fmaxnum16(x: float16, y: float16)
declare half @llvm.maximumnum.f16(half, half)
%z = call half @llvm.maximumnum.f16(half %x, half %y)
ret half %z
fmaxnum(x, y)
bswap(x: T, T: type)
declare {=T} @llvm.bswap.{=T}({=T})
%y = call {=T} @llvm.bswap.{=T}({=T} %x)
ret {=T} %y
isinf64(x: float)
declare double @llvm.fabs.f64(double)
%a = call double @llvm.fabs.f64(double %x)
%y = fcmp oeq double %a, 0x7FF0000000000000
%z = zext i1 %y to i8
ret i8 %z
isinf32(x: float32)
declare float @llvm.fabs.f32(float)
%a = call float @llvm.fabs.f32(float %x)
%y = fcmp oeq float %a, 0x7FF0000000000000
%z = zext i1 %y to i8
ret i8 %z
isinf16(x: float16)
declare half @llvm.fabs.f16(half)
%a = call half @llvm.fabs.f16(half %x)
%y = fcmp oeq half %a, 0x7FF0000000000000
%z = zext i1 %y to i8
ret i8 %z
isinf(x)
isnan64(x: float)
%y = fcmp uno double %x, 0.000000e+00
%z = zext i1 %y to i8
ret i8 %z
isnan32(x: float32)
%y = fcmp uno float %x, 0.000000e+00
%z = zext i1 %y to i8
ret i8 %z
isnan16(x: float16)
%y = fcmp uno half %x, 0.000000e+00
%z = zext i1 %y to i8
ret i8 %z
isnan(x)
signbit64(x: float)
%n = bitcast double %x to i64
%s = icmp slt i64 %n, 0
%b = zext i1 %s to i8
ret i8 %b
signbit32(x: float32)
%n = bitcast float %x to i32
%s = icmp slt i32 %n, 0
%b = zext i1 %s to i8
ret i8 %b
signbit16(x: float16)
%n = bitcast half %x to i16
%s = icmp slt i16 %n, 0
%b = zext i1 %s to i8
ret i8 %b
signbit(x)
fabs64(x: float)
declare double @llvm.fabs.f64(double)
%y = call double @llvm.fabs.f64(double %x)
ret double %y
fabs32(x: float32)
declare float @llvm.fabs.f32(float)
%y = call float @llvm.fabs.f32(float %x)
ret float %y
fabs16(x: float16)
declare half @llvm.fabs.f16(half)
%y = call half @llvm.fabs.f16(half %x)
ret half %y
fabs(x)
isfinite64(x: float)
isfinite32(x: float32)
isfinite16(x: float16)
isfinite(x)
rint64(x: float)
declare double @llvm.rint.f64(double)
%y = call double @llvm.rint.f64(double %x)
ret double %y
rint32(x: float32)
declare float @llvm.rint.f32(float)
%y = call float @llvm.rint.f32(float %x)
ret float %y
rint16(x: float16)
declare half @llvm.rint.f16(half)
%y = call half @llvm.rint.f16(half %x)
ret half %y
rint(x)
floor64(x: float)
declare double @llvm.floor.f64(double)
%y = call double @llvm.floor.f64(double %x)
ret double %y
floor32(x: float32)
declare float @llvm.floor.f32(float)
%y = call float @llvm.floor.f32(float %x)
ret float %y
floor16(x: float16)
declare half @llvm.floor.f16(half)
%y = call half @llvm.floor.f16(half %x)
ret half %y
floor(x)
ceil64(x: float)
declare double @llvm.ceil.f64(double)
%y = call double @llvm.ceil.f64(double %x)
ret double %y
ceil32(x: float32)
declare float @llvm.ceil.f32(float)
%y = call float @llvm.ceil.f32(float %x)
ret float %y
ceil16(x: float16)
declare half @llvm.ceil.f16(half)
%y = call half @llvm.ceil.f16(half %x)
ret half %y
ceil(x)
trunc64(x: float)
declare double @llvm.trunc.f64(double)
%y = call double @llvm.trunc.f64(double %x)
ret double %y
trunc32(x: float32)
declare float @llvm.trunc.f32(float)
%y = call float @llvm.trunc.f32(float %x)
ret float %y
trunc16(x: float16)
declare half @llvm.trunc.f16(half)
%y = call half @llvm.trunc.f16(half %x)
ret half %y
trunc(x)
exp64(x: float)
declare double @llvm.exp.f64(double)
%y = call double @llvm.exp.f64(double %x)
ret double %y
exp32(x: float32)
declare float @llvm.exp.f32(float)
%y = call float @llvm.exp.f32(float %x)
ret float %y
exp16(x: float16)
declare half @llvm.exp.f16(half)
%y = call half @llvm.exp.f16(half %x)
ret half %y
exp(x)
exp2_64(x: float)
declare double @llvm.exp2.f64(double)
%y = call double @llvm.exp2.f64(double %x)
ret double %y
exp2_32(x: float32)
declare float @llvm.exp2.f32(float)
%y = call float @llvm.exp2.f32(float %x)
ret float %y
exp2_16(x: float16)
declare half @llvm.exp2.f16(half)
%y = call half @llvm.exp2.f16(half %x)
ret half %y
exp2(x)
expm1_64(x: float)
expm1_32(x: float32)
expm1(x)
log64(x: float)
declare double @llvm.log.f64(double)
%y = call double @llvm.log.f64(double %x)
ret double %y
log32(x: float32)
declare float @llvm.log.f32(float)
%y = call float @llvm.log.f32(float %x)
ret float %y
log16(x: float16)
declare half @llvm.log.f16(half)
%y = call half @llvm.log.f16(half %x)
ret half %y
log(x)
log2_64(x: float)
declare double @llvm.log2.f64(double)
%y = call double @llvm.log2.f64(double %x)
ret double %y
log2_32(x: float32)
declare float @llvm.log2.f32(float)
%y = call float @llvm.log2.f32(float %x)
ret float %y
log2_16(x: float16)
declare half @llvm.log2.f16(half)
%y = call half @llvm.log2.f16(half %x)
ret half %y
log2(x)
log10_64(x: float)
declare double @llvm.log10.f64(double)
%y = call double @llvm.log10.f64(double %x)
ret double %y
log10_32(x: float32)
declare float @llvm.log10.f32(float)
%y = call float @llvm.log10.f32(float %x)
ret float %y
log10_16(x: float16)
declare half @llvm.log10.f16(half)
%y = call half @llvm.log10.f16(half %x)
ret half %y
log10(x)
log1p64(x: float)
log1p32(x: float32)
log1p(x)
sqrt64(x: float)
declare double @llvm.sqrt.f64(double)
%y = call double @llvm.sqrt.f64(double %x)
ret double %y
sqrt32(x: float32)
declare float @llvm.sqrt.f32(float)
%y = call float @llvm.sqrt.f32(float %x)
ret float %y
sqrt16(x: float16)
declare half @llvm.sqrt.f16(half)
%y = call half @llvm.sqrt.f16(half %x)
ret half %y
sqrt(x)
cbrt64(x: float)
cbrt32(x: float32)
cbrt(x)
sin64(x: float)
declare double @llvm.sin.f64(double)
%y = call double @llvm.sin.f64(double %x)
ret double %y
sin32(x: float32)
declare float @llvm.sin.f32(float)
%y = call float @llvm.sin.f32(float %x)
ret float %y
sin16(x: float16)
declare half @llvm.sin.f16(half)
%y = call half @llvm.sin.f16(half %x)
ret half %y
sin(x)
cos64(x: float)
declare double @llvm.cos.f64(double)
%y = call double @llvm.cos.f64(double %x)
ret double %y
cos32(x: float32)
declare float @llvm.cos.f32(float)
%y = call float @llvm.cos.f32(float %x)
ret float %y
cos16(x: float16)
declare half @llvm.cos.f16(half)
%y = call half @llvm.cos.f16(half %x)
ret half %y
cos(x)
tan64(x: float)
tan32(x: float32)
tan(x)
asin64(x: float)
asin32(x: float32)
asin(x)
acos64(x: float)
acos32(x: float32)
acos(x)
atan64(x: float)
atan32(x: float32)
atan(x)
sinh64(x: float)
sinh32(x: float32)
sinh(x)
cosh64(x: float)
cosh32(x: float32)
cosh(x)
tanh64(x: float)
tanh32(x: float32)
tanh(x)
asinh64(x: float)
asinh32(x: float32)
asinh(x)
acosh64(x: float)
acosh32(x: float32)
acosh(x)
atanh64(x: float)
atanh32(x: float32)
atanh(x)
atan2_64(x: float, y: float)
atan2_32(x: float32, y: float32)
atan2(x, y)
copysign64(x: float, y: float)
declare double @llvm.copysign.f64(double, double)
%z = call double @llvm.copysign.f64(double %x, double %y)
ret double %z
copysign32(x: float32, y: float32)
declare float @llvm.copysign.f32(float, float)
%z = call float @llvm.copysign.f32(float %x, float %y)
ret float %z
copysign16(x: float16, y: float16)
declare half @llvm.copysign.f16(half, half)
%z = call half @llvm.copysign.f16(half %x, half %y)
ret half %z
copysign(x, y)
pow64(x: float, y: float)
declare double @llvm.pow.f64(double, double)
%z = call double @llvm.pow.f64(double %x, double %y)
ret double %z
pow32(x: float32, y: float32)
declare float @llvm.pow.f32(float, float)
%z = call float @llvm.pow.f32(float %x, float %y)
ret float %z
pow16(x: float16, y: float16)
declare half @llvm.pow.f16(half, half)
%z = call half @llvm.pow.f16(half %x, half %y)
ret half %z
pow(x, y)
frexp64(x: float)
declare { double, i32 } @llvm.frexp.f64(double)
%y = call { double, i32 } @llvm.frexp.f64(double %x)
%y0 = extractvalue { double, i32 } %y, 0
%y1 = extractvalue { double, i32 } %y, 1
%z1 = sext i32 %y1 to i64
%r0 = insertvalue { double, i64 } undef, double %y0, 0
%r1 = insertvalue { double, i64 } %r0, i64 %z1, 1
ret { double, i64 } %r1
frexp32(x: float32)
declare { float, i32 } @llvm.frexp.f32(float)
%y = call { float, i32 } @llvm.frexp.f32(float %x)
%y0 = extractvalue { float, i32 } %y, 0
%y1 = extractvalue { float, i32 } %y, 1
%z1 = sext i32 %y1 to i64
%r0 = insertvalue { float, i64 } undef, float %y0, 0
%r1 = insertvalue { float, i64 } %r0, i64 %z1, 1
ret { float, i64 } %r1
frexp16(x: float16)
declare { half, i32 } @llvm.frexp.f16(half)
%y = call { half, i32 } @llvm.frexp.f16(half %x)
%y0 = extractvalue { half, i32 } %y, 0
%y1 = extractvalue { half, i32 } %y, 1
%z1 = sext i32 %y1 to i64
%r0 = insertvalue { half, i64 } undef, half %y0, 0
%r1 = insertvalue { half, i64 } %r0, i64 %z1, 1
ret { half, i64 } %r1
frexp(x)
ldexp64(x: float, exp: int)
declare double @llvm.ldexp.f64(double, i32)
%e = trunc i64 %exp to i32
%y = call double @llvm.ldexp.f64(double %x, i32 %e)
ret double %y
ldexp32(x: float32, exp: int)
declare float @llvm.ldexp.f32(float, i32)
%e = trunc i64 %exp to i32
%y = call float @llvm.ldexp.f32(float %x, i32 %e)
ret float %y
ldexp16(x: float16, exp: int)
ldexp(x, exp: int)
LOGE2 = 0.693147180559945309417232121458176568
LOGE10 = 2.302585092994045684017991454684364208
LOG2E = 1.442695040888963407359924681001892137
LOG10E = 0.434294481903251827651128918916605082
SQRT2 = 1.414213562373095048801688724209698079
PI = 3.141592653589793238462643383279502884
PI_2 = 1.570796326794896619231321691639751442
E = 2.718281828459045235360287471352662498
logaddexp64(x: float, y: float)
logaddexp32(x: float32, y: float32)
logaddexp(x, y)
logaddexp2_64(x: float, y: float)
logaddexp2_32(x: float32, y: float32)
logaddexp2(x, y)
hypot64(x: float, y: float)
hypot32(x: float32, y: float32)
hypot(x, y)
modf64(x: float)
modf32(x: float32)
modf16(x: float16)
modf(x)
nextafter64(x: float, y: float)
nextafter32(x: float32, y: float32)
nextafter16(x: float16, y: float16)
nextafter(x, y)
cdiv_int(x: Int[N], y: Int[N], N: Literal[int])
%z = sdiv i{=N} %x, %y
ret i{=N} %z
cdiv_int(x: int, y: int)
%z = sdiv i64 %x, %y
ret i64 %z
cmod_int(x: Int[N], y: Int[N], N: Literal[int])
%z = srem i{=N} %x, %y
ret i{=N} %z
cmod_int(x: int, y: int)
%z = srem i64 %x, %y
ret i64 %z
pydiv(x: Int[N], y: Int[N], N: Literal[int])
pydiv(x: int, y: int)
pymod(x: Int[N], y: Int[N], N: Literal[int])
pymod(x: int, y: int)
cdiv64(x: float, y: float)
%z = fdiv double %x, %y
ret double %z
cdiv32(x: float32, y: float32)
%z = fdiv float %x, %y
ret float %z
cdiv16(x: float16, y: float16)
%z = fdiv half %x, %y
ret half %z
cdiv(x, y)
cmod64(x: float, y: float)
%z = frem double %x, %y
ret double %z
cmod32(x: float32, y: float32)
%z = frem float %x, %y
ret float %z
cmod16(x: float16, y: float16)
%z = frem half %x, %y
ret half %z
cmod(x, y)
pyfmod(x, y)
i0_64(x: float)
i0_32(x: float32)
i0(x)
call_vectorized_loop(in1: Ptr[T], is1: int, in2: Ptr[T], is2: int, out: Ptr, os: int, n: int, func: Literal[str], T: type)
isint(X: type)
isfloat(X: type)
iscomplex(X: type)
isinexact(X: type)
sizeof(X: type)
atomic(X: type)
free(p: Ptr[T], T: type)
realloc(p: Ptr[T], newsize: int, oldsize: int, T: type)
strides(shape, forder: bool, X: type)
cast(x, T: type)
coerce(T1: type, T2: type)
op_types(T1: type, T2: type)
to_float(x)
str_to_dtype(s: Literal[str])
dtype_to_str(dtype: type, include_byteorder: bool = True)