Hi, > [...] > You can find my code in this repo "https://github.com/ElectrikSpace/gcc.git" > The implementation was originally done against the main dev branch of the KVX > port, > and the working proof of concept is located in the "complex/kvx" branch. > I've also tried to apply the patch of GCC master branch today, with a minimal > adaptation of the x86 backend, in "the complex/x86" branch. > Both branches have the same generic patch (that I will split later) plus a > backend > specific patch. I'm a little bit lost in the x86 backend, so it's not very > usable > for now, but I will work on it.
I have sent a little bit earlier a series of patches which describes my implementation of the support for native complex operations. There are 8 generic patches and 1 experimental x86 patch which exploits a portion of the added features. The initial message called "[PATCH 0/9] Native complex operations" [1] explains the implementation details and illustrate it with some examples, mainly on KVX because the backend implements all the features and the ISA has native complex instructions. Some implementation details need to be discussed, especially concerning vectors of complex elements and the merge with the work from Arm. [1] : "https://gcc.gnu.org/pipermail/gcc-patches/2023-July/624644.html" Best regards, Sylvain