Failed PPC64 compile when using Power7 loads and stores?

Hi Everyone,

I'm having trouble figuring out a compile failure on ppc64le. The
failure is at Travis CI - Test and Deploy Your Code with Confidence
. The message is:

/bin/bash ./libtool --tag=CXX --mode=compile clang++
-DHAVE_CONFIG_H -I. -DCRYPTOPP_DISABLE_POWER8 -pipe -mcpu=power7
-mvsx -maltivec -g -O2 -MT libppc_power7_la-ppc_power7.lo -MD -MP -MF
.deps/libppc_power7_la-ppc_power7.Tpo -c -o
libppc_power7_la-ppc_power7.lo `test -f 'ppc_power7.cpp' || echo
'./'`ppc_power7.cpp

ppc_power7.cpp:71:21: error: use of undeclared identifier 'vec_xl'
            vec_xst(vec_xl(0, (__vector unsigned int*)(b1+3)), 0, (__vec...

The source file includes <altivec.h>. The source file is compiled with
-mcpu=power7 -mvsx -maltivec.

Looks like to me that your clang is too old.

clang version 3.8.0-2ubuntu4 (tags/RELEASE_380/final)

clang 3.8.0 was released on 08 Mar 2016.

While vec_xl was added in https://reviews.llvm.org/rL286455 onNov 11 2016, which is around half an year later then 3.8.0.

Can you please try using newer clang.

Best,

Jinsong Ji (纪金松), PhD.

XL/LLVM on Power Compiler Development
E-mail: jji@us.ibm.com

graycol.gifJeffrey Walton via llvm-dev —10/24/2019 03:57:02 AM—Hi Everyone, I’m having trouble figuring out a compile failure on ppc64le. The

Thanks.

Travis does not allow an upgrade of the compiler in this instance. I already tried.

Do you know where Clang keeps its documentation? I found https://releases.llvm.org/3.8.1/tools/docs/UsersManual.html#powerpc, but it lacks detail.

Thanks for your help.

graycol.gif

No sure what do you mean by where Clang keeps its documentation?
In general, http://clang.llvm.org/docs/ or http://llvm.org/docs/ might be some landing page you can start with.

If you are seeking changes in each release, yes, release notes for each version in https://releases.llvm.org/ should be a good place .
However, that is very high level as well (and may not well maintained for PowerPC in older releases).
I know in theory we should, but I don’t think we have any existing doc that cover every builtin changes.

Best,

Jinsong Ji (纪金松), PhD.

XL/LLVM on Power Compiler Development
E-mail: jji@us.ibm.com

graycol.gifJeffrey Walton —10/24/2019 02:34:40 PM—On Thu, Oct 24, 2019 at 2:22 PM Jinsong Ji jji@us.ibm.com wrote: > Looks like to me that your clan

Yes, I am looking for details docs like https://gcc.gnu.org/onlinedocs/gcc/PowerPC-AltiVec_002fVSX-Built-in-Functions.html and https://gcc.gnu.org/onlinedocs/gcc/PowerPC-AltiVec-Built-in-Functions-Available-on-ISA-2_002e06.html#PowerPC-AltiVec-Built-in-Functions-Available-on-ISA-2_002e06

Is there any reason Clang does not reject options it does not support? It would have saved me a lot of time.

Jeff

graycol.gif

Is there any reason Clang does not reject options it does not support? It would have saved me a lot of time.

I don’t know. Maybe cfe-dev would be a better place to ask for this question.

Best,

Jinsong Ji (纪金松), PhD.

XL/LLVM on Power Compiler Development
E-mail: jji@us.ibm.com

graycol.gifJeffrey Walton —10/24/2019 03:17:51 PM—On Thu, Oct 24, 2019 at 2:55 PM Jinsong Ji jji@us.ibm.com wrote: > No sure what do you mean by `wh