Skip to content

Commit afc0549

Browse files
gnzlbgalexcrichton
authored andcommitted
[ci] check formatting (#64)
* [ci] check formatting * [rustfmt] reformat the whole library
1 parent 48b7bac commit afc0549

35 files changed

+2211
-1409
lines changed

.travis.yml

+13-1
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,21 @@ matrix:
1717
script: ci/run.sh
1818
- install: true
1919
script: ci/dox.sh
20+
- env: RUSTFMT=On TARGET=x86_64-unknown-linux-gnu NO_ADD=1
21+
script: |
22+
cargo install rustfmt-nightly
23+
cargo fmt -- --write-mode=diff
24+
cd stdsimd
25+
cargo fmt -- --write-mode=diff
26+
cd assert-instr-macro
27+
cargo fmt -- --write-mode=diff
28+
cd ../simd-test-macro
29+
cargo fmt -- --write-mode=diff
30+
allow_failures:
31+
- env: RUSTFMT=On TARGET=x86_64-unknown-linux-gnu NO_ADD=1
2032

2133
install:
22-
- if [ "$NO_ADD" = "" ]; then rustup target add $TARGET; fi
34+
- if [ "$NO_ADD" == "" ]; then rustup target add $TARGET; fi
2335

2436
script:
2537
- cargo generate-lockfile

examples/nbody.rs

+67-54
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@ impl Frsqrt for f64x2 {
2626

2727
let u = unsafe {
2828
vendor::_mm_rsqrt_ps(
29-
f32x4::new(t.extract(0), t.extract(1), 0., 0.)).as_f64x4()
29+
f32x4::new(t.extract(0), t.extract(1), 0., 0.),
30+
).as_f64x4()
3031
};
3132
f64x2::new(u.extract(0), u.extract(1))
3233
}
@@ -36,11 +37,12 @@ impl Frsqrt for f64x2 {
3637
use self::stdsimd::vendor;
3738
unsafe { vendor::vrsqrte_f32(self.as_f32x2()).as_f64x2() }
3839
}
39-
#[cfg(not(any(all(any(target_arch = "x86", target_arch = "x86_64"),
40+
#[cfg(not(any(all(any(target_arch = "x86",
41+
target_arch = "x86_64"),
4042
target_feature = "sse"),
41-
all(any(target_arch = "arm", target_arch = "aarch64"),
42-
target_feature = "neon")
43-
)))]
43+
all(any(target_arch = "arm",
44+
target_arch = "aarch64"),
45+
target_feature = "neon"))))]
4446
{
4547
self.replace(0, 1. / self.extract(0).sqrt());
4648
self.replace(1, 1. / self.extract(1).sqrt());
@@ -57,9 +59,9 @@ struct Body {
5759
}
5860

5961
impl Body {
60-
fn new(x0: f64, x1: f64, x2: f64,
61-
v0: f64, v1: f64, v2: f64,
62-
mass: f64) -> Body {
62+
fn new(
63+
x0: f64, x1: f64, x2: f64, v0: f64, v1: f64, v2: f64, mass: f64
64+
) -> Body {
6365
Body {
6466
x: [x0, x1, x2],
6567
_fill: 0.0,
@@ -91,7 +93,7 @@ fn advance(bodies: &mut [Body; N_BODIES], dt: f64) {
9193

9294
let mut i = 0;
9395
for j in 0..N_BODIES {
94-
for k in j+1..N_BODIES {
96+
for k in j + 1..N_BODIES {
9597
for m in 0..3 {
9698
r[i][m] = bodies[j].x[m] - bodies[k].x[m];
9799
}
@@ -102,14 +104,15 @@ fn advance(bodies: &mut [Body; N_BODIES], dt: f64) {
102104
i = 0;
103105
while i < N {
104106
for m in 0..3 {
105-
dx[m] = f64x2::new(r[i][m], r[i+1][m]);
107+
dx[m] = f64x2::new(r[i][m], r[i + 1][m]);
106108
}
107109

108110
dsquared = dx[0] * dx[0] + dx[1] * dx[1] + dx[2] * dx[2];
109111
distance = dsquared.frsqrt();
110112
for _ in 0..2 {
111-
distance = distance * f64x2::splat(1.5) -
112-
((f64x2::splat(0.5) * dsquared) * distance) * (distance * distance)
113+
distance = distance * f64x2::splat(1.5)
114+
- ((f64x2::splat(0.5) * dsquared) * distance)
115+
* (distance * distance)
113116
}
114117
dmag = f64x2::splat(dt) / dsquared * distance;
115118
dmag.store(&mut mag, i);
@@ -119,7 +122,7 @@ fn advance(bodies: &mut [Body; N_BODIES], dt: f64) {
119122

120123
i = 0;
121124
for j in 0..N_BODIES {
122-
for k in j+1..N_BODIES {
125+
for k in j + 1..N_BODIES {
123126
for m in 0..3 {
124127
bodies[j].v[m] -= r[i][m] * bodies[k].mass * mag[i];
125128
bodies[k].v[m] += r[i][m] * bodies[j].mass * mag[i];
@@ -138,15 +141,19 @@ fn energy(bodies: &[Body; N_BODIES]) -> f64 {
138141
let mut e = 0.0;
139142
for i in 0..N_BODIES {
140143
let bi = &bodies[i];
141-
e += bi.mass * (bi.v[0] * bi.v[0] + bi.v[1] * bi.v[1] + bi.v[2] * bi.v[2]) / 2.0;
142-
for j in i+1..N_BODIES {
144+
e += bi.mass
145+
* (bi.v[0] * bi.v[0] + bi.v[1] * bi.v[1] + bi.v[2] * bi.v[2])
146+
/ 2.0;
147+
for j in i + 1..N_BODIES {
143148
let bj = &bodies[j];
144149
let mut dx = [0.0; 3];
145150
for k in 0..3 {
146151
dx[k] = bi.x[k] - bj.x[k];
147152
}
148153
let mut distance = 0.0;
149-
for &d in &dx { distance += d * d }
154+
for &d in &dx {
155+
distance += d * d
156+
}
150157
e -= bi.mass * bj.mass / distance.sqrt()
151158
}
152159
}
@@ -156,48 +163,54 @@ fn energy(bodies: &[Body; N_BODIES]) -> f64 {
156163
fn main() {
157164
let mut bodies: [Body; N_BODIES] = [
158165
/* sun */
159-
Body::new(0.0, 0.0, 0.0,
160-
0.0, 0.0, 0.0,
161-
SOLAR_MASS),
166+
Body::new(0.0, 0.0, 0.0, 0.0, 0.0, 0.0, SOLAR_MASS),
162167
/* jupiter */
163-
Body::new(4.84143144246472090e+00,
164-
-1.16032004402742839e+00,
165-
-1.03622044471123109e-01 ,
166-
1.66007664274403694e-03 * DAYS_PER_YEAR,
167-
7.69901118419740425e-03 * DAYS_PER_YEAR,
168-
-6.90460016972063023e-05 * DAYS_PER_YEAR ,
169-
9.54791938424326609e-04 * SOLAR_MASS
170-
),
168+
Body::new(
169+
4.84143144246472090e+00,
170+
-1.16032004402742839e+00,
171+
-1.03622044471123109e-01,
172+
1.66007664274403694e-03 * DAYS_PER_YEAR,
173+
7.69901118419740425e-03 * DAYS_PER_YEAR,
174+
-6.90460016972063023e-05 * DAYS_PER_YEAR,
175+
9.54791938424326609e-04 * SOLAR_MASS,
176+
),
171177
/* saturn */
172-
Body::new(8.34336671824457987e+00,
173-
4.12479856412430479e+00,
174-
-4.03523417114321381e-01 ,
175-
-2.76742510726862411e-03 * DAYS_PER_YEAR,
176-
4.99852801234917238e-03 * DAYS_PER_YEAR,
177-
2.30417297573763929e-05 * DAYS_PER_YEAR ,
178-
2.85885980666130812e-04 * SOLAR_MASS
179-
),
178+
Body::new(
179+
8.34336671824457987e+00,
180+
4.12479856412430479e+00,
181+
-4.03523417114321381e-01,
182+
-2.76742510726862411e-03 * DAYS_PER_YEAR,
183+
4.99852801234917238e-03 * DAYS_PER_YEAR,
184+
2.30417297573763929e-05 * DAYS_PER_YEAR,
185+
2.85885980666130812e-04 * SOLAR_MASS,
186+
),
180187
/* uranus */
181-
Body::new(1.28943695621391310e+01,
182-
-1.51111514016986312e+01,
183-
-2.23307578892655734e-01 ,
184-
2.96460137564761618e-03 * DAYS_PER_YEAR,
185-
2.37847173959480950e-03 * DAYS_PER_YEAR,
186-
-2.96589568540237556e-05 * DAYS_PER_YEAR ,
187-
4.36624404335156298e-05 * SOLAR_MASS
188-
),
188+
Body::new(
189+
1.28943695621391310e+01,
190+
-1.51111514016986312e+01,
191+
-2.23307578892655734e-01,
192+
2.96460137564761618e-03 * DAYS_PER_YEAR,
193+
2.37847173959480950e-03 * DAYS_PER_YEAR,
194+
-2.96589568540237556e-05 * DAYS_PER_YEAR,
195+
4.36624404335156298e-05 * SOLAR_MASS,
196+
),
189197
/* neptune */
190-
Body::new(1.53796971148509165e+01,
191-
-2.59193146099879641e+01,
192-
1.79258772950371181e-01 ,
193-
2.68067772490389322e-03 * DAYS_PER_YEAR,
194-
1.62824170038242295e-03 * DAYS_PER_YEAR,
195-
-9.51592254519715870e-05 * DAYS_PER_YEAR ,
196-
5.15138902046611451e-05 * SOLAR_MASS
197-
)
198-
];
199-
200-
let n: usize = std::env::args().nth(1).expect("need one arg").parse().unwrap();
198+
Body::new(
199+
1.53796971148509165e+01,
200+
-2.59193146099879641e+01,
201+
1.79258772950371181e-01,
202+
2.68067772490389322e-03 * DAYS_PER_YEAR,
203+
1.62824170038242295e-03 * DAYS_PER_YEAR,
204+
-9.51592254519715870e-05 * DAYS_PER_YEAR,
205+
5.15138902046611451e-05 * SOLAR_MASS,
206+
),
207+
];
208+
209+
let n: usize = std::env::args()
210+
.nth(1)
211+
.expect("need one arg")
212+
.parse()
213+
.unwrap();
201214

202215
offset_momentum(&mut bodies);
203216
println!("{:.9}", energy(&bodies));

examples/play.rs

+6-2
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,12 @@ mod example {
2727

2828
unsafe {
2929
vendor::_mm_cmpestri(
30-
vneedle, needle_len as i32, vhaystack, hay_len as i32,
31-
vendor::_SIDD_CMP_EQUAL_ORDERED) as usize
30+
vneedle,
31+
needle_len as i32,
32+
vhaystack,
33+
hay_len as i32,
34+
vendor::_SIDD_CMP_EQUAL_ORDERED,
35+
) as usize
3236
}
3337
}
3438

rustfmt.toml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
max_width = 79
2+
fn_call_width = 79
3+
wrap_comments = true
4+
error_on_line_overflow = false
5+
fn_args_density = "Compressed"

src/arm/mod.rs

+3-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33
//! The reference for NEON is [ARM's NEON Intrinsics Reference][arm_ref]. The
44
//! [ARM's NEON Intrinsics Online Database][arm_dat] is also useful.
55
//!
6-
//! [arm_ref]: http://infocenter.arm.com/help/topic/com.arm.doc.ihi0073a/IHI0073A_arm_neon_intrinsics_ref.pdf
6+
//! [arm_ref]:
7+
//! http://infocenter.arm.com/help/topic/com.arm.doc.
8+
//! ihi0073a/IHI0073A_arm_neon_intrinsics_ref.pdf
79
//! [arm_dat]: https://developer.arm.com/technologies/neon/intrinsics
810
911
pub use self::v6::*;

src/arm/v6.rs

+13-6
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
//! ARMv6 intrinsics.
22
//!
3-
//! The reference is [ARMv6-M Architecture Reference
4-
//! Manual](http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0419c/index.html).
3+
//! The reference is [ARMv6-M Architecture Reference Manual][armv6m].
4+
//!
5+
//! [armv6m]:
6+
//! http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0419c/index.
7+
//! html
58
69
#[cfg(test)]
710
use stdsimd_test::assert_instr;
@@ -27,16 +30,20 @@ mod tests {
2730
#[test]
2831
fn _rev_u16() {
2932
unsafe {
30-
assert_eq!(v6::_rev_u16(0b0000_0000_1111_1111_u16), 0b1111_1111_0000_0000_u16);
33+
assert_eq!(
34+
v6::_rev_u16(0b0000_0000_1111_1111_u16),
35+
0b1111_1111_0000_0000_u16
36+
);
3137
}
3238
}
3339

3440
#[test]
3541
fn _rev_u32() {
3642
unsafe {
37-
assert_eq!(v6::_rev_u32(
38-
0b0000_0000_1111_1111_0000_0000_1111_1111_u32
39-
), 0b1111_1111_0000_0000_1111_1111_0000_0000_u32);
43+
assert_eq!(
44+
v6::_rev_u32(0b0000_0000_1111_1111_0000_0000_1111_1111_u32),
45+
0b1111_1111_0000_0000_1111_1111_0000_0000_u32
46+
);
4047
}
4148
}
4249
}

src/arm/v7.rs

+10-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
//! ARMv7 intrinsics.
22
//!
33
//! The reference is [ARMv7-M Architecture Reference Manual (Issue
4-
//! E.b)](http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0403e.b/index.html).
4+
//! E.b)][armv7m].
5+
//!
6+
//! [armv7m]:
7+
//! http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0403e.
8+
//! b/index.html
59
610
pub use super::v6::*;
711

@@ -39,7 +43,7 @@ pub unsafe fn _rbit_u32(x: u32) -> u32 {
3943

4044
#[allow(dead_code)]
4145
extern "C" {
42-
#[link_name="llvm.bitreverse.i32"]
46+
#[link_name = "llvm.bitreverse.i32"]
4347
fn rbit_u32(i: i32) -> i32;
4448
}
4549

@@ -72,8 +76,10 @@ mod tests {
7276
#[test]
7377
fn _rbit_u32() {
7478
unsafe {
75-
assert_eq!(v7::_rbit_u32(0b0000_1010u32),
76-
0b0101_0000_0000_0000_0000_0000_0000_0000u32);
79+
assert_eq!(
80+
v7::_rbit_u32(0b0000_1010u32),
81+
0b0101_0000_0000_0000_0000_0000_0000_0000u32
82+
);
7783
}
7884
}
7985
}

0 commit comments

Comments
 (0)