Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ include("skainet-compile:skainet-compile-opt")
include("skainet-compile:skainet-compile-json")
include("skainet-compile:skainet-compile-hlo")
include("skainet-compile:skainet-compile-c")
include("skainet-compile:skainet-compile-minerva")

// ====== BACKENDS
include("skainet-backends:skainet-backend-api")
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
public final class sk/ainet/compile/minerva/MinervaExportBackend {
public static final field INSTANCE Lsk/ainet/compile/minerva/MinervaExportBackend;
public static final field backendName Ljava/lang/String;
public static final field phaseOneScope Ljava/lang/String;
}

public final class sk/ainet/compile/minerva/MinervaExportBundle {
public fun <init> (Ljava/lang/String;Ljava/lang/String;Lsk/ainet/compile/minerva/MinervaTarget;Lsk/ainet/compile/minerva/MinervaQuantization;Ljava/util/List;Ljava/lang/String;)V
public synthetic fun <init> (Ljava/lang/String;Ljava/lang/String;Lsk/ainet/compile/minerva/MinervaTarget;Lsk/ainet/compile/minerva/MinervaQuantization;Ljava/util/List;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Ljava/lang/String;
public final fun component2 ()Ljava/lang/String;
public final fun component3 ()Lsk/ainet/compile/minerva/MinervaTarget;
public final fun component4 ()Lsk/ainet/compile/minerva/MinervaQuantization;
public final fun component5 ()Ljava/util/List;
public final fun component6 ()Ljava/lang/String;
public final fun copy (Ljava/lang/String;Ljava/lang/String;Lsk/ainet/compile/minerva/MinervaTarget;Lsk/ainet/compile/minerva/MinervaQuantization;Ljava/util/List;Ljava/lang/String;)Lsk/ainet/compile/minerva/MinervaExportBundle;
public static synthetic fun copy$default (Lsk/ainet/compile/minerva/MinervaExportBundle;Ljava/lang/String;Ljava/lang/String;Lsk/ainet/compile/minerva/MinervaTarget;Lsk/ainet/compile/minerva/MinervaQuantization;Ljava/util/List;Ljava/lang/String;ILjava/lang/Object;)Lsk/ainet/compile/minerva/MinervaExportBundle;
public fun equals (Ljava/lang/Object;)Z
public final fun getGeneratedFiles ()Ljava/util/List;
public final fun getManifestPath ()Ljava/lang/String;
public final fun getOutputDir ()Ljava/lang/String;
public final fun getProjectName ()Ljava/lang/String;
public final fun getQuantization ()Lsk/ainet/compile/minerva/MinervaQuantization;
public final fun getTarget ()Lsk/ainet/compile/minerva/MinervaTarget;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}

public final class sk/ainet/compile/minerva/MinervaExportFacade {
public fun <init> ()V
public fun <init> (Ljava/lang/String;)V
public synthetic fun <init> (Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun exportGraph (Lsk/ainet/lang/graph/ComputeGraph;Lsk/ainet/compile/minerva/MinervaExportOptions;)Lsk/ainet/compile/minerva/MinervaExportResult;
public final fun exportModel (Ljava/lang/Object;Lkotlin/jvm/functions/Function1;Lsk/ainet/compile/minerva/MinervaExportOptions;)Lsk/ainet/compile/minerva/MinervaExportResult;
public final fun exportModel (Ljava/lang/Object;Lsk/ainet/compile/minerva/MinervaExportOptions;)Lsk/ainet/compile/minerva/MinervaExportResult;
public final fun getBackendName ()Ljava/lang/String;
}

public final class sk/ainet/compile/minerva/MinervaExportFailure {
public fun <init> (Lsk/ainet/compile/minerva/MinervaExportFailureKind;Lsk/ainet/compile/export/GraphExportStage;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)V
public synthetic fun <init> (Lsk/ainet/compile/minerva/MinervaExportFailureKind;Lsk/ainet/compile/export/GraphExportStage;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Lsk/ainet/compile/minerva/MinervaExportFailureKind;
public final fun component2 ()Lsk/ainet/compile/export/GraphExportStage;
public final fun component3 ()Ljava/lang/String;
public final fun component4 ()Ljava/lang/String;
public final fun component5 ()Ljava/util/Map;
public final fun copy (Lsk/ainet/compile/minerva/MinervaExportFailureKind;Lsk/ainet/compile/export/GraphExportStage;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lsk/ainet/compile/minerva/MinervaExportFailure;
public static synthetic fun copy$default (Lsk/ainet/compile/minerva/MinervaExportFailure;Lsk/ainet/compile/minerva/MinervaExportFailureKind;Lsk/ainet/compile/export/GraphExportStage;Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;ILjava/lang/Object;)Lsk/ainet/compile/minerva/MinervaExportFailure;
public fun equals (Ljava/lang/Object;)Z
public final fun getCode ()Ljava/lang/String;
public final fun getDetails ()Ljava/util/Map;
public final fun getKind ()Lsk/ainet/compile/minerva/MinervaExportFailureKind;
public final fun getMessage ()Ljava/lang/String;
public final fun getStage ()Lsk/ainet/compile/export/GraphExportStage;
public fun hashCode ()I
public fun toString ()Ljava/lang/String;
}

public final class sk/ainet/compile/minerva/MinervaExportFailureKind : java/lang/Enum {
public static final field GRAPH_VALIDATION_FAILED Lsk/ainet/compile/minerva/MinervaExportFailureKind;
public static final field NOT_IMPLEMENTED Lsk/ainet/compile/minerva/MinervaExportFailureKind;
public static final field RECORDING_FAILED Lsk/ainet/compile/minerva/MinervaExportFailureKind;
public static final field UNSUPPORTED_MODEL_TYPE Lsk/ainet/compile/minerva/MinervaExportFailureKind;
public static fun getEntries ()Lkotlin/enums/EnumEntries;
public static fun valueOf (Ljava/lang/String;)Lsk/ainet/compile/minerva/MinervaExportFailureKind;
public static fun values ()[Lsk/ainet/compile/minerva/MinervaExportFailureKind;
}

public final class sk/ainet/compile/minerva/MinervaExportOptions {
public fun <init> (Ljava/lang/String;Ljava/lang/String;Lsk/ainet/compile/minerva/MinervaTarget;Lsk/ainet/compile/minerva/MinervaQuantization;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZZZLjava/util/Map;)V
public synthetic fun <init> (Ljava/lang/String;Ljava/lang/String;Lsk/ainet/compile/minerva/MinervaTarget;Lsk/ainet/compile/minerva/MinervaQuantization;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZZZLjava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Ljava/lang/String;
public final fun component10 ()Z
public final fun component11 ()Z
public final fun component12 ()Z
public final fun component13 ()Ljava/util/Map;
public final fun component2 ()Ljava/lang/String;
public final fun component3 ()Lsk/ainet/compile/minerva/MinervaTarget;
public final fun component4 ()Lsk/ainet/compile/minerva/MinervaQuantization;
public final fun component5 ()Ljava/lang/String;
public final fun component6 ()Ljava/lang/String;
public final fun component7 ()Ljava/lang/String;
public final fun component8 ()Ljava/lang/String;
public final fun component9 ()Z
public final fun copy (Ljava/lang/String;Ljava/lang/String;Lsk/ainet/compile/minerva/MinervaTarget;Lsk/ainet/compile/minerva/MinervaQuantization;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZZZLjava/util/Map;)Lsk/ainet/compile/minerva/MinervaExportOptions;
public static synthetic fun copy$default (Lsk/ainet/compile/minerva/MinervaExportOptions;Ljava/lang/String;Ljava/lang/String;Lsk/ainet/compile/minerva/MinervaTarget;Lsk/ainet/compile/minerva/MinervaQuantization;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZZZZLjava/util/Map;ILjava/lang/Object;)Lsk/ainet/compile/minerva/MinervaExportOptions;
public fun equals (Ljava/lang/Object;)Z
public final fun getCalibrationNpz ()Ljava/lang/String;
public final fun getCompilerScript ()Ljava/lang/String;
public final fun getDumpWeights ()Z
public final fun getGenerateFirmwareExample ()Z
public final fun getGenerateHostHarness ()Z
public final fun getKeyFile ()Ljava/lang/String;
public final fun getMetadata ()Ljava/util/Map;
public final fun getOutputDir ()Ljava/lang/String;
public final fun getProjectName ()Ljava/lang/String;
public final fun getQuantization ()Lsk/ainet/compile/minerva/MinervaQuantization;
public final fun getRunHostVerification ()Z
public final fun getRuntimeRoot ()Ljava/lang/String;
public final fun getTarget ()Lsk/ainet/compile/minerva/MinervaTarget;
public fun hashCode ()I
public final fun toMetadata ()Ljava/util/Map;
public fun toString ()Ljava/lang/String;
}

public final class sk/ainet/compile/minerva/MinervaExportResult {
public fun <init> (Lsk/ainet/compile/minerva/MinervaExportOptions;Lsk/ainet/compile/export/GraphExportStatus;Lsk/ainet/compile/minerva/MinervaExportBundle;Lsk/ainet/compile/export/GraphExportDiagnosticReport;Ljava/util/List;Lsk/ainet/compile/minerva/MinervaExportFailure;Ljava/util/Map;)V
public synthetic fun <init> (Lsk/ainet/compile/minerva/MinervaExportOptions;Lsk/ainet/compile/export/GraphExportStatus;Lsk/ainet/compile/minerva/MinervaExportBundle;Lsk/ainet/compile/export/GraphExportDiagnosticReport;Ljava/util/List;Lsk/ainet/compile/minerva/MinervaExportFailure;Ljava/util/Map;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public final fun component1 ()Lsk/ainet/compile/minerva/MinervaExportOptions;
public final fun component2 ()Lsk/ainet/compile/export/GraphExportStatus;
public final fun component3 ()Lsk/ainet/compile/minerva/MinervaExportBundle;
public final fun component4 ()Lsk/ainet/compile/export/GraphExportDiagnosticReport;
public final fun component5 ()Ljava/util/List;
public final fun component6 ()Lsk/ainet/compile/minerva/MinervaExportFailure;
public final fun component7 ()Ljava/util/Map;
public final fun copy (Lsk/ainet/compile/minerva/MinervaExportOptions;Lsk/ainet/compile/export/GraphExportStatus;Lsk/ainet/compile/minerva/MinervaExportBundle;Lsk/ainet/compile/export/GraphExportDiagnosticReport;Ljava/util/List;Lsk/ainet/compile/minerva/MinervaExportFailure;Ljava/util/Map;)Lsk/ainet/compile/minerva/MinervaExportResult;
public static synthetic fun copy$default (Lsk/ainet/compile/minerva/MinervaExportResult;Lsk/ainet/compile/minerva/MinervaExportOptions;Lsk/ainet/compile/export/GraphExportStatus;Lsk/ainet/compile/minerva/MinervaExportBundle;Lsk/ainet/compile/export/GraphExportDiagnosticReport;Ljava/util/List;Lsk/ainet/compile/minerva/MinervaExportFailure;Ljava/util/Map;ILjava/lang/Object;)Lsk/ainet/compile/minerva/MinervaExportResult;
public fun equals (Ljava/lang/Object;)Z
public final fun getArtifacts ()Ljava/util/List;
public final fun getBundle ()Lsk/ainet/compile/minerva/MinervaExportBundle;
public final fun getDiagnostics ()Lsk/ainet/compile/export/GraphExportDiagnosticReport;
public final fun getFailed ()Z
public final fun getFailure ()Lsk/ainet/compile/minerva/MinervaExportFailure;
public final fun getMetadata ()Ljava/util/Map;
public final fun getOptions ()Lsk/ainet/compile/minerva/MinervaExportOptions;
public final fun getStatus ()Lsk/ainet/compile/export/GraphExportStatus;
public final fun getSucceeded ()Z
public fun hashCode ()I
public final fun requireSuccess ()Lsk/ainet/compile/minerva/MinervaExportBundle;
public fun toString ()Ljava/lang/String;
}

public final class sk/ainet/compile/minerva/MinervaQuantization : java/lang/Enum {
public static final field Q8 Lsk/ainet/compile/minerva/MinervaQuantization;
public final fun getCompilerId ()Ljava/lang/String;
public static fun getEntries ()Lkotlin/enums/EnumEntries;
public static fun valueOf (Ljava/lang/String;)Lsk/ainet/compile/minerva/MinervaQuantization;
public static fun values ()[Lsk/ainet/compile/minerva/MinervaQuantization;
}

public final class sk/ainet/compile/minerva/MinervaTarget : java/lang/Enum {
public static final field ATMEGA328P Lsk/ainet/compile/minerva/MinervaTarget;
public final fun getCompilerId ()Ljava/lang/String;
public final fun getDisplayName ()Ljava/lang/String;
public static fun getEntries ()Lkotlin/enums/EnumEntries;
public final fun getFlashBytes ()I
public final fun getSramBytes ()I
public static fun valueOf (Ljava/lang/String;)Lsk/ainet/compile/minerva/MinervaTarget;
public static fun values ()[Lsk/ainet/compile/minerva/MinervaTarget;
}

30 changes: 30 additions & 0 deletions skainet-compile/skainet-compile-minerva/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import org.jetbrains.kotlin.gradle.dsl.JvmTarget

plugins {
alias(libs.plugins.kotlinMultiplatform)
alias(libs.plugins.vanniktech.mavenPublish)
alias(libs.plugins.binary.compatibility.validator)
id("sk.ainet.dokka")
}

kotlin {
explicitApi()

jvm {
compilerOptions {
jvmTarget.set(JvmTarget.JVM_21)
}
}

sourceSets {
commonMain.dependencies {
api(project(":skainet-lang:skainet-lang-core"))
api(project(":skainet-compile:skainet-compile-core"))
api(project(":skainet-compile:skainet-compile-dag"))
}

commonTest.dependencies {
implementation(libs.kotlin.test)
}
}
}
Loading
Loading