|
|
|
@ -35,16 +35,16 @@ fn clear_bss() {
|
|
|
|
|
#[no_mangle]
|
|
|
|
|
pub fn rust_main() -> ! {
|
|
|
|
|
extern "C" {
|
|
|
|
|
fn stext();
|
|
|
|
|
fn etext();
|
|
|
|
|
fn srodata();
|
|
|
|
|
fn erodata();
|
|
|
|
|
fn sdata();
|
|
|
|
|
fn edata();
|
|
|
|
|
fn sbss();
|
|
|
|
|
fn ebss();
|
|
|
|
|
fn boot_stack();
|
|
|
|
|
fn boot_stack_top();
|
|
|
|
|
fn stext(); // begin addr of text segment
|
|
|
|
|
fn etext(); // end addr of text segment
|
|
|
|
|
fn srodata(); // start addr of Read-Only data segment
|
|
|
|
|
fn erodata(); // end addr of Read-Only data ssegment
|
|
|
|
|
fn sdata(); // start addr of data segment
|
|
|
|
|
fn edata() // end addr of data segment
|
|
|
|
|
fn sbss(); // start addr of BSS segment
|
|
|
|
|
fn ebss(); // end addr of BSS segment
|
|
|
|
|
fn boot_stack(); // stack bottom
|
|
|
|
|
fn boot_stack_top(); // stack top
|
|
|
|
|
}
|
|
|
|
|
clear_bss();
|
|
|
|
|
println!("Hello, world!");
|
|
|
|
|