mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-24 22:24:54 +00:00
Add support for 64-bit divide instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141024 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -83,3 +83,36 @@ entry:
|
||||
%mul = mul i64 %b, %a
|
||||
ret i64 %mul
|
||||
}
|
||||
|
||||
define i64 @f14(i64 %a, i64 %b) nounwind readnone {
|
||||
entry:
|
||||
; CHECK: ddiv $zero
|
||||
; CHECK: mflo
|
||||
%div = sdiv i64 %a, %b
|
||||
ret i64 %div
|
||||
}
|
||||
|
||||
define i64 @f15(i64 %a, i64 %b) nounwind readnone {
|
||||
entry:
|
||||
; CHECK: ddivu $zero
|
||||
; CHECK: mflo
|
||||
%div = udiv i64 %a, %b
|
||||
ret i64 %div
|
||||
}
|
||||
|
||||
define i64 @f16(i64 %a, i64 %b) nounwind readnone {
|
||||
entry:
|
||||
; CHECK: ddiv $zero
|
||||
; CHECK: mfhi
|
||||
%rem = srem i64 %a, %b
|
||||
ret i64 %rem
|
||||
}
|
||||
|
||||
define i64 @f17(i64 %a, i64 %b) nounwind readnone {
|
||||
entry:
|
||||
; CHECK: ddivu $zero
|
||||
; CHECK: mfhi
|
||||
%rem = urem i64 %a, %b
|
||||
ret i64 %rem
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user