about summary refs log tree commit diff
path: root/library/stdarch/examples
diff options
context:
space:
mode:
authorgnzlbg <gnzlbg@users.noreply.github.com>2017-10-27 17:55:29 +0200
committerAlex Crichton <alex@alexcrichton.com>2017-10-27 11:55:29 -0400
commit69d2ad85f3e361a7c61cf4aa8697c39bf70b6afc (patch)
treebf9458f6c0ca622176bc0e5d802fb28c4f03a2a5 /library/stdarch/examples
parent5869eca3e9062ad75535a81cfa70cf06de6baa1f (diff)
downloadrust-69d2ad85f3e361a7c61cf4aa8697c39bf70b6afc.tar.gz
rust-69d2ad85f3e361a7c61cf4aa8697c39bf70b6afc.zip
[ci] check formatting (#64)
* [ci] check formatting

* [rustfmt] reformat the whole library
Diffstat (limited to 'library/stdarch/examples')
-rw-r--r--library/stdarch/examples/nbody.rs121
-rw-r--r--library/stdarch/examples/play.rs8
2 files changed, 73 insertions, 56 deletions
diff --git a/library/stdarch/examples/nbody.rs b/library/stdarch/examples/nbody.rs
index 3f6e7ccffe9..a9baa74ff76 100644
--- a/library/stdarch/examples/nbody.rs
+++ b/library/stdarch/examples/nbody.rs
@@ -26,7 +26,8 @@ impl Frsqrt for f64x2 {
 
             let u = unsafe {
                 vendor::_mm_rsqrt_ps(
-                    f32x4::new(t.extract(0), t.extract(1), 0., 0.)).as_f64x4()
+                    f32x4::new(t.extract(0), t.extract(1), 0., 0.),
+                ).as_f64x4()
             };
             f64x2::new(u.extract(0), u.extract(1))
         }
@@ -36,11 +37,12 @@ impl Frsqrt for f64x2 {
             use self::stdsimd::vendor;
             unsafe { vendor::vrsqrte_f32(self.as_f32x2()).as_f64x2() }
         }
-        #[cfg(not(any(all(any(target_arch = "x86", target_arch = "x86_64"),
+        #[cfg(not(any(all(any(target_arch = "x86",
+                              target_arch = "x86_64"),
                           target_feature = "sse"),
