mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-11-04 05:17:07 +00:00 
			
		
		
		
	git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193548 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			45 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
// RUN: llvm-mc -triple=powerpc64-pc-linux -filetype=obj %s -o - | \
 | 
						|
// RUN: llvm-readobj -r | FileCheck %s
 | 
						|
 | 
						|
// Test correct relocation generation for thread-local storage
 | 
						|
// using the initial-exec model and integrated assembly.
 | 
						|
 | 
						|
	.file	"/home/espindola/llvm/llvm/test/CodeGen/PowerPC/tls-ie-obj.ll"
 | 
						|
	.text
 | 
						|
	.globl	main
 | 
						|
	.align	2
 | 
						|
	.type	main,@function
 | 
						|
	.section	.opd,"aw",@progbits
 | 
						|
main:                                   # @main
 | 
						|
	.align	3
 | 
						|
	.quad	.L.main
 | 
						|
	.quad	.TOC.@tocbase
 | 
						|
	.quad	0
 | 
						|
	.text
 | 
						|
.L.main:
 | 
						|
# BB#0:                                 # %entry
 | 
						|
	li 3, 0
 | 
						|
	addis 4, 2, a@got@tprel@ha
 | 
						|
	ld 4, a@got@tprel@l(4)
 | 
						|
	add 4, 4, a@tls
 | 
						|
	stw 3, -4(1)
 | 
						|
	lwz 3, 0(4)
 | 
						|
	extsw 3, 3
 | 
						|
	blr
 | 
						|
	.long	0
 | 
						|
	.quad	0
 | 
						|
.Ltmp0:
 | 
						|
	.size	main, .Ltmp0-.L.main
 | 
						|
 | 
						|
 | 
						|
// Verify generation of R_PPC64_GOT_TPREL16_DS and R_PPC64_TLS for
 | 
						|
// accessing external variable a.
 | 
						|
//
 | 
						|
// CHECK: Relocations [
 | 
						|
// CHECK:   Section (2) .rela.text {
 | 
						|
// CHECK:     0x{{[0-9,A-F]+}} R_PPC64_GOT_TPREL16_HA    a
 | 
						|
// CHECK:     0x{{[0-9,A-F]+}} R_PPC64_GOT_TPREL16_LO_DS a
 | 
						|
// CHECK:     0x{{[0-9,A-F]+}} R_PPC64_TLS               a
 | 
						|
// CHECK:   }
 | 
						|
// CHECK: ]
 |