Skip to content

Commit 50303c4

Browse files
zakcutnermarmeladema
authored andcommitted
Update inlining to improve performance
1 parent 22af5b5 commit 50303c4

File tree

2 files changed

+22
-22
lines changed

2 files changed

+22
-22
lines changed

src/avx2/mod.rs

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use std::{arch::x86_64::*, mem};
1010
struct ScalarHash(usize);
1111

1212
impl From<&[u8]> for ScalarHash {
13-
#[inline(always)]
13+
#[inline]
1414
fn from(bytes: &[u8]) -> Self {
1515
bytes.iter().fold(Default::default(), |mut hash, &b| {
1616
hash.push(b);
@@ -20,12 +20,12 @@ impl From<&[u8]> for ScalarHash {
2020
}
2121

2222
impl ScalarHash {
23-
#[inline(always)]
23+
#[inline]
2424
fn push(&mut self, b: u8) {
2525
self.0 ^= usize::from(b);
2626
}
2727

28-
#[inline(always)]
28+
#[inline]
2929
fn pop(&mut self, b: u8) {
3030
self.0 ^= usize::from(b);
3131
}
@@ -44,54 +44,54 @@ trait Vector: Copy {
4444
}
4545

4646
impl Vector for __m128i {
47-
#[inline(always)]
47+
#[inline]
4848
unsafe fn set1_epi8(a: i8) -> Self {
4949
_mm_set1_epi8(a)
5050
}
5151

52-
#[inline(always)]
52+
#[inline]
5353
unsafe fn loadu_si(a: *const Self) -> Self {
5454
_mm_loadu_si128(a)
5555
}
5656

57-
#[inline(always)]
57+
#[inline]
5858
unsafe fn cmpeq_epi8(a: Self, b: Self) -> Self {
5959
_mm_cmpeq_epi8(a, b)
6060
}
6161

62-
#[inline(always)]
62+
#[inline]
6363
unsafe fn and_si(a: Self, b: Self) -> Self {
6464
_mm_and_si128(a, b)
6565
}
6666

67-
#[inline(always)]
67+
#[inline]
6868
unsafe fn movemask_epi8(a: Self) -> i32 {
6969
_mm_movemask_epi8(a)
7070
}
7171
}
7272

7373
impl Vector for __m256i {
74-
#[inline(always)]
74+
#[inline]
7575
unsafe fn set1_epi8(a: i8) -> Self {
7676
_mm256_set1_epi8(a)
7777
}
7878

79-
#[inline(always)]
79+
#[inline]
8080
unsafe fn loadu_si(a: *const Self) -> Self {
8181
_mm256_loadu_si256(a)
8282
}
8383

84-
#[inline(always)]
84+
#[inline]
8585
unsafe fn cmpeq_epi8(a: Self, b: Self) -> Self {
8686
_mm256_cmpeq_epi8(a, b)
8787
}
8888

89-
#[inline(always)]
89+
#[inline]
9090
unsafe fn and_si(a: Self, b: Self) -> Self {
9191
_mm256_and_si256(a, b)
9292
}
9393

94-
#[inline(always)]
94+
#[inline]
9595
unsafe fn movemask_epi8(a: Self) -> i32 {
9696
_mm256_movemask_epi8(a)
9797
}
@@ -144,7 +144,7 @@ macro_rules! avx2_searcher {
144144
}
145145
}
146146

147-
#[inline(always)]
147+
#[inline]
148148
fn size(&self) -> usize {
149149
if $size > 0 {
150150
$size
@@ -153,7 +153,7 @@ macro_rules! avx2_searcher {
153153
}
154154
}
155155

156-
#[inline(always)]
156+
#[inline]
157157
fn scalar_search_in(&self, haystack: &[u8]) -> bool {
158158
debug_assert!(haystack.len() >= self.size());
159159

@@ -175,7 +175,7 @@ macro_rules! avx2_searcher {
175175
false
176176
}
177177

178-
#[inline(always)]
178+
#[inline]
179179
unsafe fn vector_search_in_chunk<V: Vector>(
180180
&self,
181181
haystack: &[u8],
@@ -205,7 +205,7 @@ macro_rules! avx2_searcher {
205205
false
206206
}
207207

208-
#[inline(always)]
208+
#[inline]
209209
fn vector_search_in<V: Vector>(
210210
&self,
211211
haystack: &[u8],
@@ -241,17 +241,17 @@ macro_rules! avx2_searcher {
241241
false
242242
}
243243

244-
#[inline(always)]
244+
#[inline]
245245
fn sse2_search_in(&self, haystack: &[u8]) -> bool {
246246
self.vector_search_in(haystack, &self.sse2_hash, Self::scalar_search_in)
247247
}
248248

249-
#[inline(always)]
249+
#[inline]
250250
fn avx2_search_in(&self, haystack: &[u8]) -> bool {
251251
self.vector_search_in(haystack, &self.avx2_hash, Self::sse2_search_in)
252252
}
253253

254-
#[inline(always)]
254+
#[inline]
255255
pub fn inlined_search_in(&self, haystack: &[u8]) -> bool {
256256
if haystack.len() < self.size() {
257257
return false;
@@ -328,7 +328,7 @@ impl DynamicAvx2Searcher {
328328
}
329329
}
330330

331-
#[inline(always)]
331+
#[inline]
332332
pub fn inlined_search_in(&self, haystack: &[u8]) -> bool {
333333
match self {
334334
Self::N0 => true,

src/memchr.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ impl MemchrSearcher {
77
Self(needle)
88
}
99

10-
#[inline(always)]
10+
#[inline]
1111
pub fn inlined_search_in(&self, haystack: &[u8]) -> bool {
1212
if haystack.is_empty() {
1313
return false;

0 commit comments

Comments
 (0)