Error compiling ATTRIBUTE_ALIGNED (workaround suggested)
Per Liden
per.liden at oracle.com
Fri May 4 20:51:42 UTC 2018
Hi Lennart,
On 05/04/2018 02:06 PM, Lennart Börjeson wrote:
> To whom it may concern,
>
> after my latest hg pull -u, I get the following error compiling ZGC (partial output):
>
> Compiling 300 files for BUILD_jdk.javadoc.interim
> In file included from /home/lennartb/zgc/src/hotspot/share/utilities/globalDefinitions.hpp:32:0,
> from /home/lennartb/zgc/src/hotspot/share/utilities/align.hpp:28,
> from /home/lennartb/zgc/src/hotspot/share/runtime/globals.hpp:29,
> from /home/lennartb/zgc/src/hotspot/share/memory/allocation.hpp:28,
> from /home/lennartb/zgc/src/hotspot/share/oops/array.hpp:28,
> from /home/lennartb/zgc/src/hotspot/share/memory/universe.hpp:28,
> from /home/lennartb/zgc/src/hotspot/share/code/oopRecorder.hpp:28,
> from /home/lennartb/zgc/src/hotspot/share/asm/codeBuffer.hpp:28,
> from /home/lennartb/zgc/src/hotspot/share/asm/assembler.hpp:28,
> from /home/lennartb/zgc/src/hotspot/share/precompiled/precompiled.hpp:31:
> /home/lennartb/zgc/src/hotspot/share/utilities/globalDefinitions_gcc.hpp:280:63: error: requested alignment is not an integer constant
> #define ATTRIBUTE_ALIGNED(x) __attribute__((aligned(x)))
> ^
> /home/lennartb/zgc/src/hotspot/share/gc/z/zMarkStack.hpp:97:36: note: in expansion of macro ‘ATTRIBUTE_ALIGNED’
> ZMarkStackMagazineList _freelist ATTRIBUTE_ALIGNED(ZCacheLineSize);
> ^
> /home/lennartb/zgc/src/hotspot/share/utilities/globalDefinitions_gcc.hpp:280:63: error: requested alignment is not an integer constant
> #define ATTRIBUTE_ALIGNED(x) __attribute__((aligned(x)))
> ^
> /home/lennartb/zgc/src/hotspot/share/gc/z/zMarkStack.hpp:98:36: note: in expansion of macro ‘ATTRIBUTE_ALIGNED’
> ZMarkStackSpace _space ATTRIBUTE_ALIGNED(ZCacheLineSize);
> ^
>
> I believe this is an error in GCC 4.8.5, which is the one my RedHat systems use. Cf. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53017 <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53017>, which I think is relevant despite concerning vector_size and not aligned, since when I patch globalDefinitions_gcc.hpp thus:
>
> $ hg diff
> diff -r c585f4a40572 src/hotspot/share/utilities/globalDefinitions_gcc.hpp
> --- a/src/hotspot/share/utilities/globalDefinitions_gcc.hpp Mon Apr 30 11:35:42 2018 +0200
> +++ b/src/hotspot/share/utilities/globalDefinitions_gcc.hpp Fri May 04 13:58:34 2018 +0200
> @@ -277,6 +277,6 @@
> #define UNLIKELY(x) __builtin_expect(!!(x), 0)
>
> // Alignment
> -#define ATTRIBUTE_ALIGNED(x) __attribute__((aligned(x)))
> +#define ATTRIBUTE_ALIGNED(x) __attribute__((aligned(x+0)))
>
> #endif // SHARE_VM_UTILITIES_GLOBALDEFINITIONS_GCC_HPP
>
>
> the error disappeared and all is well.
Thanks for the heads up. I'll add the suggested workaround to ZGC repo.
cheers,
Per
>
>
> Best regards,
>
> /Lennart
>
>
>
>
>
>
More information about the zgc-dev
mailing list