You've already forked linux-packaging-mono
							
							
		
			
	
	
		
			43 lines
		
	
	
		
			741 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
		
		
			
		
	
	
			43 lines
		
	
	
		
			741 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
|   | ; RUN: verify-uselistorder < %s
 | ||
|  | 
 | ||
|  | ; Global referencing ifunc.
 | ||
|  | @ptr_foo = global void ()* @foo_ifunc | ||
|  | 
 | ||
|  | ; Alias for ifunc.
 | ||
|  | @alias_foo = alias void (), void ()* @foo_ifunc | ||
|  | 
 | ||
|  | @foo_ifunc = ifunc void (), i8* ()* @foo_resolver | ||
|  | 
 | ||
|  | define i8* @foo_resolver() { | ||
|  | entry: | ||
|  |   ret i8* null | ||
|  | } | ||
|  | 
 | ||
|  | ; Function referencing ifunc.
 | ||
|  | define void @bar() { | ||
|  | entry: | ||
|  |   call void @foo_ifunc() | ||
|  |   ret void | ||
|  | } | ||
|  | 
 | ||
|  | ; Global referencing function.
 | ||
|  | @ptr_bar = global void ()* @bar | ||
|  | 
 | ||
|  | ; Alias for function.
 | ||
|  | @alias_bar = alias void (), void ()* @bar | ||
|  | 
 | ||
|  | @bar_ifunc = ifunc void (), i8* ()* @bar2_ifunc | ||
|  | @bar2_ifunc = ifunc i8* (), i8* ()* @bar_resolver | ||
|  | 
 | ||
|  | define i8* @bar_resolver() { | ||
|  | entry: | ||
|  |   ret i8* null | ||
|  | } | ||
|  | 
 | ||
|  | ; Function referencing bar.
 | ||
|  | define void @bar2() { | ||
|  | entry: | ||
|  |   call void @bar() | ||
|  |   ret void | ||
|  | } |