about summary refs log tree commit diff
diff options
context:
space:
mode:
authorManish Goregaokar <manishsmail@gmail.com>2017-12-13 10:40:11 -0600
committerManish Goregaokar <manishsmail@gmail.com>2017-12-13 10:40:11 -0600
commit1d818a4d8c3fa5b15ad2e2ab30531316565d556c (patch)
tree26aa57c50239256d2d6a6fb4902b0571a5871b5e
parentf8f28886e0d98c9cbd6cb3a719f9014960ec1d24 (diff)
downloadrust-1d818a4d8c3fa5b15ad2e2ab30531316565d556c.tar.gz
rust-1d818a4d8c3fa5b15ad2e2ab30531316565d556c.zip
Support 16 bit platforms
-rw-r--r--src/libcore/slice/memchr.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/libcore/slice/memchr.rs b/src/libcore/slice/memchr.rs
index 252a258c304..00183be97e7 100644
--- a/src/libcore/slice/memchr.rs
+++ b/src/libcore/slice/memchr.rs
@@ -33,6 +33,12 @@ fn contains_zero_byte(x: usize) -> bool {
     x.wrapping_sub(LO_USIZE) & !x & HI_USIZE != 0
 }
 
+#[cfg(target_pointer_width = "16")]
+#[inline]
+fn repeat_byte(b: u8) -> usize {
+    (b as usize) << 8 | b as usize
+}
+
 #[cfg(target_pointer_width = "32")]
 #[inline]
 fn repeat_byte(b: u8) -> usize {