[PATCH] Introduce arm_acle.h supporting existing LLVM builtin intrinsics

Saleem Abdulrasool compnerd at compnerd.org
Thu Jun 26 22:56:59 PDT 2014


Ah, I had forgotten about the fact that ACLE itself specifies the arm_acle.h header.

================
Comment at: lib/Headers/arm_acle.h:78
@@ +77,3 @@
+#if __ARM_32BIT_STATE
+#define __ssat(x, y) __builtin_arm_ssat(x, y)
+#define __usat(x, y) __builtin_arm_usat(x, y)
----------------
Why are these macros and the others static inline functions?  It should be possible to do that here as well I believe?

    static __inline__ int32_t __attribute__ (( always_inline, nodebug ))
    __ssat(int32_t x, unsigned int y) {
      return __builtin_arm_ssat(x, y);
    }
    static __inline__ uint32_t __attribute__ (( always_inline, nodebug ))
    __usat(int32_t x, unsigned int y) {
      return __builtin_arm_usat(x, y);
    }

http://reviews.llvm.org/D4296






More information about the cfe-commits mailing list