summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/Nios2/shift-rotate.ll
diff options
context:
space:
mode:
authorNikolai Bozhenov <nikolai.bozhenov@intel.com>2018-01-09 11:15:08 +0000
committerNikolai Bozhenov <nikolai.bozhenov@intel.com>2018-01-09 11:15:08 +0000
commiteededdade956e057d099bea20b769d25374d89c5 (patch)
treea6f294d0dcbfc00a8a146038dafe568c4f35f372 /llvm/test/CodeGen/Nios2/shift-rotate.ll
parent6db41e608f95bd405735b886b8246b1f566e38c6 (diff)
downloadbcm5719-llvm-eededdade956e057d099bea20b769d25374d89c5.tar.gz
bcm5719-llvm-eededdade956e057d099bea20b769d25374d89c5.zip
[Nios2] Arithmetic instructions for R1 and R2 ISA.
Summary: This commit enables some of the arithmetic instructions for Nios2 ISA (for both R1 and R2 revisions), implements facilities required to emit those instructions and provides LIT tests for added instructions. Reviewed By: hfinkel Differential Revision: https://reviews.llvm.org/D41236 Author: belickim <mateusz.belicki@intel.com> llvm-svn: 322069
Diffstat (limited to 'llvm/test/CodeGen/Nios2/shift-rotate.ll')
-rw-r--r--llvm/test/CodeGen/Nios2/shift-rotate.ll26
1 files changed, 26 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Nios2/shift-rotate.ll b/llvm/test/CodeGen/Nios2/shift-rotate.ll
new file mode 100644
index 00000000000..d3084b5fb59
--- /dev/null
+++ b/llvm/test/CodeGen/Nios2/shift-rotate.ll
@@ -0,0 +1,26 @@
+; RUN: llc < %s -march=nios2 2>&1 | FileCheck %s
+; RUN: llc < %s -march=nios2 -target-abi=nios2r2 2>&1 | FileCheck %s
+
+define i32 @sll_reg(i32 %a, i32 %b) nounwind {
+entry:
+; CHECK: sll_reg:
+; CHECK: sll r2, r4, r5
+ %c = shl i32 %a, %b
+ ret i32 %c
+}
+
+define i32 @srl_reg(i32 %a, i32 %b) nounwind {
+entry:
+; CHECK: srl_reg:
+; CHECK: srl r2, r4, r5
+ %c = lshr i32 %a, %b
+ ret i32 %c
+}
+
+define i32 @sra_reg(i32 %a, i32 %b) nounwind {
+entry:
+; CHECK: sra_reg:
+; CHECK: sra r2, r4, r5
+ %c = ashr i32 %a, %b
+ ret i32 %c
+}
OpenPOWER on IntegriCloud