@@ -155,10 +155,11 @@ pub unsafe fn copy_forward(mut dest: *mut u8, mut src: *const u8, mut n: usize)
155
155
while dest_usize. wrapping_add ( 1 ) < dest_end {
156
156
src_aligned = src_aligned. wrapping_add ( 1 ) ;
157
157
let cur_word = * src_aligned;
158
- #[ cfg( target_endian = "little" ) ]
159
- let reassembled = prev_word >> shift | cur_word << ( WORD_SIZE * 8 - shift) ;
160
- #[ cfg( target_endian = "big" ) ]
161
- let reassembled = prev_word << shift | cur_word >> ( WORD_SIZE * 8 - shift) ;
158
+ let reassembled = if cfg ! ( target_endian = "little" ) {
159
+ prev_word >> shift | cur_word << ( WORD_SIZE * 8 - shift)
160
+ } else {
161
+ prev_word << shift | cur_word >> ( WORD_SIZE * 8 - shift)
162
+ } ;
162
163
prev_word = cur_word;
163
164
164
165
* dest_usize = reassembled;
@@ -169,10 +170,11 @@ pub unsafe fn copy_forward(mut dest: *mut u8, mut src: *const u8, mut n: usize)
169
170
// it is partially out-of-bounds.
170
171
src_aligned = src_aligned. wrapping_add ( 1 ) ;
171
172
let cur_word = load_aligned_partial ( src_aligned, offset) ;
172
- #[ cfg( target_endian = "little" ) ]
173
- let reassembled = prev_word >> shift | cur_word << ( WORD_SIZE * 8 - shift) ;
174
- #[ cfg( target_endian = "big" ) ]
175
- let reassembled = prev_word << shift | cur_word >> ( WORD_SIZE * 8 - shift) ;
173
+ let reassembled = if cfg ! ( target_endian = "little" ) {
174
+ prev_word >> shift | cur_word << ( WORD_SIZE * 8 - shift)
175
+ } else {
176
+ prev_word << shift | cur_word >> ( WORD_SIZE * 8 - shift)
177
+ } ;
176
178
// prev_word does not matter any more
177
179
178
180
* dest_usize = reassembled;
@@ -268,10 +270,11 @@ pub unsafe fn copy_backward(dest: *mut u8, src: *const u8, mut n: usize) {
268
270
while dest_start. wrapping_add ( 1 ) < dest_usize {
269
271
src_aligned = src_aligned. wrapping_sub ( 1 ) ;
270
272
let cur_word = * src_aligned;
271
- #[ cfg( target_endian = "little" ) ]
272
- let reassembled = prev_word << ( WORD_SIZE * 8 - shift) | cur_word >> shift;
273
- #[ cfg( target_endian = "big" ) ]
274
- let reassembled = prev_word >> ( WORD_SIZE * 8 - shift) | cur_word << shift;
273
+ let reassembled = if cfg ! ( target_endian = "little" ) {
274
+ prev_word << ( WORD_SIZE * 8 - shift) | cur_word >> shift
275
+ } else {
276
+ prev_word >> ( WORD_SIZE * 8 - shift) | cur_word << shift
277
+ } ;
275
278
prev_word = cur_word;
276
279
277
280
dest_usize = dest_usize. wrapping_sub ( 1 ) ;
@@ -282,10 +285,11 @@ pub unsafe fn copy_backward(dest: *mut u8, src: *const u8, mut n: usize) {
282
285
// it is partially out-of-bounds.
283
286
src_aligned = src_aligned. wrapping_sub ( 1 ) ;
284
287
let cur_word = load_aligned_end_partial ( src_aligned, WORD_SIZE - offset) ;
285
- #[ cfg( target_endian = "little" ) ]
286
- let reassembled = prev_word << ( WORD_SIZE * 8 - shift) | cur_word >> shift;
287
- #[ cfg( target_endian = "big" ) ]
288
- let reassembled = prev_word >> ( WORD_SIZE * 8 - shift) | cur_word << shift;
288
+ let reassembled = if cfg ! ( target_endian = "little" ) {
289
+ prev_word << ( WORD_SIZE * 8 - shift) | cur_word >> shift
290
+ } else {
291
+ prev_word >> ( WORD_SIZE * 8 - shift) | cur_word << shift
292
+ } ;
289
293
// prev_word does not matter any more
290
294
291
295
dest_usize = dest_usize. wrapping_sub ( 1 ) ;
0 commit comments