FIAS . Impressum . Privacy

Re: Vc Build Error

GRABNER Friedrich [please enable javascript to see the address]
Thu Jan 28 18:33:27 CET 2016


Matthias,

I updated my binutils to:

2.26.51.20151113

However it is not my default binutils so I am linking it through ccmake...

That being said I still receive the error message:

[ 26%] Building CXX object CMakeFiles/Vc.dir/sse_sorthelper_AVX.cpp.o
[ 26%] Building CXX object CMakeFiles/Vc.dir/sse_sorthelper_AVX2+FMA+BMI2.cpp.o
[ 26%] Building CXX object CMakeFiles/Vc.dir/avx_sorthelper_AVX.cpp.o
[ 28%] Building CXX object CMakeFiles/Vc.dir/avx_sorthelper_AVX2+FMA+BMI2.cpp.o
/tmp/ccaU86J9.s: Assembler messages:
/tmp/ccaU86J9.s:12: Error: no such instruction: `vextracti128 $0x1,%ymm0,%xmm1'
/tmp/ccaU86J9.s:62: Error: no such instruction: `vinserti128 $0x1,%xmm1,%ymm0,%ymm0'
/tmp/ccaU86J9.s:81: Error: no such instruction: `vextracti128 $0x1,%ymm0,%xmm1'
/tmp/ccaU86J9.s:131: Error: no such instruction: `vinserti128 $0x1,%xmm1,%ymm0,%ymm0'
/tmp/ccaU86J9.s:150: Error: no such instruction: `vextracti128 $0x1,%ymm0,%xmm3'
/tmp/ccaU86J9.s:183: Error: no such instruction: `vinserti128 $0x1,%xmm0,%ymm2,%ymm0'
/tmp/ccaU86J9.s:189: Error: no such instruction: `vinserti128 $0x1,%xmm0,%ymm2,%ymm0'
/tmp/ccaU86J9.s:195: Error: no such instruction: `vinserti128 $0x1,%xmm2,%ymm0,%ymm0'
/tmp/ccaU86J9.s:214: Error: no such instruction: `vextracti128 $0x1,%ymm0,%xmm3'
/tmp/ccaU86J9.s:247: Error: no such instruction: `vinserti128 $0x1,%xmm0,%ymm2,%ymm0'
/tmp/ccaU86J9.s:253: Error: no such instruction: `vinserti128 $0x1,%xmm0,%ymm2,%ymm0'
/tmp/ccaU86J9.s:259: Error: no such instruction: `vinserti128 $0x1,%xmm2,%ymm0,%ymm0'
make[2]: *** [CMakeFiles/Vc.dir/avx_sorthelper_AVX2+FMA+BMI2.cpp.o] Error 1
make[1]: *** [CMakeFiles/Vc.dir/all] Error 2
make: *** [all] Error 2

Do I need to completely update binutils or should this suffice?

Thanks,
Friedrich

[please enable javascript to see the address]> wrote: 
 
> On Monday, January 25, 2016 05:53:39 PM GRABNER Friedrich wrote:
> > Firstly I can easily build both the 0.7 and 0.8 branches however for the
> > master branch I see the following error:
> > 
> > Assembler messages:
> > /tmp/ccGuLgWH.s:12: Error: no such instruction [...]
> > make[2]: *** [CMakeFiles/Vc.dir/avx_sorthelper_AVX2+FMA+BMI2.cpp.o]
> 
> This tells us that the assembler does not understand said instructions. I.e. 
> your binutils package is too old. Please let me know the output of 'as --
> version' so that I can add a check to the cmake files to warn others of this 
> issue.
> 
> You'll need to either
> 1. update your binutils package
> 2. or disable the AVX2 code in libVc (try -DVc_AVX2_INTRINSICS_BROKEN=TRUE 
> when you call cmake)
> 3. or you could try to use clang 3.7, which ships its own integrated 
> assembler.
> 
> > Despite using the same cmake settings. Ok I don't mind using version 0.8
> > however I cannot get it to compile...
> 
> There's no Vc 0.8 release. The branch was always experimental and is 
> discontinued.
> 
> > Using gcc-5.2, I am trying to compile the example matrix (though the
> > same/similar errors occur for all examples) as I have seen from
> > investigating the archives the reccomended compilation settings are
> > something like this:
> 
> Is this for 0.8 then?
> > 
> > g++ -std=c++11 -march=native -O3 -I/path/to/include -L/path/to/lib -lVc
> > main.cpp
> > 
> > The error I receive is as follows:
> > 
> > main.cpp:(.text+0x202): undefined reference to `Vc::RandomState'
> > [...]
> 
> try putting -lVc after main.cpp.
> 
> I recommend you try to get Vc 1.1 working. 0.7 is quite old and there's no 
> support for newer compilers and instructions.
> 
> Cheers,
>   Matthias
> 
> -- 
> ──────────────────────────────────────────────────────────────────────────
>  Dr. Matthias Kretz                            https://www.kretzfamily.de
>  GSI Helmholtzzentrum für Schwerionenforschung             https://gsi.de
>  SIMD easy and portable                     https://github.com/VcDevel/Vc
> ────────────────────────────────────────────────────────────────────────── 
 
 
 





More information about the Vc mailing list
FIAS . Impressum . Privacy