#2530: Thorn Vectors fails to compile using gcc 8.X on POWER9
Reporter:Roland Haas
Status:new
Milestone:
Version:development version
Type:bug
Priority:minor
Component:EinsteinToolkit thorn

Vectors provides SIMD instructions for doubles on POWER9 using the vec_st intrinsic for aligned stores. However that intrinsic seems to differ in gcc 8 and gcc 9.

This demo code:

#if 0
g++ -mcpu=power9 -mvsx $0
exit
#endif

#include <altivec.h>

#define CCTK_REAL8 double
typedef vector double CCTK_REAL8_VEC;

static inline void vec8_store(CCTK_REAL8 &p,
                              CCTK_REAL8_VEC x) {
  vec_st(x, 0 , &p);
}

int main(void)
{
  CCTK_REAL8 p[2];
  CCTK_REAL8_VEC x;
  vec8_store(p[0], x);
  return 0;

--
Ticket URL: https://bitbucket.org/einsteintoolkit/tickets/issues/2530/thorn-vectors-fails-to-compile-using-gcc