[PATCH] ARM & AArch64: merge the semantic checking of NEON intrinsics

Tim Northover t.p.northover at gmail.com
Tue Feb 11 06:11:24 PST 2014


Hi all,

There are two kinds of automatically generated tests for NEON intrinsics, both of which can be merged without adversely affecting users (I assert).

# We check that a valid kind of __builtin_neon_XYZ overload is requested (e.g. we're not asking for a float32x4_t version when it only accepts integers. Since the __builtin_neon_XYZ intrinsics should only be used in arm_neon.h, relaxing this test and permitting AArch64 types for AArch32 should not cause a problem. The extra arm_neon.h definitions should be #ifdefed out anyway so won't reach SemaChecking.
# We check that intrinsics which take immediates are actually given compile-time constants within range. Since all NEON intrinsics should be backwards compatible, these tests should be identical on AArch64 and AArch32 anyway.

Does it look reasonable?

Cheers.

Tim.

http://llvm-reviews.chandlerc.com/D2738

Files:
  include/clang/Sema/Sema.h
  lib/Sema/SemaChecking.cpp
  utils/TableGen/NeonEmitter.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D2738.1.patch
Type: text/x-patch
Size: 13624 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140211/3ef5ac49/attachment.bin>


More information about the cfe-commits mailing list