From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ozlabs.org (bilbo.ozlabs.org [203.11.71.1]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 40qDnk2VR1zF13T for ; Mon, 21 May 2018 20:01:30 +1000 (AEST) In-Reply-To: To: Finn Thain , Benjamin Herrenschmidt , Paul Mackerras From: Michael Ellerman Cc: linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org Subject: Re: [RESEND] powerpc/lib: Fix "integer constant is too large" build failure Message-Id: <40qDnk15vJz9s4V@ozlabs.org> Date: Mon, 21 May 2018 20:01:29 +1000 (AEST) List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , On Fri, 2018-05-18 at 01:18:33 UTC, Finn Thain wrote: > My powerpc-linux-gnu-gcc v4.4.5 compiler can't build a 32-bit kernel > any more: > > arch/powerpc/lib/sstep.c: In function 'do_popcnt': > arch/powerpc/lib/sstep.c:1068: error: integer constant is too large for 'long' type > arch/powerpc/lib/sstep.c:1069: error: integer constant is too large for 'long' type > arch/powerpc/lib/sstep.c:1069: error: integer constant is too large for 'long' type > arch/powerpc/lib/sstep.c:1070: error: integer constant is too large for 'long' type > arch/powerpc/lib/sstep.c:1079: error: integer constant is too large for 'long' type > arch/powerpc/lib/sstep.c: In function 'do_prty': > arch/powerpc/lib/sstep.c:1117: error: integer constant is too large for 'long' type > > This file gets compiled with -std=gnu89 which means a constant can be > given the type 'long' even if it won't fit. Fix the errors with a 'ULL' > suffix on the relevant constants. > > Fixes: 2c979c489fee ("powerpc/lib/sstep: Add prty instruction emulation") > Fixes: dcbd19b48d31 ("powerpc/lib/sstep: Add popcnt instruction emulation") > Signed-off-by: Finn Thain Applied to powerpc next, thanks. https://git.kernel.org/powerpc/c/20acf7fc9409e48cfbfb38262aa534 cheers