17 | module Compiler.Stablehlo.Dialect.Serialization
19 | import Compiler.MLIR.IR.BuiltinOps
20 | import Compiler.LLVM.Support.RawOStream
22 | import Compiler.String
24 | ffi : String -> String
25 | ffi = libxla "c/stablehlo/dialect/Serialization.h"
27 | %foreign (ffi "serializePortableArtifact")
28 | prim__serializePortableArtifact : GCAnyPtr -> AnyPtr -> GCAnyPtr -> PrimIO Int
31 | serializePortableArtifact :
32 | HasIO io => ModuleOp -> CppString -> RawStringOStream -> io Bool
33 | serializePortableArtifact (MkModuleOp op) (MkCppString targetVersion) (MkRawStringOStream os) = do
34 | ok <- primIO $
prim__serializePortableArtifact op targetVersion os
35 | pure (cIntToBool ok)