about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorRicho Healey <richo@psych0tik.net>2015-01-09 20:20:15 -0800
committerRicho Healey <richo@psych0tik.net>2015-01-11 21:14:31 -0800
commita2e3993111d40308bc492c5683a08ecd335dbe95 (patch)
tree1dc67aa797968e6dcd0a00f93b84e220135594aa /src/libstd
parentc055d995261203f9869399120a4174824481a305 (diff)
downloadrust-a2e3993111d40308bc492c5683a08ecd335dbe95.tar.gz
rust-a2e3993111d40308bc492c5683a08ecd335dbe95.zip
powerpc: Add libstd utils
Diffstat (limited to 'src/libstd')
-rw-r--r--src/libstd/os.rs5
-rw-r--r--src/libstd/rand/os.rs14
2 files changed, 15 insertions, 4 deletions
diff --git a/src/libstd/os.rs b/src/libstd/os.rs
index 6e3949b9e22..9f7b9668bce 100644
--- a/src/libstd/os.rs
+++ b/src/libstd/os.rs
@@ -1422,6 +1422,11 @@ mod arch_consts {
     pub const ARCH: &'static str = "mipsel";
 }
 
+#[cfg(target_arch = "powerpc")]
+mod arch_consts {
+    pub const ARCH: &'static str = "powerpc";
+}
+
 #[cfg(test)]
 mod tests {
     use prelude::v1::*;
diff --git a/src/libstd/rand/os.rs b/src/libstd/rand/os.rs
index 18d40ecd3eb..68ba7e1dd29 100644
--- a/src/libstd/rand/os.rs
+++ b/src/libstd/rand/os.rs
@@ -32,7 +32,8 @@ mod imp {
               any(target_arch = "x86_64",
                   target_arch = "x86",
                   target_arch = "arm",
-                  target_arch = "aarch64")))]
+                  target_arch = "aarch64",
+                  target_arch = "powerpc")))]
     fn getrandom(buf: &mut [u8]) -> libc::c_long {
         extern "C" {
             fn syscall(number: libc::c_long, ...) -> libc::c_long;
@@ -44,6 +45,8 @@ mod imp {
         const NR_GETRANDOM: libc::c_long = 355;
         #[cfg(any(target_arch = "arm", target_arch = "aarch64"))]
         const NR_GETRANDOM: libc::c_long = 384;
+        #[cfg(target_arch = "powerpc")]
+        const NR_GETRANDOM: libc::c_long = 384;
 
         unsafe {
             syscall(NR_GETRANDOM, buf.as_mut_ptr(), buf.len(), 0u)
@@ -54,7 +57,8 @@ mod imp {
                   any(target_arch = "x86_64",
                       target_arch = "x86",
                       target_arch = "arm",
-                      target_arch = "aarch64"))))]
+                      target_arch = "aarch64",
+                      target_arch = "powerpc"))))]
     fn getrandom(_buf: &mut [u8]) -> libc::c_long { -1 }
 
     fn getrandom_fill_bytes(v: &mut [u8]) {
@@ -91,7 +95,8 @@ mod imp {
               any(target_arch = "x86_64",
                   target_arch = "x86",
                   target_arch = "arm",
-                  target_arch = "aarch64")))]
+                  target_arch = "aarch64",
+                  target_arch = "powerpc")))]
     fn is_getrandom_available() -> bool {
         use sync::atomic::{AtomicBool, ATOMIC_BOOL_INIT, Ordering};
 
@@ -119,7 +124,8 @@ mod imp {
                   any(target_arch = "x86_64",
                       target_arch = "x86",
                       target_arch = "arm",
-                      target_arch = "aarch64"))))]
+                      target_arch = "aarch64",
+                      target_arch = "powerpc"))))]
     fn is_getrandom_available() -> bool { false }
 
     /// A random number generator that retrieves randomness straight from