[PATCH] x86-64 ABI: unwrap single element structs / arrays of 256-bit vectors to pass and return in registers
hfinkel at anl.gov
hfinkel at anl.gov
Mon Feb 16 01:49:28 PST 2015
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/
More information about the cfe-commits
mailing list