From fccb38ab368b901be2a8d2d6357c78b73fd71dbe Mon Sep 17 00:00:00 2001 From: =?utf8?q?Fran=C3=A7ois=20Tigeot?= Date: Tue, 11 Oct 2016 09:26:14 +0200 Subject: [PATCH] drm/linux: Add sign_extend64() --- sys/dev/drm/include/linux/bitops.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/dev/drm/include/linux/bitops.h b/sys/dev/drm/include/linux/bitops.h index df22eea700..634e9fe473 100644 --- a/sys/dev/drm/include/linux/bitops.h +++ b/sys/dev/drm/include/linux/bitops.h @@ -510,4 +510,12 @@ bitmap_release_region(unsigned long *bitmap, int pos, int order) (bit) < (size); \ (bit) = find_next_bit((addr), (size), (bit) + 1)) + +static inline int64_t +sign_extend64(uint64_t value, int index) +{ + uint8_t shift = 63 - index; + return (int64_t)(value << shift) >> shift; +} + #endif /* _LINUX_BITOPS_H_ */ -- 2.11.4.GIT