mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-31 08:16:47 +00:00 
			
		
		
		
	We have been using .init-array for most systems for quiet some time, but tools like llc are still defaulting to .ctors because the old option was never changed. This patch makes llc default to .init-array and changes the option to be -use-ctors. Clang is not affected by this. It has its own fancier logic. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@216905 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			28 lines
		
	
	
		
			802 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			802 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
| ; RUN: llc -mtriple x86_64-pc-linux -use-ctors < %s | FileCheck --check-prefix=CTOR %s
 | |
| ; RUN: llc -mtriple x86_64-pc-linux < %s | FileCheck --check-prefix=INIT-ARRAY %s
 | |
| @llvm.global_ctors = appending global [2 x { i32, void ()* }] [{ i32, void ()* } { i32 65535, void ()* @f }, { i32, void ()* } { i32 15, void ()* @g }]
 | |
| 
 | |
| define void @f() {
 | |
| entry:
 | |
|   ret void
 | |
| }
 | |
| 
 | |
| define void @g() {
 | |
| entry:
 | |
|   ret void
 | |
| }
 | |
| 
 | |
| ; CTOR:		.section	.ctors.65520,"aw",@progbits
 | |
| ; CTOR-NEXT:	.align	8
 | |
| ; CTOR-NEXT:	.quad	g
 | |
| ; CTOR-NEXT:	.section	.ctors,"aw",@progbits
 | |
| ; CTOR-NEXT:	.align	8
 | |
| ; CTOR-NEXT:	.quad	f
 | |
| 
 | |
| ; INIT-ARRAY:		.section	.init_array.15,"aw",@init_array
 | |
| ; INIT-ARRAY-NEXT:	.align	8
 | |
| ; INIT-ARRAY-NEXT:	.quad	g
 | |
| ; INIT-ARRAY-NEXT:	.section	.init_array,"aw",@init_array
 | |
| ; INIT-ARRAY-NEXT:	.align	8
 | |
| ; INIT-ARRAY-NEXT:	.quad	f
 |