mirror of
https://github.com/anoma/juvix.git
synced 2024-12-14 08:27:03 +03:00
a4f551547b
* Adds a RISC0 backend which generates Rust code that can be compiled with the official RISC0 toolchain. * The RISC0 backend is a wrapper around the Rust backend. * Adds the `risc0-rust` to the `compile` CLI command, which creates a directory containing host and guest Rust sources for the RISC0 zkVM. The generated code can be compiled/run using `cargo` from inside the created directory (requires having RISC0 installed: https://dev.risczero.com/api/zkvm/install).
68 lines
1.4 KiB
Haskell
68 lines
1.4 KiB
Haskell
module Main (main) where
|
|
|
|
import Anoma qualified
|
|
import Asm qualified
|
|
import BackendGeb qualified
|
|
import BackendMarkdown qualified
|
|
import Base
|
|
import Casm qualified
|
|
import Compilation qualified
|
|
import Core qualified
|
|
import Examples qualified
|
|
import Format qualified
|
|
import Formatter qualified
|
|
import Internal qualified
|
|
import Nockma qualified
|
|
import Package qualified
|
|
import Parsing qualified
|
|
import Reg qualified
|
|
import Repl qualified
|
|
import Resolver qualified
|
|
import Runtime qualified
|
|
import Rust qualified
|
|
import Scope qualified
|
|
import Termination qualified
|
|
import Tree qualified
|
|
import Typecheck qualified
|
|
import VampIR qualified
|
|
|
|
slowTests :: TestTree
|
|
slowTests =
|
|
sequentialTestGroup
|
|
"Juvix slow tests"
|
|
AllFinish
|
|
[ BackendGeb.allTests,
|
|
Runtime.allTests,
|
|
Reg.allTests,
|
|
Asm.allTests,
|
|
Tree.allTests,
|
|
Core.allTests,
|
|
Internal.allTests,
|
|
Compilation.allTests,
|
|
Examples.allTests,
|
|
Rust.allTests,
|
|
Casm.allTests,
|
|
VampIR.allTests,
|
|
Anoma.allTests,
|
|
Repl.allTests
|
|
]
|
|
|
|
fastTests :: TestTree
|
|
fastTests =
|
|
testGroup
|
|
"Juvix fast tests"
|
|
[ Parsing.allTests,
|
|
Resolver.allTests,
|
|
Scope.allTests,
|
|
Termination.allTests,
|
|
Typecheck.allTests,
|
|
Format.allTests,
|
|
Formatter.allTests,
|
|
Package.allTests,
|
|
BackendMarkdown.allTests,
|
|
Nockma.allTests
|
|
]
|
|
|
|
main :: IO ()
|
|
main = defaultMain (testGroup "Juvix tests" [fastTests, slowTests])
|