Finish port
This commit is contained in:
parent
36471393dc
commit
692725dc96
4 changed files with 26 additions and 7 deletions
|
@ -1,11 +1,15 @@
|
||||||
use crate::spec::{PanicStrategy, RelocModel, TargetOptions, crt_objects};
|
use crate::spec::{
|
||||||
|
Cc, LinkerFlavor, Lld, PanicStrategy, RelocModel, StackProbeType, TargetOptions,
|
||||||
|
};
|
||||||
|
|
||||||
pub(crate) fn opts() -> TargetOptions {
|
pub(crate) fn opts() -> TargetOptions {
|
||||||
TargetOptions {
|
TargetOptions {
|
||||||
os: "os".into(),
|
os: "os".into(),
|
||||||
|
linker: Some("rust-lld".into()),
|
||||||
|
linker_flavor: LinkerFlavor::Gnu(Cc::No, Lld::Yes),
|
||||||
relocation_model: RelocModel::Static,
|
relocation_model: RelocModel::Static,
|
||||||
panic_strategy: PanicStrategy::Abort,
|
panic_strategy: PanicStrategy::Abort,
|
||||||
pre_link_objects: crt_objects::pre_os(),
|
stack_probes: StackProbeType::Inline,
|
||||||
..Default::default()
|
..Default::default()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -122,7 +122,3 @@ pub(super) fn pre_wasi_self_contained() -> CrtObjects {
|
||||||
pub(super) fn post_wasi_self_contained() -> CrtObjects {
|
pub(super) fn post_wasi_self_contained() -> CrtObjects {
|
||||||
new(&[])
|
new(&[])
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(super) fn pre_os() -> CrtObjects {
|
|
||||||
all("crt0.o")
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
#![deny(unsafe_op_in_unsafe_fn)]
|
#![deny(unsafe_op_in_unsafe_fn)]
|
||||||
|
|
||||||
|
use core::arch::global_asm;
|
||||||
|
|
||||||
pub mod args;
|
pub mod args;
|
||||||
pub mod env;
|
pub mod env;
|
||||||
pub mod fs;
|
pub mod fs;
|
||||||
|
@ -14,3 +16,20 @@ pub mod time;
|
||||||
|
|
||||||
mod common;
|
mod common;
|
||||||
pub use common::*;
|
pub use common::*;
|
||||||
|
|
||||||
|
global_asm!(
|
||||||
|
"
|
||||||
|
.text
|
||||||
|
|
||||||
|
.global _start
|
||||||
|
_start:
|
||||||
|
mov $stack, %rsp
|
||||||
|
call main
|
||||||
|
|
||||||
|
.section .bss
|
||||||
|
.align 16
|
||||||
|
.skip 0x10000
|
||||||
|
stack:
|
||||||
|
",
|
||||||
|
options(att_syntax)
|
||||||
|
);
|
||||||
|
|
|
@ -665,7 +665,7 @@ impl Build {
|
||||||
}
|
}
|
||||||
// Generate memcpy, etc. FIXME: Remove this once compiler-builtins
|
// Generate memcpy, etc. FIXME: Remove this once compiler-builtins
|
||||||
// automatically detects this target.
|
// automatically detects this target.
|
||||||
if target.contains("zkvm") {
|
if target.contains("zkvm") || target.contains("os") {
|
||||||
features.insert("compiler-builtins-mem");
|
features.insert("compiler-builtins-mem");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue