Home | History | Annotate | Download | only in ia64
      1 	.section ".tdata", "awT", @progbits
      2 	.align 16
      3 	.global x#, y#, z#, a#, b#, c#
      4 	.protected a#, b#, c#
      5 	.type	x#,@object
      6 	.size	x#,4
      7 x:	data4	1
      8 	.type	y#,@object
      9 	.size	y#,4
     10 y:	data4	2
     11 	.type	z#,@object
     12 	.size	z#,4
     13 z:	data4	3
     14 	.align	8
     15 	.type	a#,@object
     16 	.size	a#,8
     17 a:	data8	4
     18 	.type	b#,@object
     19 	.size	b#,8
     20 b:	data8	5
     21 	.type	c#,@object
     22 	.size	c#,1
     23 c:	data1	6
     24 
     25 	.text
     26 	.align 16
     27 	.global foo#
     28 	.proc foo#
     29 foo:
     30 	.prologue
     31 	alloc r36 = ar.pfs, 0, 5, 3, 0
     32 	.body
     33 	addl	loc0 = @ltoff(@tprel(x)), gp;;
     34 	ld8	loc0 = [loc0];;
     35 	add	loc1 = loc0, r13;;
     36 
     37 	mov	r2 = r13;;
     38 	addl	loc1 = @tprel(y), r2;;
     39 
     40 	mov	loc0 = gp
     41 	addl	out0 = @ltoff(@dtpmod(z)), gp
     42 	addl	out1 = @ltoff(@dtprel(z)), gp;;
     43 	ld8	out0 = [out0]
     44 	ld8	out1 = [out1]
     45 	br.call.sptk.many	b0 = __tls_get_addr;;
     46 	mov	gp = loc0;;
     47 
     48 	addl	out0 = @ltoff(@dtpmod(a)), gp
     49 	addl	out1 = @dtprel(a), r0;;
     50 	ld8	out0 = [out0]
     51 	br.call.sptk.many	b0 = __tls_get_addr;;
     52 	mov	gp = loc0;;
     53 
     54 	addl	out0 = @ltoff(@dtpmod(b)), gp
     55 	mov	out1 = r0;;
     56 	ld8	out0 = [out0]
     57 	br.call.sptk.many	b0 = __tls_get_addr;;
     58 	mov	gp = loc0
     59 	mov	r2 = ret0;;
     60 	addl	loc1 = @dtprel(b), r2
     61 	addl	loc2 = @dtprel(c), r2
     62 
     63 	br.ret.sptk.many b0
     64 	.endp foo#
     65