[llvm] r187566 - XCore target: add GCCBuiltin to four intrinsics
Robert Lytton
robert at xmos.com
Thu Aug 1 10:07:05 PDT 2013
Hi Rafael,
The test cases are in the clang front end.
I did think about how to test them from llvm but didn't come up with any ideas.
Robert
________________________________________
From: Rafael EspĂndola [rafael.espindola at gmail.com]
Sent: 01 August 2013 15:23
To: Robert Lytton
Cc: llvm-commits
Subject: Re: [llvm] r187566 - XCore target: add GCCBuiltin to four intrinsics
testcase?
On 1 August 2013 04:41, Robert Lytton <robert at xmos.com> wrote:
> Author: rlytton
> Date: Thu Aug 1 03:41:32 2013
> New Revision: 187566
>
> URL: http://llvm.org/viewvc/llvm-project?rev=187566&view=rev
> Log:
> XCore target: add GCCBuiltin to four intrinsics
>
> The following are made available by clang in the XCore ABI
> __builtin_bitrev
> __builtin_getid
> __builtin_getps
> __builtin_setps
>
> Modified:
> llvm/trunk/include/llvm/IR/IntrinsicsXCore.td (contents, props changed)
>
> Modified: llvm/trunk/include/llvm/IR/IntrinsicsXCore.td
> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/IR/IntrinsicsXCore.td?rev=187566&r1=187565&r2=187566&view=diff
> ==============================================================================
> --- llvm/trunk/include/llvm/IR/IntrinsicsXCore.td (original)
> +++ llvm/trunk/include/llvm/IR/IntrinsicsXCore.td Thu Aug 1 03:41:32 2013
> @@ -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
> [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]>;
>
> Propchange: llvm/trunk/include/llvm/IR/IntrinsicsXCore.td
> ------------------------------------------------------------------------------
> svn:executable = *
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
More information about the llvm-commits
mailing list