[PATCH] ARM NEON: use more flexible TableGen field for defs.

Tim Northover t.p.northover at gmail.com
Wed Feb 12 05:56:27 PST 2014


We used to have special handling for isCrypto and isA64 bits in the NeonEmitter.cpp file (it knew the former was predicated on __ARM_FEATURE_CRYPTO and the latter on __aarch64__ and went through various contortions to make sure the correct intrinsics were emitted under the correct guard.
    
This is ugly and has obvious scalability problems (e.g. vcvtX intrinsics are needed, which are ARMv8 only but available on both, yet another category). This patch moves the #if predicate into the arm_neon.td file directly and makes NeonEmitter.cpp agnostic about what goes in there.
    
It also deduplicates arm_neon.td so that each desired intrinsic is mentioned in just one place (necessary because of the new mechanism for creating arm_neon.h).

Look OK?

Cheers.

Tim.

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

Files:
  include/clang/Basic/arm_neon.td
  utils/TableGen/NeonEmitter.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D2752.1.patch
Type: text/x-patch
Size: 27268 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140212/4199efd9/attachment.bin>


More information about the cfe-commits mailing list