@@ -106,7 +106,7 @@ pub fn ones_count_16(x u16) int {
106106// ones_count_32 returns the number of one bits ("population count") in x.
107107@[direct_array_access]
108108pub fn ones_count_32 (x u32 ) int {
109- return int (pop_8_ tab[x >> 24 ] + pop_8_ tab[x >> 16 & 0xff ] + pop_8_ tab[x >> 8 & 0xff ] +
109+ return int (pop_8_ tab[x >> 24 ] + pop_8_ tab[( x >> 16 ) & 0xff ] + pop_8_ tab[( x >> 8 ) & 0xff ] +
110110 pop_8_ tab[x & u32 (0xff )])
111111}
112112
@@ -131,8 +131,8 @@ pub fn ones_count_64(x u64) int {
131131 // Per "Hacker's Delight", the first line can be simplified
132132 // more, but it saves at best one instruction, so we leave
133133 // it alone for clarity.
134- mut y := (x >> u64 (1 ) & (m0 & max_u64 )) + (x & (m0 & max_u64 ))
135- y = (y >> u64 (2 ) & (m1 & max_u64 )) + (y & (m1 & max_u64 ))
134+ mut y := (( x >> u64 (1 ) ) & (m0 & max_u64 )) + (x & (m0 & max_u64 ))
135+ y = (( y >> u64 (2 ) ) & (m1 & max_u64 )) + (y & (m1 & max_u64 ))
136136 y = ((y >> 4 ) + y) & (m2 & max_u64 )
137137 y + = y >> 8
138138 y + = y >> 16
@@ -202,18 +202,18 @@ pub fn reverse_16(x u16) u16 {
202202// reverse_32 returns the value of x with its bits in reversed order.
203203@[inline]
204204pub fn reverse_32 (x u32 ) u32 {
205- mut y := ((x >> u32 (1 ) & (m0 & max_u32 )) | ((x & (m0 & max_u32 )) << 1 ))
206- y = ((y >> u32 (2 ) & (m1 & max_u32 )) | ((y & (m1 & max_u32 )) << u32 (2 )))
207- y = ((y >> u32 (4 ) & (m2 & max_u32 )) | ((y & (m2 & max_u32 )) << u32 (4 )))
205+ mut y := ((( x >> u32 (1 ) ) & (m0 & max_u32 )) | ((x & (m0 & max_u32 )) << 1 ))
206+ y = ((( y >> u32 (2 ) ) & (m1 & max_u32 )) | ((y & (m1 & max_u32 )) << u32 (2 )))
207+ y = ((( y >> u32 (4 ) ) & (m2 & max_u32 )) | ((y & (m2 & max_u32 )) << u32 (4 )))
208208 return reverse_bytes_32 (u32 (y))
209209}
210210
211211// reverse_64 returns the value of x with its bits in reversed order.
212212@[inline]
213213pub fn reverse_64 (x u64 ) u64 {
214- mut y := ((x >> u64 (1 ) & (m0 & max_u64 )) | ((x & (m0 & max_u64 )) << 1 ))
215- y = ((y >> u64 (2 ) & (m1 & max_u64 )) | ((y & (m1 & max_u64 )) << 2 ))
216- y = ((y >> u64 (4 ) & (m2 & max_u64 )) | ((y & (m2 & max_u64 )) << 4 ))
214+ mut y := ((( x >> u64 (1 ) ) & (m0 & max_u64 )) | ((x & (m0 & max_u64 )) << 1 ))
215+ y = ((( y >> u64 (2 ) ) & (m1 & max_u64 )) | ((y & (m1 & max_u64 )) << 2 ))
216+ y = ((( y >> u64 (4 ) ) & (m2 & max_u64 )) | ((y & (m2 & max_u64 )) << 4 ))
217217 return reverse_bytes_64 (y)
218218}
219219
@@ -231,7 +231,7 @@ pub fn reverse_bytes_16(x u16) u16 {
231231// This function's execution time does not depend on the inputs.
232232@[inline]
233233pub fn reverse_bytes_32 (x u32 ) u32 {
234- y := ((x >> u32 (8 ) & (m3 & max_u32 )) | ((x & (m3 & max_u32 )) << u32 (8 )))
234+ y := ((( x >> u32 (8 ) ) & (m3 & max_u32 )) | ((x & (m3 & max_u32 )) << u32 (8 )))
235235 return u32 ((y >> 16 ) | (y << 16 ))
236236}
237237
@@ -240,8 +240,8 @@ pub fn reverse_bytes_32(x u32) u32 {
240240// This function's execution time does not depend on the inputs.
241241@[inline]
242242pub fn reverse_bytes_64 (x u64 ) u64 {
243- mut y := ((x >> u64 (8 ) & (m3 & max_u64 )) | ((x & (m3 & max_u64 )) << u64 (8 )))
244- y = ((y >> u64 (16 ) & (m4 & max_u64 )) | ((y & (m4 & max_u64 )) << u64 (16 )))
243+ mut y := ((( x >> u64 (8 ) ) & (m3 & max_u64 )) | ((x & (m3 & max_u64 )) << u64 (8 )))
244+ y = ((( y >> u64 (16 ) ) & (m4 & max_u64 )) | ((y & (m4 & max_u64 )) << u64 (16 )))
245245 return (y >> 32 ) | (y << 32 )
246246}
247247
0 commit comments