11//@compile-flags: -C opt-level=3 -C no-prepopulate-passes 
22
3- #![ feature( core_intrinsics,  repr_simd,  arm_target_feature,  mips_target_feature) ]  
3+ #![ feature(  
4+     core_intrinsics,  
5+     repr_simd,  
6+     arm_target_feature,  
7+     mips_target_feature,  
8+     s390x_target_feature 
9+ ) ] 
410#![ no_std]  
511#![ crate_type = "lib" ]  
612#![ allow( non_camel_case_types) ]  
@@ -25,6 +31,7 @@ pub struct i8x16([i8; 16]);
2531#[ cfg_attr( target_arch = "arm" ,  target_feature( enable = "neon" ) ) ]  
2632#[ cfg_attr( target_arch = "x86" ,  target_feature( enable = "sse" ) ) ]  
2733#[ cfg_attr( target_arch = "mips" ,  target_feature( enable = "msa" ) ) ]  
34+ #[ cfg_attr( target_arch = "s390x" ,  target_feature( enable = "vector" ) ) ]  
2835unsafe  extern  "C"  fn  dyn_simd_extract ( x :  i8x16 ,  idx :  u32 )  -> i8  { 
2936    simd_extract_dyn ( x,  idx) 
3037} 
@@ -36,6 +43,7 @@ unsafe extern "C" fn dyn_simd_extract(x: i8x16, idx: u32) -> i8 {
3643#[ cfg_attr( target_arch = "arm" ,  target_feature( enable = "neon" ) ) ]  
3744#[ cfg_attr( target_arch = "x86" ,  target_feature( enable = "sse" ) ) ]  
3845#[ cfg_attr( target_arch = "mips" ,  target_feature( enable = "msa" ) ) ]  
46+ #[ cfg_attr( target_arch = "s390x" ,  target_feature( enable = "vector" ) ) ]  
3947unsafe  extern  "C"  fn  literal_dyn_simd_extract ( x :  i8x16 )  -> i8  { 
4048    simd_extract_dyn ( x,  7 ) 
4149} 
@@ -47,6 +55,7 @@ unsafe extern "C" fn literal_dyn_simd_extract(x: i8x16) -> i8 {
4755#[ cfg_attr( target_arch = "arm" ,  target_feature( enable = "neon" ) ) ]  
4856#[ cfg_attr( target_arch = "x86" ,  target_feature( enable = "sse" ) ) ]  
4957#[ cfg_attr( target_arch = "mips" ,  target_feature( enable = "msa" ) ) ]  
58+ #[ cfg_attr( target_arch = "s390x" ,  target_feature( enable = "vector" ) ) ]  
5059unsafe  extern  "C"  fn  const_dyn_simd_extract ( x :  i8x16 )  -> i8  { 
5160    simd_extract_dyn ( x,  const  {  3  + 4  } ) 
5261} 
@@ -58,6 +67,7 @@ unsafe extern "C" fn const_dyn_simd_extract(x: i8x16) -> i8 {
5867#[ cfg_attr( target_arch = "arm" ,  target_feature( enable = "neon" ) ) ]  
5968#[ cfg_attr( target_arch = "x86" ,  target_feature( enable = "sse" ) ) ]  
6069#[ cfg_attr( target_arch = "mips" ,  target_feature( enable = "msa" ) ) ]  
70+ #[ cfg_attr( target_arch = "s390x" ,  target_feature( enable = "vector" ) ) ]  
6171unsafe  extern  "C"  fn  const_simd_extract ( x :  i8x16 )  -> i8  { 
6272    simd_extract ( x,  const  {  3  + 4  } ) 
6373} 
@@ -69,6 +79,7 @@ unsafe extern "C" fn const_simd_extract(x: i8x16) -> i8 {
6979#[ cfg_attr( target_arch = "arm" ,  target_feature( enable = "neon" ) ) ]  
7080#[ cfg_attr( target_arch = "x86" ,  target_feature( enable = "sse" ) ) ]  
7181#[ cfg_attr( target_arch = "mips" ,  target_feature( enable = "msa" ) ) ]  
82+ #[ cfg_attr( target_arch = "s390x" ,  target_feature( enable = "vector" ) ) ]  
7283unsafe  extern  "C"  fn  dyn_simd_insert ( x :  i8x16 ,  e :  i8 ,  idx :  u32 )  -> i8x16  { 
7384    simd_insert_dyn ( x,  idx,  e) 
7485} 
@@ -80,6 +91,7 @@ unsafe extern "C" fn dyn_simd_insert(x: i8x16, e: i8, idx: u32) -> i8x16 {
8091#[ cfg_attr( target_arch = "arm" ,  target_feature( enable = "neon" ) ) ]  
8192#[ cfg_attr( target_arch = "x86" ,  target_feature( enable = "sse" ) ) ]  
8293#[ cfg_attr( target_arch = "mips" ,  target_feature( enable = "msa" ) ) ]  
94+ #[ cfg_attr( target_arch = "s390x" ,  target_feature( enable = "vector" ) ) ]  
8395unsafe  extern  "C"  fn  literal_dyn_simd_insert ( x :  i8x16 ,  e :  i8 )  -> i8x16  { 
8496    simd_insert_dyn ( x,  7 ,  e) 
8597} 
@@ -91,6 +103,7 @@ unsafe extern "C" fn literal_dyn_simd_insert(x: i8x16, e: i8) -> i8x16 {
91103#[ cfg_attr( target_arch = "arm" ,  target_feature( enable = "neon" ) ) ]  
92104#[ cfg_attr( target_arch = "x86" ,  target_feature( enable = "sse" ) ) ]  
93105#[ cfg_attr( target_arch = "mips" ,  target_feature( enable = "msa" ) ) ]  
106+ #[ cfg_attr( target_arch = "s390x" ,  target_feature( enable = "vector" ) ) ]  
94107unsafe  extern  "C"  fn  const_dyn_simd_insert ( x :  i8x16 ,  e :  i8 )  -> i8x16  { 
95108    simd_insert_dyn ( x,  const  {  3  + 4  } ,  e) 
96109} 
@@ -102,6 +115,7 @@ unsafe extern "C" fn const_dyn_simd_insert(x: i8x16, e: i8) -> i8x16 {
102115#[ cfg_attr( target_arch = "arm" ,  target_feature( enable = "neon" ) ) ]  
103116#[ cfg_attr( target_arch = "x86" ,  target_feature( enable = "sse" ) ) ]  
104117#[ cfg_attr( target_arch = "mips" ,  target_feature( enable = "msa" ) ) ]  
118+ #[ cfg_attr( target_arch = "s390x" ,  target_feature( enable = "vector" ) ) ]  
105119unsafe  extern  "C"  fn  const_simd_insert ( x :  i8x16 ,  e :  i8 )  -> i8x16  { 
106120    simd_insert ( x,  const  {  3  + 4  } ,  e) 
107121} 
0 commit comments