17 lines
		
	
	
		
			494 B
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			17 lines
		
	
	
		
			494 B
		
	
	
	
		
			LLVM
		
	
	
	
; 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
 | 
						|
}
 |