mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-19 11:02:59 +02:00
2f935bc924
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
28 lines
546 B
LLVM
28 lines
546 B
LLVM
; RUN: llc < %s -march=nios2 2>&1 | FileCheck %s
|
|
; RUN: llc < %s -march=nios2 -target-abi=nios2r2 2>&1 | FileCheck %s
|
|
|
|
define i32 @mul_reg(i32 %a, i32 %b) nounwind {
|
|
entry:
|
|
; CHECK: mul_reg:
|
|
; CHECK: mul r2, r4, r5
|
|
%c = mul i32 %a, %b
|
|
ret i32 %c
|
|
}
|
|
|
|
define i32 @div_signed(i32 %a, i32 %b) nounwind {
|
|
entry:
|
|
; CHECK: div_signed:
|
|
; CHECK: div r2, r4, r5
|
|
%c = sdiv i32 %a, %b
|
|
ret i32 %c
|
|
}
|
|
|
|
define i32 @div_unsigned(i32 %a, i32 %b) nounwind {
|
|
entry:
|
|
; CHECK: div_unsigned:
|
|
; CHECK: divu r2, r4, r5
|
|
%c = udiv i32 %a, %b
|
|
ret i32 %c
|
|
}
|
|
|