mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-31 08:16:47 +00:00 
			
		
		
		
	types on functions, with adjustments so that it accepts both new-style aggregate returns and old-style MRV returns, including those with only a single member. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52157 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			28 lines
		
	
	
		
			632 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			632 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
| ; RUN: llvm-as < %s | llvm-dis | grep 7 | count 3
 | |
| 
 | |
| define void @foo({i32, i32}* %x) nounwind {
 | |
|   store {i32, i32}{i32 7, i32 9}, {i32, i32}* %x
 | |
|   ret void
 | |
| }
 | |
| define void @foo_empty({}* %x) nounwind {
 | |
|   store {}{}, {}* %x
 | |
|   ret void
 | |
| }
 | |
| define void @bar([2 x i32]* %x) nounwind {
 | |
|   store [2 x i32][i32 7, i32 9], [2 x i32]* %x
 | |
|   ret void
 | |
| }
 | |
| define void @bar_empty([0 x i32]* %x) nounwind {
 | |
|   store [0 x i32][], [0 x i32]* %x
 | |
|   ret void
 | |
| }
 | |
| define void @qux(<{i32, i32}>* %x) nounwind {
 | |
|   store <{i32, i32}><{i32 7, i32 9}>, <{i32, i32}>* %x
 | |
|   ret void
 | |
| }
 | |
| define void @qux_empty(<{}>* %x) nounwind {
 | |
|   store <{}><{}>, <{}>* %x
 | |
|   ret void
 | |
| }
 | |
| 
 |