about summary refs log tree commit diff
path: root/src/libstd/os/linux
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2017-01-01 09:56:18 +0000
committerbors <bors@rust-lang.org>2017-01-01 09:56:18 +0000
commite1279a0b30a6a36822ecf7c7cc683953e1239745 (patch)
tree39c4f3349ee7128c7d9e546b1a93eb05326fa913 /src/libstd/os/linux
parente227433dc39ab13aa2368814169c049b8f876825 (diff)
parentb14785d3d0e3093983f6d6e266b754e1b536da10 (diff)
downloadrust-e1279a0b30a6a36822ecf7c7cc683953e1239745.tar.gz
rust-e1279a0b30a6a36822ecf7c7cc683953e1239745.zip
Auto merge of #38726 - japaric:sparc64, r=sanxiyn
sparc64-linux support

This is built on top of #38656 and depends on rust-lang/libc#483

Hello world works.

The libc-test test suite passes.

`panic!` doesn't fully work:

```
$ qemu-sparc64-static ./panic
thread 'main' panicked at 'explicit panic', panic.rs:1
note: Run with `RUST_BACKTRACE=1` for a backtrace.
Illegal instruction (core dumped)
```

Backtraces don't work either, probably related to the previous point:

```
$ export RUST_BACKTRACE=1
$ qemu-sparc64-static ./panic
thread 'main' panicked at 'explicit panic', panic.rs:1
stack backtrace:
Illegal instruction (core dumped)
```

r? @alexcrichton

@jakllsch Does panicking / backtraces work on sparc64-netbsd?

cc @glaubitz
Diffstat (limited to 'src/libstd/os/linux')
-rw-r--r--src/libstd/os/linux/raw.rs9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/libstd/os/linux/raw.rs b/src/libstd/os/linux/raw.rs
index 7c9274d0601..bb1830a147e 100644
--- a/src/libstd/os/linux/raw.rs
+++ b/src/libstd/os/linux/raw.rs
@@ -157,12 +157,9 @@ mod arch {
     }
 }
 
-#[cfg(target_arch = "mips64")]
-mod arch {
-    pub use libc::{off_t, ino_t, nlink_t, blksize_t, blkcnt_t, stat, time_t};
-}
-
-#[cfg(target_arch = "s390x")]
+#[cfg(any(target_arch = "mips64",
+          target_arch = "s390x",
+          target_arch = "sparc64"))]
 mod arch {
     pub use libc::{off_t, ino_t, nlink_t, blksize_t, blkcnt_t, stat, time_t};
 }