tiny.choir.backends.wasm.emission.types
Defined in backends.wasm.emission.
API (4)
Actions
Public operations.
Types and contracts
Public types and contracts.
Source
Source: lib/choir/src/backends/wasm/emission/root.zig:12
zig
pub const types = @import("types.zig");Source: lib/choir/src/backends/wasm/emission/types.zig
zig
const std = @import("std");const binary = @import("../binary/root.zig");const ir = @import("../../../core/root.zig");const dialects = @import("../../../dialects/root.zig");const MemrefDialect = dialects.MemrefDialect;pub const Error = error{CodeGenFailed};pub fn typeIsMemref(typ: ir.Type) bool { const type_name = typ.getDialectTypeName() orelse return false; return std.mem.eql(u8, type_name, MemrefDialect.name);}pub fn wasmTypeForType(typ: ir.Type) Error!binary.ValueType { if (typeIsMemref(typ)) return .i32; const scalar = scalarKindForType(typ) orelse return error.CodeGenFailed; return switch (scalar) { .i8, .i16, .i32, .u8, .u16, .u32, .index, .bool => .i32, .i64, .u64 => .i64, .f32 => .f32, .f64 => .f64, .f16, .bf16 => error.CodeGenFailed, };}pub fn scalarKindForType(typ: ir.Type) ?dialects.arith.ScalarKind { const type_name = typ.getDialectTypeName() orelse return null; return dialects.arith.scalarKindFromTypeName(type_name);}Complete caller list for backends.wasm.emission.types.scalarKindForType
7 direct callers.
lib.choir.src.backends.wasm.emission.function.encoder.Encoder[function] — private source atlib/choir/src/backends/wasm/emission/function/encoder.zig:73in nearest public ownertiny.choir.backends.wasm.emission.function.encodertiny.choir.backends.wasm.emission.function.instruction.arithmetic.lowering.writeBinary[function] atlib/choir/src/backends/wasm/emission/function/instruction/arithmetic/lowering.zig:58tiny.choir.backends.wasm.emission.function.instruction.arithmetic.lowering.writeCmp[function] atlib/choir/src/backends/wasm/emission/function/instruction/arithmetic/lowering.zig:76tiny.choir.backends.wasm.emission.function.instruction.arithmetic.lowering.writeConstant[function] atlib/choir/src/backends/wasm/emission/function/instruction/arithmetic/lowering.zig:16lib.choir.src.backends.wasm.emission.function.instruction.arithmetic.lowering.writeUnary[function] — private source atlib/choir/src/backends/wasm/emission/function/instruction/arithmetic/lowering.zig:134in nearest public ownertiny.choir.backends.wasm.emission.function.instruction.arithmetic.loweringtiny.choir.backends.wasm.emission.function.instruction.cast.write[function] atlib/choir/src/backends/wasm/emission/function/instruction/cast.zig:9tiny.choir.backends.wasm.emission.types.wasmTypeForType[function] atlib/choir/src/backends/wasm/emission/types.zig:15
Audit
| Definitions | 5 |
|---|---|
| Public names | 5 |
| Members | 1 |
| Version | 26.7.0 |
| Revision | daab053ee433 |