Quantcast
Channel: Intel® Software - Intel® C++ Compiler
Viewing all articles
Browse latest Browse all 1175

Incompatibility with binutils using -xCORE-AVX512

$
0
0

As discussed here: https://github.com/easybuilders/easybuild-easyconfigs/issues/8003 some codes don't compile using -xCORE-AVX512 if newer binutils are used (>=2.30, note that https://software.intel.com/en-us/articles/intel-c-compiler-191-for-linux-release-notes-for-intel-parallel-studio-xe-2020 says that up to 2.29 is supported, so perhaps Intel is aware already, but I could not find this documented anywhere else publically)

The issue is that Intel compilers generate instructions such as "vmovd %xmm16,%r10" which should really be with a "q", so "vmovq %xmm16,%r10". In this patch: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=704a705d7aaab8041df76e2981e2a1efc014aad0;hp=605fd3c6590fbed834107a2e1d1df0ba58834576 H.J. Lu removed support for this syntax for xmm registers >15 as it's never generated by GCC.

This patch re-adds them to binutils:

https://raw.githubusercontent.com/easybuilders/easybuild-easyconfigs/8b699534fafeb7cc51ffb83cf0a1e8f739ab0a1d/easybuild/easyconfigs/b/binutils/binutils-2.32-readd-avx512-vmovd.patch

and then CGAL and some other packages can be compiled again.

I am putting this out here so people who run into similar issues can find it but Intel: can you please fix this issue in the compiler?

(Note that H.J. Lu works for Intel!)

 

 

 

 

TCE Open Date: 

Wednesday, February 12, 2020 - 07:42

Viewing all articles
Browse latest Browse all 1175

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>