poly_uint64 / TYPE_VECTOR_SUBPARTS question

Kugan Vivekanandarajah kugan.vivekanandarajah@linaro.org
Thu Feb 8 22:41:00 GMT 2018


On 9 February 2018 at 09:08, Steve Ellcey <sellcey@cavium.com> wrote:
> I have a question about the poly_uint64 type and the TYPE_VECTOR_SUBPARTS
> macro.  I am trying to copy some code from i386.c into my aarch64 build
> that is basically:
> int n;
> n = TYPE_VECTOR_SUBPARTS (type_out);
> And it is not compiling for me, I get:
> /home/sellcey/gcc-vectmath/src/gcc/gcc/config/aarch64/aarch64-builtins.c:1504:37: error: cannot convert ‘poly_uint64’ {aka ‘poly_int<2, long unsigned int>’} to ‘int’ in assignment
>    n = TYPE_VECTOR_SUBPARTS (type_out);

AFIK, you could use to_constant () if known to be a compile time constant.

> My first thought was that I was missing a header file but I put
> all the header includes that are in i386.c into aarch64-builtins.c
> and it still does not compile.  It works on the i386 side.  It looks
> like poly-int.h and poly-int-types.h are included by coretypes.h
> and I include that header file so I don't understand why this isn't
> compiling and what I am missing.  Any help?
> Steve Ellcey
> sellcey@cavium.com

More information about the Gcc mailing list