It lives! Thanks to the cranelift team.
This commit is contained in:
4
.gitignore
vendored
4
.gitignore
vendored
@@ -1,3 +1,5 @@
|
|||||||
/target
|
/target
|
||||||
Cargo.lock
|
Cargo.lock
|
||||||
**/*.o
|
**/*.o
|
||||||
|
test
|
||||||
|
*.dSYM
|
||||||
|
|||||||
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
[submodule "vendor/wasmtime"]
|
||||||
|
path = vendor/wasmtime
|
||||||
|
url = https://github.com/bytecodealliance/wasmtime
|
||||||
10
Cargo.toml
10
Cargo.toml
@@ -16,11 +16,11 @@ path = "src/bin.rs"
|
|||||||
clap = { version = "^3.0.14", features = ["derive"] }
|
clap = { version = "^3.0.14", features = ["derive"] }
|
||||||
codespan = "0.11.1"
|
codespan = "0.11.1"
|
||||||
codespan-reporting = "0.11.1"
|
codespan-reporting = "0.11.1"
|
||||||
cranelift-codegen = "^0.89.2"
|
cranelift-codegen = { path = "vendor/wasmtime/cranelift/codegen" }
|
||||||
cranelift-frontend = "^0.89.2"
|
cranelift-frontend = { path = "vendor/wasmtime/cranelift/frontend" }
|
||||||
cranelift-module = "^0.89.2"
|
cranelift-module = { path = "vendor/wasmtime/cranelift/module" }
|
||||||
cranelift-native = "^0.89.2"
|
cranelift-native = { path = "vendor/wasmtime/cranelift/native" }
|
||||||
cranelift-object = "^0.89.2"
|
cranelift-object = { path = "vendor/wasmtime/cranelift/object" }
|
||||||
internment = { version = "0.7.0", default-features = false, features = ["arc"] }
|
internment = { version = "0.7.0", default-features = false, features = ["arc"] }
|
||||||
lalrpop-util = "^0.19.7"
|
lalrpop-util = "^0.19.7"
|
||||||
lazy_static = "^1.4.0"
|
lazy_static = "^1.4.0"
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ use codespan_reporting::diagnostic::Diagnostic;
|
|||||||
use codespan_reporting::files::SimpleFiles;
|
use codespan_reporting::files::SimpleFiles;
|
||||||
use codespan_reporting::term;
|
use codespan_reporting::term;
|
||||||
use codespan_reporting::term::termcolor::{ColorChoice, StandardStream};
|
use codespan_reporting::term::termcolor::{ColorChoice, StandardStream};
|
||||||
|
use cranelift_codegen::settings::{Configurable, SetError};
|
||||||
use cranelift_codegen::{isa, settings, CodegenError};
|
use cranelift_codegen::{isa, settings, CodegenError};
|
||||||
use cranelift_module::{default_libcall_names, ModuleError};
|
use cranelift_module::{default_libcall_names, ModuleError};
|
||||||
use cranelift_object::{object, ObjectBuilder, ObjectModule};
|
use cranelift_object::{object, ObjectBuilder, ObjectModule};
|
||||||
@@ -44,6 +45,9 @@ enum MainError {
|
|||||||
|
|
||||||
#[error(transparent)]
|
#[error(transparent)]
|
||||||
Backend(#[from] BackendError),
|
Backend(#[from] BackendError),
|
||||||
|
|
||||||
|
#[error(transparent)]
|
||||||
|
SettingsError(#[from] SetError),
|
||||||
}
|
}
|
||||||
|
|
||||||
fn main() -> Result<(), MainError> {
|
fn main() -> Result<(), MainError> {
|
||||||
@@ -92,7 +96,10 @@ fn main() -> Result<(), MainError> {
|
|||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
let platform = Triple::host();
|
let platform = Triple::host();
|
||||||
let isa = isa::lookup(platform.clone())?.finish(settings::Flags::new(settings::builder()))?;
|
let isa_builder= isa::lookup(platform.clone())?;
|
||||||
|
let mut settings_builder = settings::builder();
|
||||||
|
settings_builder.set("is_pic", "true")?;
|
||||||
|
let isa = isa_builder.finish(settings::Flags::new(settings_builder))?;
|
||||||
let object_builder = ObjectBuilder::new(isa, "example", default_libcall_names())?;
|
let object_builder = ObjectBuilder::new(isa, "example", default_libcall_names())?;
|
||||||
let mut object_module = ObjectModule::new(object_builder);
|
let mut object_module = ObjectModule::new(object_builder);
|
||||||
let rtfuns = RuntimeFunctions::new(&platform, &mut object_module)?;
|
let rtfuns = RuntimeFunctions::new(&platform, &mut object_module)?;
|
||||||
|
|||||||
1
vendor/wasmtime
vendored
Submodule
1
vendor/wasmtime
vendored
Submodule
Submodule vendor/wasmtime added at b485e86f5c
Reference in New Issue
Block a user