; RUN: opt -S -codegenprepare < %s | FileCheck %s | |
target datalayout = "e-i64:64-v16:16-v32:32-n16:32:64" | |
target triple = "nvptx64-nvidia-cuda" | |
; Check that the smaller-width division that the BypassSlowDivision pass | |
; creates is not marked as "exact" (that is, it doesn't claim that the | |
; numerator is a multiple of the denominator). | |
; | |
; CHECK-LABEL: @test | |
define void @test(i64 %a, i64 %b, i64* %retptr) { | |
; CHECK: udiv i32 | |
%d = sdiv i64 %a, %b | |
store i64 %d, i64* %retptr | |
ret void | |
} |