]> granicus.if.org Git - clang/commit
Check pointer types for arguments of Neon load/store macros. rdar://9958031
authorBob Wilson <bob.wilson@apple.com>
Tue, 8 Nov 2011 05:04:11 +0000 (05:04 +0000)
committerBob Wilson <bob.wilson@apple.com>
Tue, 8 Nov 2011 05:04:11 +0000 (05:04 +0000)
commit6f9f03ef370ad48ece0c5d10edda28f39ccadb5d
treec97b8638384f8dc168c013872d499f9e3463ea55
parent355130fde923c7284d32cc61fc3a34673bf14852
Check pointer types for arguments of Neon load/store macros. rdar://9958031

The Neon load/store intrinsics need to be implemented as macros to avoid
hiding alignment attributes on the pointer arguments, and the macros can
only evaluate those pointer arguments once (in case they have side effects),
so it has been hard to get the right type checking for those pointers.
I tried various alternatives in the arm_neon.h header, but it's much more
straightforward to just check directly in Sema.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@144075 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Sema/SemaChecking.cpp
test/Sema/arm-neon-types.c
utils/TableGen/NeonEmitter.cpp