Indeed, this looks like an odd mismatch between 
X86_64ABIInfo::GetByteVectorType and the recursive logic in 
X86_64ABIInfo::classify (which will recurse and handle the array types).

FWIW, I wonder if there are more bugs hiding in here too. When 
X86_64ABIInfo::classify recurses on the array types, it looks like it is just 
looking at the total size of the array. isSingleElementStruct specifically 
handles only arrays of 1 element. What happens when you try to pass a struct of 
{ v4f32 x[2]; }?

If that works, then LGTM (otherwise, we obviously need to fix that too).


http://reviews.llvm.org/D7614

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/



_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to