1 // SPDX-License-Identifier: GPL-2.0
2 #include <linux/export.h>
6 long long __ashrdi3(long long u
, word_type b
)
18 /* w.s.high = 1..1 or 0..0 */
21 w
.s
.low
= uu
.s
.high
>> -bm
;
23 const unsigned int carries
= (unsigned int) uu
.s
.high
<< bm
;
25 w
.s
.high
= uu
.s
.high
>> b
;
26 w
.s
.low
= ((unsigned int) uu
.s
.low
>> b
) | carries
;
31 EXPORT_SYMBOL(__ashrdi3
);