XCore target: add GCCBuiltin to four intrinsics
authorRobert Lytton <robert@xmos.com>
Thu, 1 Aug 2013 08:41:32 +0000 (08:41 +0000)
committerRobert Lytton <robert@xmos.com>
Thu, 1 Aug 2013 08:41:32 +0000 (08:41 +0000)
The following are made available by clang in the XCore ABI
__builtin_bitrev
__builtin_getid
__builtin_getps
__builtin_setps

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187566 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/IR/IntrinsicsXCore.td [changed mode: 0644->0755]

old mode 100644 (file)
new mode 100755 (executable)
index a481313..bf345d4
@@ -13,7 +13,8 @@
 
 let TargetPrefix = "xcore" in {  // All intrinsics start with "llvm.xcore.".
   // Miscellaneous instructions.
-  def int_xcore_bitrev : Intrinsic<[llvm_i32_ty],[llvm_i32_ty],[IntrNoMem]>;
+  def int_xcore_bitrev : Intrinsic<[llvm_i32_ty],[llvm_i32_ty],[IntrNoMem]>,
+                         GCCBuiltin<"__builtin_bitrev">;
   def int_xcore_crc8 : Intrinsic<[llvm_i32_ty, llvm_i32_ty],
                                  [llvm_i32_ty,llvm_i32_ty,llvm_i32_ty],
                                  [IntrNoMem]>;
@@ -24,9 +25,12 @@ let TargetPrefix = "xcore" in {  // All intrinsics start with "llvm.xcore.".
                                  [IntrNoMem]>;
   def int_xcore_zext : Intrinsic<[llvm_i32_ty], [llvm_i32_ty, llvm_i32_ty],
                                  [IntrNoMem]>;
-  def int_xcore_getid : Intrinsic<[llvm_i32_ty],[],[IntrNoMem]>;
-  def int_xcore_getps : Intrinsic<[llvm_i32_ty],[llvm_i32_ty]>;
-  def int_xcore_setps : Intrinsic<[],[llvm_i32_ty, llvm_i32_ty]>;
+  def int_xcore_getid : Intrinsic<[llvm_i32_ty],[],[IntrNoMem]>,
+                        GCCBuiltin<"__builtin_getid">;
+  def int_xcore_getps : Intrinsic<[llvm_i32_ty],[llvm_i32_ty]>,
+                        GCCBuiltin<"__builtin_getps">;
+  def int_xcore_setps : Intrinsic<[],[llvm_i32_ty, llvm_i32_ty]>,
+                        GCCBuiltin<"__builtin_setps">;
   def int_xcore_geted : Intrinsic<[llvm_i32_ty],[]>;
   def int_xcore_getet : Intrinsic<[llvm_i32_ty],[]>;
   def int_xcore_setsr : Intrinsic<[],[llvm_i32_ty]>;