On Thu, May 24, 2018 at 10:40 AM,  <[email protected]> wrote:
> From: David Francis <[email protected]>
>
> In fixed31_32.h, in dc_fixpt_shl,'/' was used for division of one long
> long int by another long long int.  As there is no inbuilt long long
> int division function in c, gcc inserted its own.  However, gcc does not
> link the library that contains this function.  To avoid this, use
> bitwise operators instead of /
>
> Signed-off-by: David Francis <[email protected]>
> Reviewed-by: Dmytro Laktyushkin <[email protected]>

Reviewed-by: Alex Deucher <[email protected]>

> ---
>  drivers/gpu/drm/amd/display/include/fixed31_32.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/display/include/fixed31_32.h 
> b/drivers/gpu/drm/amd/display/include/fixed31_32.h
> index 76f64e9..bb0d4eb 100644
> --- a/drivers/gpu/drm/amd/display/include/fixed31_32.h
> +++ b/drivers/gpu/drm/amd/display/include/fixed31_32.h
> @@ -209,7 +209,7 @@ static inline struct fixed31_32 dc_fixpt_clamp(
>  static inline struct fixed31_32 dc_fixpt_shl(struct fixed31_32 arg, unsigned 
> char shift)
>  {
>         ASSERT(((arg.value >= 0) && (arg.value <= LLONG_MAX >> shift)) ||
> -               ((arg.value < 0) && (arg.value >= (LLONG_MIN / (1LL << 
> shift)))));
> +               ((arg.value < 0) && (arg.value >= ~(LLONG_MAX >> shift))));
>
>         arg.value = arg.value << shift;
>
> --
> 2.7.4
>
_______________________________________________
amd-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to