blob: f5fe60ba76b19e8bc71671483119f6729cc9913f [file] [edit]
; RUN: llc -global-isel=0 -mtriple=amdgpu6.00 < %s | FileCheck %s --implicit-check-not=s_swappc_b64
; RUN: llc -global-isel=0 -mtriple=amdgpu11.00 < %s | FileCheck %s --implicit-check-not=s_swappc_b64
; Check that AMDGPU legalizes constant i128 UREM without emitting a libcall.
define i128 @urem_i128_65(i128 %src) {
; CHECK-LABEL: urem_i128_65:
; CHECK: s_setpc_b64
%result = urem i128 %src, 65
ret i128 %result
}
define i128 @urem_i128_65_optsize(i128 %src) #0 {
; CHECK-LABEL: urem_i128_65_optsize:
; CHECK: s_setpc_b64
%result = urem i128 %src, 65
ret i128 %result
}
define i128 @urem_i128_66(i128 %src) {
; CHECK-LABEL: urem_i128_66:
; CHECK: s_setpc_b64
%result = urem i128 %src, 66
ret i128 %result
}
define i128 @urem_i128_67(i128 %src) {
; CHECK-LABEL: urem_i128_67:
; CHECK: s_setpc_b64
%result = urem i128 %src, 67
ret i128 %result
}
define i128 @urem_i128_68(i128 %src) {
; CHECK-LABEL: urem_i128_68:
; CHECK: s_setpc_b64
%result = urem i128 %src, 68
ret i128 %result
}
define i128 @urem_i128_127(i128 %src) {
; CHECK-LABEL: urem_i128_127:
; CHECK: s_setpc_b64
%result = urem i128 %src, 127
ret i128 %result
}
attributes #0 = { optsize }