[llvm-dev] [TableGen] What to do if there are overlapping instruction patterns?

Charlotte Delenk via llvm-dev llvm-dev at lists.llvm.org
Tue Aug 25 03:00:26 PDT 2020

I've been working on adding support for a (semi-proprietary) extension 
for PowerPC called "Paired-Singles". It's a SIMD instruction set 
supporting various operations on a vector of 2 32-bit floating point 

The Extension is found in the PowerPC 750CL, modified variants of it are 
used in the Nintendo GameCube (Gekko), the Nintendo Wii (Broadway) and 
the Nintendo Wii U (Espresso)

It's been going pretty well so far, however the biggest hurdle I have 
encountered was that the testsuite is failing because the instruction 
space for Paired Singles has been reused for ISA 3.1 and VMX.

Is there a way to disembiguate them further? You can see my current 
patch at https://reviews.llvm.org/D85137 and it already prevents you 
from enabling Altivec and Paired Singles at the same time.

More information about the llvm-dev mailing list