mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-30 16:17:05 +00:00 
			
		
		
		
	The "noduplicate" function attribute exists to prevent certain optimizations from duplicating calls to the function. This is important on platforms where certain function call duplications are unsafe (for example execution barriers for CUDA and OpenCL). This patch makes it possible to specify intrinsics as "noduplicate" and translates that to the appropriate function attribute. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204200 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			10 lines
		
	
	
		
			311 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			10 lines
		
	
	
		
			311 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
| ; RUN: llvm-as < %s | llvm-dis | FileCheck %s
 | |
| 
 | |
| ; Make sure LLVM knows about the noduplicate attribute on the
 | |
| ; llvm.cuda.syncthreads intrinsic.
 | |
| 
 | |
| declare void @llvm.cuda.syncthreads()
 | |
| 
 | |
| ; CHECK: declare void @llvm.cuda.syncthreads() #[[ATTRNUM:[0-9]+]]
 | |
| ; CHECK: attributes #[[ATTRNUM]] = { noduplicate nounwind }
 |