[Bug 276282] vectorized code fails on powerpc64le: typedef __vector uint8_t __m128i; in the port misc/randomx
Date: Fri, 12 Jan 2024 20:41:46 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=276282
Bug ID: 276282
Summary: vectorized code fails on powerpc64le: typedef __vector
uint8_t __m128i; in the port misc/randomx
Product: Base System
Version: 15.0-CURRENT
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: misc
Assignee: bugs@FreeBSD.org
Reporter: yuri@freebsd.org
This code fails:
#elif defined(__PPC64__) && defined(__ALTIVEC__) && defined(__VSX__) //sadly
only POWER7 and newer will be able to use SIMD acceleration. Earlier processors
cant use doubles or 64 bit integers with SIMD
#include <cstdint>
#include <stdexcept>
#include <cstdlib>
#include <altivec.h>
#undef vector
#undef pixel
#undef bool
typedef __vector uint8_t __m128i;
typedef __vector uint32_t __m128l;
typedef __vector int __m128li;
typedef __vector uint64_t __m128ll;
typedef __vector double __m128d;
error:
In file included from
/wrkdirs/usr/ports/misc/randomx/work/RandomX-1.2.1/src/bytecode_machine.cpp:29:
In file included from
/wrkdirs/usr/ports/misc/randomx/work/RandomX-1.2.1/src/bytecode_machine.hpp:32:
/wrkdirs/usr/ports/misc/randomx/work/RandomX-1.2.1/src/intrin_portable.h:189:18:
error: a type specifier is required for all declarations
typedef __vector uint8_t __m128i;
~~~~~~~~~~~~~~~~ ^
I don't know whether this code is valid, but based on the presence of #if
defined(__PPC64__) - it likely is valid.
See the linked log URL for details.
--
You are receiving this mail because:
You are the assignee for the bug.