On Jan 14, 2013, at 4:00 AM, Tim Northover <[email protected]> wrote:

> Hi,
> 
> As suggested by John in his review of the AArch64 backend, I'm splitting this 
> change into a separate thread.
> 
> I'd like to make the ARM NEON polynomial types be based on unsigned variants 
> (unsigned char, unsigned short) rather than the present signed ones.
> 
> The AArch32 (i.e. "ARM") procedure call standard leaves this detail 
> unspecified, merely saying that they represent polynomials over GF(2). 
> However, the AArch64 PCS says that they correspond to unsigned types.
> 
> Since the 32-bit ABI is compatible with this, I think it would be better to 
> bring them into alignment rather than adding unnecessary target 
> conditionalisation to Clang.
> 
> Ok to commit?

This makes me a little nervous.  What do GCC and other ARM compilers use?  If 
all the other ARM compilers use unsigned poly types, then it is probably a good 
thing to bring Clang in sync with them.  If other compilers use signed poly 
types, then I think it would be better to conditionalize this for AArch64.

This will also break compatibility due the C++ mangling.  The poly vector 
mangling won't be affected, but any poly8_t and poly16_t types will change.
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to