-                      all(any(target_arch = "arm", target_arch = "aarch64"),
-                          target_feature = "neon")
-        )))]
+                      all(any(target_arch = "arm",
+                              target_arch = "aarch64"),
+                          target_feature = "neon"))))]
         {
             self.replace(0, 1. / self.extract(0).sqrt());
             self.replace(1, 1. / self.extract(1).sqrt());
@@ -57,9 +59,9 @@ struct Body {
 }
 
 impl Body {
-    fn new(x0: f64, x1: f64, x2: f64,
-           v0: f64, v1: f64, v2: f64,
-           mass: f64) -> Body {
+    fn new(
+        x0: f64, x1: f64, x2: f64, v0: f64, v1: f64, v2: f64, mass: f64
+    ) -> Body {
         Body {
             x: [x0, x1, x2],
             _fill: 0.0,
@@ -91,7 +93,7 @@ fn advance(bodies: &mut [Body; N_BODIES], dt: f64) {
 
     let mut i = 0;
     for j in 0..N_BODIES {
-        for k in j+1..N_BODIES {
+        for k in j + 1..N_BODIES {
             for m in 0..3 {
                 r[i][m] = bodies[j].x[m] - bodies[k].x[m];
             }
@@ -102,14 +104,15 @@ fn advance(bodies: &mut [Body; N_BODIES], dt: f64) {
     i = 0;
     while i < N {
         for m in 0..3 {
-            dx[m] = f64x2::new(r[i][m], r[i+1][m]);
+            dx[m] = f64x2::new(r[i][m], r[i + 1][m]);
         }
 
         dsquared = dx[0] * dx[0] + dx[1] * dx[1] + dx[2] * dx[2];
         distance = dsquared.frsqrt();
         for _ in 0..2 {
-            distance = distance * f64x2::splat(1.5) -
-                ((f64x2::splat(0.5) * dsquared) * distance) * (distance * distance)
+            distance = distance * f64x2::splat(1.5)
+                - ((f64x2::splat(0.5) * dsquared) * distance)
+                    * (distance * distance)
         }
         dmag = f64x2::splat(dt) / dsquared * distance;
         dmag.store(&mut mag, i);
@@ -119,7 +122,7 @@ fn advance(bodies: &mut [Body; N_BODIES], dt: f64) {
 
     i = 0;
     for j in 0..N_BODIES {
-        for k in j+1..N_BODIES {
+        for k in j + 1..N_BODIES {
             for m in 0..3 {
                 bodies[j].v[m] -= r[i][m] * bodies[k].mass * mag[i];
                 bodies[k].v[m] += r[i][m] * bodies[j].mass * mag[i];
@@ -138,15 +141,19 @@ fn energy(bodies: &[Body; N_BODIES]) -> f64 {
     let mut e = 0.0;
     for i in 0..N_BODIES {
         let bi = &bodies[i];
-        e += bi.mass * (bi.v[0] * bi.v[0] + bi.v[1] * bi.v[1] + bi.v[2] * bi.v[2]) / 2.0;
-        for j in i+1..N_BODIES {
+        e += bi.mass
+            * (bi.v[0] * bi.v[0] + bi.v[1] * bi.v[1] + bi.v[2] * bi.v[2])
+            / 2.0;
+        for j in i + 1..N_BODIES {
             let bj = &bodies[j];
             let mut dx = [0.0; 3];
             for k in 0..3 {
                 dx[k] = bi.x[k] - bj.x[k];
             }
             let mut distance = 0.0;
-            for &d in &dx { distance += d * d }
+            for &d in &dx {
+                distance += d * d
+            }
             e -= bi.mass * bj.mass / distance.sqrt()
         }
     }
@@ -156,48 +163,54 @@ fn energy(bodies: &[Body; N_BODIES]) -> f64 {
 fn main() {
     let mut bodies: [Body; N_BODIES] = [
         /* sun */
-        Body::new(0.0, 0.0, 0.0,
-                  0.0, 0.0, 0.0,
-                  SOLAR_MASS),
+        Body::new(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, SOLAR_MASS),
         /* jupiter */
-        Body::new(4.84143144246472090e+00,
-                  -1.16032004402742839e+00,
-                  -1.03622044471123109e-01 ,
-                  1.66007664274403694e-03 * DAYS_PER_YEAR,
-                  7.69901118419740425e-03 * DAYS_PER_YEAR,
-                  -6.90460016972063023e-05 * DAYS_PER_YEAR ,
-                  9.54791938424326609e-04 * SOLAR_MASS
-                  ),
+        Body::new(
+            4.84143144246472090e+00,
+            -1.16032004402742839e+00,
+            -1.03622044471123109e-01,
+            1.66007664274403694e-03 * DAYS_PER_YEAR,
+            7.69901118419740425e-03 * DAYS_PER_YEAR,
+            -6.90460016972063023e-05 * DAYS_PER_YEAR,
+            9.54791938424326609e-04 * SOLAR_MASS,
+        ),
         /* saturn */
-        Body::new(8.34336671824457987e+00,
-                  4.12479856412430479e+00,
-                  -4.03523417114321381e-01 ,
-                  -2.76742510726862411e-03 * DAYS_PER_YEAR,
-                  4.99852801234917238e-03 * DAYS_PER_YEAR,
-                  2.30417297573763929e-05 * DAYS_PER_YEAR ,
-                  2.85885980666130812e-04 * SOLAR_MASS
-                  ),
+        Body::new(
+            8.34336671824457987e+00,
+            4.12479856412430479e+00,
+            -4.03523417114321381e-01,
+            -2.76742510726862411e-03 * DAYS_PER_YEAR,
+            4.99852801234917238e-03 * DAYS_PER_YEAR,
+            2.30417297573763929e-05 * DAYS_PER_YEAR,
+            2.85885980666130812e-04 * SOLAR_MASS,
+        ),
         /* uranus */
-        Body::new(1.28943695621391310e+01,
-                  -1.51111514016986312e+01,
-                  -2.23307578892655734e-01 ,
-                  2.96460137564761618e-03 * DAYS_PER_YEAR,
-                  2.37847173959480950e-03 * DAYS_PER_YEAR,
-                  -2.96589568540237556e-05 * DAYS_PER_YEAR ,
-                  4.36624404335156298e-05 * SOLAR_MASS
-                  ),
+        Body::new(
+            1.28943695621391310e+01,
+            -1.51111514016986312e+01,
+            -2.23307578892655734e-01,
+            2.96460137564761618e-03 * DAYS_PER_YEAR,
+            2.37847173959480950e-03 * DAYS_PER_YEAR,
+            -2.96589568540237556e-05 * DAYS_PER_YEAR,
+            4.36624404335156298e-05 * SOLAR_MASS,
+        ),
         /* neptune */
-        Body::new(1.53796971148509165e+01,
-                  -2.59193146099879641e+01,
-                  1.79258772950371181e-01 ,
-                  2.68067772490389322e-03 * DAYS_PER_YEAR,
-                  1.62824170038242295e-03 * DAYS_PER_YEAR,
-                  -9.51592254519715870e-05 * DAYS_PER_YEAR ,
-                  5.15138902046611451e-05 * SOLAR_MASS
-                  )
-            ];
-
-    let n: usize = std::env::args().nth(1).expect("need one arg").parse().unwrap();
+        Body::new(
+            1.53796971148509165e+01,
+            -2.59193146099879641e+01,
+            1.79258772950371181e-01,
+            2.68067772490389322e-03 * DAYS_PER_YEAR,
+            1.62824170038242295e-03 * DAYS_PER_YEAR,
+            -9.51592254519715870e-05 * DAYS_PER_YEAR,
+            5.15138902046611451e-05 * SOLAR_MASS,
+        ),
+    ];
+
+    let n: usize = std::env::args()
+        .nth(1)
+        .expect("need one arg")
+        .parse()
+        .unwrap();
 
     offset_momentum(&mut bodies);
     println!("{:.9}", energy(&bodies));
diff --git a/library/stdarch/examples/play.rs b/library/stdarch/examples/play.rs
index 5cbbdd44d52..26ce5dd8124 100644
--- a/library/stdarch/examples/play.rs
+++ b/library/stdarch/examples/play.rs
@@ -27,8 +27,12 @@ mod example {
 
         unsafe {
             vendor::_mm_cmpestri(
-                vneedle, needle_len as i32, vhaystack, hay_len as i32,
-                vendor::_SIDD_CMP_EQUAL_ORDERED) as usize
+                vneedle,
+                needle_len as i32,
+                vhaystack,
+                hay_len as i32,
+                vendor::_SIDD_CMP_EQUAL_ORDERED,
+            ) as usize
         }
     }