@@ -17,14 +17,14 @@ jobs:
17
17
runs-on : ${{ matrix.os }}
18
18
strategy :
19
19
matrix :
20
- os : [ubuntu-latest, macos-13, macos-latest, windows-latest]
20
+ os : [ubuntu-latest, macos-13, macos-latest, windows-latest] # macos-13 for last x86_64 macOS
21
21
toolchain : ["1.38.0", stable, beta, nightly]
22
22
features :
23
23
[
24
24
" " ,
25
- " --features std" ,
26
25
" --features public_imp" ,
27
- " --features std,public_imp" ,
26
+ " --features std,public_imp,aarch64_neon" ,
27
+ " --features std,public_imp,aarch64_neon,aarch64_neon_prefetch" ,
28
28
]
29
29
rustflags :
30
30
[
@@ -38,16 +38,20 @@ jobs:
38
38
- os : macos-latest
39
39
rustflags : " -D warnings -C target-feature=+sse4.2"
40
40
- os : macos-latest
41
+ toolchain : " 1.38.0" # macOS ARM64 is not supported by 1.38.0
42
+ - os : macos-13 # macos-12 (or later) does not work with 1.38.0
41
43
toolchain : " 1.38.0"
42
- - os : macos-13
43
- toolchain : " 1.38.0"
44
+ - features : " --features std,public_imp,aarch64_neon,aarch64_neon_prefetch"
45
+ include :
46
+ - os : macos-latest # aarch64_neon_prefetch is only supported on macOS ARM64 nightly
47
+ features : " --features std,public_imp,aarch64_neon,aarch64_neon_prefetch"
48
+ toolchain : " nightly"
49
+ rustflags : " -D warnings"
44
50
steps :
45
- - uses : actions/checkout@v2
46
- - uses : actions-rs/ toolchain@v1
51
+ - uses : actions/checkout@v4
52
+ - uses : dtolnay/rust- toolchain@master
47
53
with :
48
54
toolchain : ${{ matrix.toolchain }}
49
- profile : minimal
50
- override : true
51
55
- name : Run tests
52
56
run : cargo test --no-default-features ${{ matrix.features }} --all-targets --verbose
53
57
env :
@@ -62,19 +66,15 @@ jobs:
62
66
run :
63
67
working-directory : inlining
64
68
steps :
65
- - uses : actions/checkout@v2
66
- - uses : actions-rs/ toolchain@v1
69
+ - uses : actions/checkout@v4
70
+ - uses : dtolnay/rust- toolchain@master
67
71
with :
68
72
toolchain : stable
69
- profile : minimal
70
- override : true
71
73
- name : Install cargo-asm
72
74
run : cargo install cargo-asm
73
- - uses : actions-rs/ toolchain@v1
75
+ - uses : dtolnay/rust- toolchain@master
74
76
with :
75
77
toolchain : ${{ matrix.toolchain }}
76
- profile : minimal
77
- override : true
78
78
- name : Set default toolchain
79
79
run : rustup default ${{ matrix.toolchain }}
80
80
- name : Check if the expected fns are inlined
@@ -95,13 +95,11 @@ jobs:
95
95
run :
96
96
working-directory : inlining
97
97
steps :
98
- - uses : actions/checkout@v2
99
- - uses : actions-rs/ toolchain@v1
98
+ - uses : actions/checkout@v4
99
+ - uses : dtolnay/rust- toolchain@master
100
100
with :
101
101
toolchain : ${{ matrix.toolchain }}
102
- profile : minimal
103
- target : ${{ matrix.target }}
104
- override : true
102
+ targets : ${{ matrix.target }}
105
103
- name : Install cargo-asm
106
104
run : cargo install cargo-asm
107
105
- name : Check if the expected fns are inlined
@@ -114,12 +112,8 @@ jobs:
114
112
test-doc :
115
113
runs-on : ubuntu-latest
116
114
steps :
117
- - uses : actions/checkout@v2
118
- - uses : actions-rs/toolchain@v1
119
- with :
120
- toolchain : nightly
121
- profile : minimal
122
- override : true
115
+ - uses : actions/checkout@v4
116
+ - uses : dtolnay/rust-toolchain@nightly
123
117
- name : Run cargo doc
124
118
run : cargo doc --features public_imp
125
119
env :
@@ -133,13 +127,11 @@ jobs:
133
127
target : [arm-unknown-linux-gnueabi, aarch64-unknown-linux-gnu]
134
128
features : ["--features std", ""]
135
129
steps :
136
- - uses : actions/checkout@v2
137
- - uses : actions-rs/ toolchain@v1
130
+ - uses : actions/checkout@v4
131
+ - uses : dtolnay/rust- toolchain@master
138
132
with :
139
133
toolchain : ${{ matrix.toolchain }}
140
- target : ${{ matrix.target }}
141
- profile : minimal
142
- override : true
134
+ targets : ${{ matrix.target }}
143
135
- name : Build
144
136
run : cargo build --no-default-features --target ${{ matrix.target }} ${{ matrix.features }} --verbose
145
137
@@ -151,13 +143,11 @@ jobs:
151
143
target : [aarch64-unknown-linux-gnu, aarch64-apple-darwin]
152
144
features : ["--features std,aarch64_neon", "--features aarch64_neon"]
153
145
steps :
154
- - uses : actions/checkout@v2
155
- - uses : actions-rs/ toolchain@v1
146
+ - uses : actions/checkout@v4
147
+ - uses : dtolnay/rust- toolchain@master
156
148
with :
157
149
toolchain : ${{ matrix.toolchain }}
158
- target : ${{ matrix.target }}
159
- profile : minimal
160
- override : true
150
+ targets : ${{ matrix.target }}
161
151
- name : Build
162
152
run : cargo build --no-default-features --target ${{ matrix.target }} ${{ matrix.features }} --verbose
163
153
@@ -187,13 +177,11 @@ jobs:
187
177
- os : windows-latest
188
178
target : i686-unknown-linux-gnu
189
179
steps :
190
- - uses : actions/checkout@v2
191
- - uses : actions-rs/ toolchain@v1
180
+ - uses : actions/checkout@v4
181
+ - uses : dtolnay/rust- toolchain@master
192
182
with :
193
183
toolchain : ${{ matrix.toolchain }}
194
- target : ${{ matrix.target }}
195
- profile : minimal
196
- override : true
184
+ targets : ${{ matrix.target }}
197
185
- name : Run tests
198
186
run : cargo build --no-default-features ${{ matrix.features }} --target ${{ matrix.target }} --verbose
199
187
env :
@@ -202,31 +190,24 @@ jobs:
202
190
fmt_check :
203
191
runs-on : ubuntu-latest
204
192
steps :
205
- - uses : actions/checkout@v1
206
- - uses : actions-rs/ toolchain@v1
193
+ - uses : actions/checkout@v4
194
+ - uses : dtolnay/rust- toolchain@stable
207
195
with :
208
- toolchain : stable
209
- profile : minimal
210
196
components : rustfmt
211
- override : true
212
- - name : Checko formatting
197
+ - name : Check formatting
213
198
run : cargo fmt -- --check
214
199
215
200
clippy_check :
216
- runs-on : ubuntu-latest
201
+ runs-on : ${{ matrix.os }}
202
+ strategy :
203
+ matrix :
204
+ os : [ubuntu-latest, macos-latest]
217
205
steps :
218
- - uses : actions/checkout@v1
219
- - uses : actions-rs/ toolchain@v1
206
+ - uses : actions/checkout@v4
207
+ - uses : dtolnay/rust- toolchain@nightly
220
208
with :
221
- toolchain : nightly
222
- profile : minimal
223
209
components : clippy
224
- override : true
225
- - uses : actions-rs/clippy-check@v1
226
- with :
227
- token : ${{ secrets.GITHUB_TOKEN }}
228
- args : --all-targets --all-features
229
- - uses : actions-rs/clippy-check@v1
230
- with :
231
- token : ${{ secrets.GITHUB_TOKEN }}
232
- args : --no-default-features
210
+ - name : Clippy - all features enabled
211
+ run : cargo clippy --all-targets --all-features
212
+ - name : Clippy - all features disabled
213
+ run : cargo clippy --all-targets --no-default-features
0 commit comments