public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [PATCH][AARCH64] set DF_STATIC_TLS when emitting IE relocs
@ 2014-05-12 17:19 Kyle McMartin
  2014-05-13  7:49 ` Will Newton
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Kyle McMartin @ 2014-05-12 17:19 UTC (permalink / raw)
  To: binutils

For consistency with other architectures, set DF_STATIC_TLS in
shared libraries which will consume static TLS slots when loaded.

2014-05-12  Kyle McMartin <kyle@redhat.com>

    * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Set DF_STATIC_TLS
      when emitting initial-exec relocs and not linking an executable.
---
 bfd/elfnn-aarch64.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c
index 498b7bd..229407e 100644
--- a/bfd/elfnn-aarch64.c
+++ b/bfd/elfnn-aarch64.c
@@ -5272,6 +5272,9 @@ elfNN_aarch64_check_relocs (bfd *abfd, struct bfd_link_info *info,
 	    if ((got_type & GOT_TLS_IE) && GOT_TLS_GD_ANY_P (got_type))
 	      got_type &= ~ (GOT_TLSDESC_GD | GOT_TLS_GD);
 
+	    if (!info->executable && (got_type & GOT_TLS_IE))
+	      info->flags |= DF_STATIC_TLS;
+
 	    if (old_got_type != got_type)
 	      {
 		if (h != NULL)
-- 
1.9.0

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH][AARCH64] set DF_STATIC_TLS when emitting IE relocs
  2014-05-12 17:19 [PATCH][AARCH64] set DF_STATIC_TLS when emitting IE relocs Kyle McMartin
@ 2014-05-13  7:49 ` Will Newton
  2014-05-13 14:14   ` Kyle McMartin
  2014-07-01  0:15 ` [PATCH 1/2] ld/testsuite: Check DF_STATIC_TLS is correctly added Kyle McMartin
  2014-07-01  0:18 ` [PATCH 2/2] bfd/elfnn-aarch64.c: set DF_STATIC_TLS when emitting IE relocs Kyle McMartin
  2 siblings, 1 reply; 12+ messages in thread
From: Will Newton @ 2014-05-13  7:49 UTC (permalink / raw)
  To: Kyle McMartin; +Cc: binutils

On 12 May 2014 18:19, Kyle McMartin <kmcmarti@redhat.com> wrote:
> For consistency with other architectures, set DF_STATIC_TLS in
> shared libraries which will consume static TLS slots when loaded.
>
> 2014-05-12  Kyle McMartin <kyle@redhat.com>
>
>     * elfnn-aarch64.c (elfNN_aarch64_check_relocs): Set DF_STATIC_TLS
>       when emitting initial-exec relocs and not linking an executable.
> ---
>  bfd/elfnn-aarch64.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c
> index 498b7bd..229407e 100644
> --- a/bfd/elfnn-aarch64.c
> +++ b/bfd/elfnn-aarch64.c
> @@ -5272,6 +5272,9 @@ elfNN_aarch64_check_relocs (bfd *abfd, struct bfd_link_info *info,
>             if ((got_type & GOT_TLS_IE) && GOT_TLS_GD_ANY_P (got_type))
>               got_type &= ~ (GOT_TLSDESC_GD | GOT_TLS_GD);
>
> +           if (!info->executable && (got_type & GOT_TLS_IE))
> +             info->flags |= DF_STATIC_TLS;
> +
>             if (old_got_type != got_type)
>               {
>                 if (h != NULL)

This looks ok in principle, but I have a couple of questions.

In the aarch64 version we test the got_type after merging TLS methods
but in the arm version we test before. Is there a reason for that? Can
it make any difference? We should probably be consistent in any case.

Is it possible to write a test for this?

Thanks,

-- 
Will Newton
Toolchain Working Group, Linaro

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH][AARCH64] set DF_STATIC_TLS when emitting IE relocs
  2014-05-13  7:49 ` Will Newton
@ 2014-05-13 14:14   ` Kyle McMartin
  2014-06-17 11:08     ` Nicholas Clifton
  0 siblings, 1 reply; 12+ messages in thread
From: Kyle McMartin @ 2014-05-13 14:14 UTC (permalink / raw)
  To: Will Newton; +Cc: binutils

On Tue, May 13, 2014 at 08:49:51AM +0100, Will Newton wrote:
> > --- a/bfd/elfnn-aarch64.c
> > +++ b/bfd/elfnn-aarch64.c
> > @@ -5272,6 +5272,9 @@ elfNN_aarch64_check_relocs (bfd *abfd, struct bfd_link_info *info,
> >             if ((got_type & GOT_TLS_IE) && GOT_TLS_GD_ANY_P (got_type))
> >               got_type &= ~ (GOT_TLSDESC_GD | GOT_TLS_GD);
> >
> > +           if (!info->executable && (got_type & GOT_TLS_IE))
> > +             info->flags |= DF_STATIC_TLS;
> > +
> >             if (old_got_type != got_type)
> >               {
> >                 if (h != NULL)
> 
> This looks ok in principle, but I have a couple of questions.
> 
> In the aarch64 version we test the got_type after merging TLS methods
> but in the arm version we test before. Is there a reason for that? Can
> it make any difference? We should probably be consistent in any case.
> 

I'll fix this to be consistent between the two. It shouldn't make any
difference because we never clear the TLS_IE flag.

> Is it possible to write a test for this?
>

Yeah, I'll resubmit with a test case as soon as I finish writing a
testcase for another TLS issue in glibc. :/

--Kyle

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH][AARCH64] set DF_STATIC_TLS when emitting IE relocs
  2014-05-13 14:14   ` Kyle McMartin
@ 2014-06-17 11:08     ` Nicholas Clifton
  2014-06-18 15:30       ` Kyle McMartin
  0 siblings, 1 reply; 12+ messages in thread
From: Nicholas Clifton @ 2014-06-17 11:08 UTC (permalink / raw)
  To: Kyle McMartin, Will Newton; +Cc: binutils

Hi Kyle,

>> In the aarch64 version we test the got_type after merging TLS methods
>> but in the arm version we test before. Is there a reason for that? Can
>> it make any difference? We should probably be consistent in any case.
>>
>
> I'll fix this to be consistent between the two. It shouldn't make any
> difference because we never clear the TLS_IE flag.
>
>> Is it possible to write a test for this?
>>
>
> Yeah, I'll resubmit with a test case as soon as I finish writing a
> testcase for another TLS issue in glibc. :/


Has there been any progress on this ?

Cheers
   Nick

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH][AARCH64] set DF_STATIC_TLS when emitting IE relocs
  2014-06-17 11:08     ` Nicholas Clifton
@ 2014-06-18 15:30       ` Kyle McMartin
  0 siblings, 0 replies; 12+ messages in thread
From: Kyle McMartin @ 2014-06-18 15:30 UTC (permalink / raw)
  To: Nicholas Clifton; +Cc: Will Newton, binutils

On Tue, Jun 17, 2014 at 12:08:07PM +0100, Nicholas Clifton wrote:
> Hi Kyle,
> 
> >>In the aarch64 version we test the got_type after merging TLS methods
> >>but in the arm version we test before. Is there a reason for that? Can
> >>it make any difference? We should probably be consistent in any case.
> >>
> >
> >I'll fix this to be consistent between the two. It shouldn't make any
> >difference because we never clear the TLS_IE flag.
> >
> >>Is it possible to write a test for this?
> >>
> >
> >Yeah, I'll resubmit with a test case as soon as I finish writing a
> >testcase for another TLS issue in glibc. :/
> 
> 
> Has there been any progress on this ?
> 

Sorry, I've been horribly busy with other things... I'll send an update
patch today.

regards, Kyle

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 1/2] ld/testsuite: Check DF_STATIC_TLS is correctly added
  2014-05-12 17:19 [PATCH][AARCH64] set DF_STATIC_TLS when emitting IE relocs Kyle McMartin
  2014-05-13  7:49 ` Will Newton
@ 2014-07-01  0:15 ` Kyle McMartin
  2014-07-01  0:18 ` [PATCH 2/2] bfd/elfnn-aarch64.c: set DF_STATIC_TLS when emitting IE relocs Kyle McMartin
  2 siblings, 0 replies; 12+ messages in thread
From: Kyle McMartin @ 2014-07-01  0:15 UTC (permalink / raw)
  To: binutils; +Cc: will.newton, nickc

Most TLS tests appear to be predicated on Linux, so add a check for
static TLS relocs causing DF_STATIC_TLS to be set to shared.exp in the
Linux specific tests section. Checked that this doesn't regress the
existing pair of tests on AArch64 and X86-64, and that the added test
correctly fails on AArch64 and passes elsewhere (where DF_STATIC_TLS is
added already.)

ld/testsuite/ChangeLog:

2014-06-30  Kyle McMartin  <kyle@redhat.com>

	* ld-elf/shared.exp: Add a test to ensure shared libraries with
	static TLS relocs correctly get DF_STATIC_TLS set. Also refactor
	the linux specific tests to match the rest of the file.
	* ld-elf/tls-flag-static_tls.c: New file.
	* ld-elf/tls-flag-static_tls.rd: New file.

--- a/ld/testsuite/ld-elf/shared.exp
+++ b/ld/testsuite/ld-elf/shared.exp
@@ -467,25 +467,19 @@ run_ld_link_exec_tests [] $run_cxx_tests
 if { [istarget *-*-linux*]
      || [istarget *-*-nacl*]
      || [istarget *-*-gnu*] } {
-    run_cc_link_tests [list \
-	[list \
-	    "Build libpr2404b.a with PIE" \
-	    "" \
-	    "-fPIE" \
-	    { pr2404b.c } \
-	    {} \
-	    "libpr2404b.a" \
-	] \
-    ]
-    run_ld_link_exec_tests [] [list \
-	[list \
-	    "Run pr2404 with PIE" \
-	    "-pie tmpdir/pr2404b.o tmpdir/libpr2404a.so" \
-	    "" \
-	    { dummy.c } \
-	    "pr2404pie" \
-	    "pr2404.out" \
-	    "-fPIE" \
-	] \
-    ]
+    set build_gnu_tests {
+	{"Build libpr2404b.a with PIE"
+	 "" "-fPIE"
+	 {pr2404b.c} {} "libpr2404b.a"}
+	{"Build tls-flag-static_tls.so"
+	 "-shared" "-fPIC"
+	 {tls-flag-static_tls.c} {{readelf {-d} tls-flag-static_tls.rd}} "tls-flag-static_tls.so"}
+    }
+    run_cc_link_tests $build_gnu_tests
+    set run_gnu_tests {
+	{"Run pr2404 with PIE"
+	 "-pie tmpdir/pr2404b.o tmpdir/libpr2404a.so" ""
+	 {dummy.c} "pr2404pie" "pr2404.out" "-fPIE"}
+    }
+    run_ld_link_exec_tests [] $run_gnu_tests
 }
--- /dev/null
+++ b/ld/testsuite/ld-elf/tls-flag-static_tls.c
@@ -0,0 +1,2 @@
+__thread int tmp_ie __attribute__ ((tls_model ("initial-exec")));
+void *tmp_ie_func(void) { return &tmp_ie; }
--- /dev/null
+++ b/ld/testsuite/ld-elf/tls-flag-static_tls.rd
@@ -0,0 +1,4 @@
+Dynamic section at offset 0x[0-9a-f]+ contains [0-9]+ entries:
+#...
+ +0x[0-9a-f]+ +\(FLAGS\) +STATIC_TLS
+#...

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH 2/2] bfd/elfnn-aarch64.c: set DF_STATIC_TLS when emitting IE relocs
  2014-05-12 17:19 [PATCH][AARCH64] set DF_STATIC_TLS when emitting IE relocs Kyle McMartin
  2014-05-13  7:49 ` Will Newton
  2014-07-01  0:15 ` [PATCH 1/2] ld/testsuite: Check DF_STATIC_TLS is correctly added Kyle McMartin
@ 2014-07-01  0:18 ` Kyle McMartin
  2014-07-01  9:02   ` Marcus Shawcroft
  2 siblings, 1 reply; 12+ messages in thread
From: Kyle McMartin @ 2014-07-01  0:18 UTC (permalink / raw)
  To: binutils; +Cc: will.newton, nickc

For consistency with other architectures, set DF_STATIC_TLS in
shared libraries which will consume static TLS slots when loaded.
Fixes the tls-flag-static_tls test added in 1/2.
                                      
bfd/ChangeLog:

2014-06-30  Kyle McMartin <kyle@redhat.com>

	* elfnn-aarch64.c (elfNN_aarch64_check_relocs): Set DF_STATIC_TLS
	when emitting initial-exec relocs and not linking an executable.

--- a/bfd/elfnn-aarch64.c
+++ b/bfd/elfnn-aarch64.c
@@ -5233,6 +5233,9 @@ elfNN_aarch64_check_relocs (bfd *abfd, struct bfd_link_info *info,
 
 	    got_type = aarch64_reloc_got_type (bfd_r_type);
 
+	    if (!info->executable && (got_type & GOT_TLS_IE))
+	      info->flags |= DF_STATIC_TLS;
+
 	    if (h)
 	      {
 		h->got.refcount += 1;

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] bfd/elfnn-aarch64.c: set DF_STATIC_TLS when emitting IE relocs
  2014-07-01  0:18 ` [PATCH 2/2] bfd/elfnn-aarch64.c: set DF_STATIC_TLS when emitting IE relocs Kyle McMartin
@ 2014-07-01  9:02   ` Marcus Shawcroft
  2014-07-01 14:14     ` Kyle McMartin
  0 siblings, 1 reply; 12+ messages in thread
From: Marcus Shawcroft @ 2014-07-01  9:02 UTC (permalink / raw)
  To: Kyle McMartin; +Cc: binutils, will.newton, nickc

On 01/07/14 01:18, Kyle McMartin wrote:
> For consistency with other architectures, set DF_STATIC_TLS in
> shared libraries which will consume static TLS slots when loaded.
> Fixes the tls-flag-static_tls test added in 1/2.
>
> bfd/ChangeLog:
>
> 2014-06-30  Kyle McMartin <kyle@redhat.com>
>
> 	* elfnn-aarch64.c (elfNN_aarch64_check_relocs): Set DF_STATIC_TLS
> 	when emitting initial-exec relocs and not linking an executable.
>
> --- a/bfd/elfnn-aarch64.c
> +++ b/bfd/elfnn-aarch64.c
> @@ -5233,6 +5233,9 @@ elfNN_aarch64_check_relocs (bfd *abfd, struct bfd_link_info *info,
>
>   	    got_type = aarch64_reloc_got_type (bfd_r_type);
>
> +	    if (!info->executable && (got_type & GOT_TLS_IE))
> +	      info->flags |= DF_STATIC_TLS;
> +
>   	    if (h)
>   	      {
>   		h->got.refcount += 1;
>

Shouldn't this be:

if (info->shared && ...

.. with the effect of including PIE rather than excluding PIE ?

/Marcus

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] bfd/elfnn-aarch64.c: set DF_STATIC_TLS when emitting IE relocs
  2014-07-01  9:02   ` Marcus Shawcroft
@ 2014-07-01 14:14     ` Kyle McMartin
  2014-07-01 15:42       ` Alan Modra
  0 siblings, 1 reply; 12+ messages in thread
From: Kyle McMartin @ 2014-07-01 14:14 UTC (permalink / raw)
  To: Marcus Shawcroft; +Cc: binutils, will.newton, nickc

On Tue, Jul 01, 2014 at 10:02:48AM +0100, Marcus Shawcroft wrote:
> 
> Shouldn't this be:
> 
> if (info->shared && ...
> 
> .. with the effect of including PIE rather than excluding PIE ?
> 

hrm, i think the theory is that PIE will relax to LE anyway? it doesn't
look like it currently would on aarch64 though, i'll look into that...

it seems to be about half and half who tests what:
i386, x86_64, ppc all set if !info->executable
sparc, mips, alpha all set if info->shared

--kyle

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] bfd/elfnn-aarch64.c: set DF_STATIC_TLS when emitting IE relocs
  2014-07-01 14:14     ` Kyle McMartin
@ 2014-07-01 15:42       ` Alan Modra
  2014-07-01 16:19         ` Kyle McMartin
  0 siblings, 1 reply; 12+ messages in thread
From: Alan Modra @ 2014-07-01 15:42 UTC (permalink / raw)
  To: Kyle McMartin; +Cc: Marcus Shawcroft, binutils, will.newton, nickc

On Tue, Jul 01, 2014 at 10:14:28AM -0400, Kyle McMartin wrote:
> it seems to be about half and half who tests what:
> i386, x86_64, ppc all set if !info->executable
> sparc, mips, alpha all set if info->shared

DF_STATIC_TLS is a flag that says the object is using thread pointer
relative addressing of TLS.  ie. the thread local storage for that
object must be laid out at program startup, which means the object
can't be dlopen'd (*).  So DF_STATIC_TLS is a flag for objects that
might be dlopen'd.  Hmm, and since we can actually dlopen any ET_DYN
including PIEs it would seem that info->shared is the correct test.

*) Except that glibc allocates some extra thread local storage,
and therefore can dynamically load shared libraries with static tls.

-- 
Alan Modra
Australia Development Lab, IBM

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] bfd/elfnn-aarch64.c: set DF_STATIC_TLS when emitting IE relocs
  2014-07-01 15:42       ` Alan Modra
@ 2014-07-01 16:19         ` Kyle McMartin
  2014-07-02  4:46           ` Alan Modra
  0 siblings, 1 reply; 12+ messages in thread
From: Kyle McMartin @ 2014-07-01 16:19 UTC (permalink / raw)
  To: Marcus Shawcroft, binutils, will.newton, nickc

On Wed, Jul 02, 2014 at 01:12:05AM +0930, Alan Modra wrote:
> On Tue, Jul 01, 2014 at 10:14:28AM -0400, Kyle McMartin wrote:
> > it seems to be about half and half who tests what:
> > i386, x86_64, ppc all set if !info->executable
> > sparc, mips, alpha all set if info->shared
> 
> DF_STATIC_TLS is a flag that says the object is using thread pointer
> relative addressing of TLS.  ie. the thread local storage for that
> object must be laid out at program startup, which means the object
> can't be dlopen'd (*).  So DF_STATIC_TLS is a flag for objects that
> might be dlopen'd.  Hmm, and since we can actually dlopen any ET_DYN
> including PIEs it would seem that info->shared is the correct test.
> 

Indeed... the specific problem I'm trying to solve is to have an easy
way to know a priori whether any static TLS relocs are present, so that
libc can choose to do the right thing for all cases. The problem right
now is, as it stands, glibc will allocate static TLS to optimize TLS
descriptor accesses, which consumes all the "reserved" static TLS space
for dlopen-ing TP relative libraries, which means any attempt to dlopen
a library which actually needs space fails. If we have this flag set,
then I can know if the link map comes from dlopen'd library (always use
dynamic TLS desc unless DF_STATIC_TLS is present) or if it was known at
ld time, in which case we have reserved space anyway. (And I can then do
it without two passes through the dyn relocs.)

I'm happy changing this, and testing changing it for places where it's
predicated on !info->executable as well, if you'd like. Mostly I just
want this to be consistent across platforms.

(I'm working on some other cleanups for the relaxation code too, but
 that's a side issue.)

> *) Except that glibc allocates some extra thread local storage,
> and therefore can dynamically load shared libraries with static tls.
> 

regards, Kyle

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 2/2] bfd/elfnn-aarch64.c: set DF_STATIC_TLS when emitting IE relocs
  2014-07-01 16:19         ` Kyle McMartin
@ 2014-07-02  4:46           ` Alan Modra
  0 siblings, 0 replies; 12+ messages in thread
From: Alan Modra @ 2014-07-02  4:46 UTC (permalink / raw)
  To: binutils

On Tue, Jul 01, 2014 at 12:19:44PM -0400, Kyle McMartin wrote:
> On Wed, Jul 02, 2014 at 01:12:05AM +0930, Alan Modra wrote:
> > DF_STATIC_TLS is a flag that says the object is using thread pointer
> > relative addressing of TLS.  ie. the thread local storage for that
> > object must be laid out at program startup, which means the object
> > can't be dlopen'd (*).  So DF_STATIC_TLS is a flag for objects that
> > might be dlopen'd.  Hmm, and since we can actually dlopen any ET_DYN
> > including PIEs it would seem that info->shared is the correct test.

This corrects powerpc.  I'll leave it to port maintainers to fix arm
and x86.

	* elf32-ppc.c (ppc_elf_check_relocs): Set DF_STATIC_TLS for PIEs too.
	* elf64-ppc.c (ppc64_elf_check_relocs): Likewise.

diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c
index c4a9543..0a9c8f9 100644
--- a/bfd/elf32-ppc.c
+++ b/bfd/elf32-ppc.c
@@ -4017,7 +4017,7 @@ ppc_elf_check_relocs (bfd *abfd,
 	case R_PPC_GOT_TPREL16_LO:
 	case R_PPC_GOT_TPREL16_HI:
 	case R_PPC_GOT_TPREL16_HA:
-	  if (!info->executable)
+	  if (info->shared)
 	    info->flags |= DF_STATIC_TLS;
 	  tls_type = TLS_TLS | TLS_TPREL;
 	  goto dogottls;
@@ -4308,7 +4308,7 @@ ppc_elf_check_relocs (bfd *abfd,
 	case R_PPC_TPREL16_LO:
 	case R_PPC_TPREL16_HI:
 	case R_PPC_TPREL16_HA:
-	  if (!info->executable)
+	  if (info->shared)
 	    info->flags |= DF_STATIC_TLS;
 	  goto dodyn;
 
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 267a925..81e54a7 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -5328,7 +5328,7 @@ ppc64_elf_check_relocs (bfd *abfd, struct bfd_link_info *info,
 	case R_PPC64_GOT_TPREL16_LO_DS:
 	case R_PPC64_GOT_TPREL16_HI:
 	case R_PPC64_GOT_TPREL16_HA:
-	  if (!info->executable)
+	  if (info->shared)
 	    info->flags |= DF_STATIC_TLS;
 	  tls_type = TLS_TLS | TLS_TPREL;
 	  goto dogottls;
@@ -5558,7 +5558,7 @@ ppc64_elf_check_relocs (bfd *abfd, struct bfd_link_info *info,
 
 	case R_PPC64_TPREL64:
 	  tls_type = TLS_EXPLICIT | TLS_TLS | TLS_TPREL;
-	  if (!info->executable)
+	  if (info->shared)
 	    info->flags |= DF_STATIC_TLS;
 	  goto dotlstoc;
 
@@ -5636,8 +5636,7 @@ ppc64_elf_check_relocs (bfd *abfd, struct bfd_link_info *info,
 	case R_PPC64_TPREL16_HIGHESTA:
 	  if (info->shared)
 	    {
-	      if (!info->executable)
-		info->flags |= DF_STATIC_TLS;
+	      info->flags |= DF_STATIC_TLS;
 	      goto dodyn;
 	    }
 	  break;

-- 
Alan Modra
Australia Development Lab, IBM

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2014-07-02  4:46 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-12 17:19 [PATCH][AARCH64] set DF_STATIC_TLS when emitting IE relocs Kyle McMartin
2014-05-13  7:49 ` Will Newton
2014-05-13 14:14   ` Kyle McMartin
2014-06-17 11:08     ` Nicholas Clifton
2014-06-18 15:30       ` Kyle McMartin
2014-07-01  0:15 ` [PATCH 1/2] ld/testsuite: Check DF_STATIC_TLS is correctly added Kyle McMartin
2014-07-01  0:18 ` [PATCH 2/2] bfd/elfnn-aarch64.c: set DF_STATIC_TLS when emitting IE relocs Kyle McMartin
2014-07-01  9:02   ` Marcus Shawcroft
2014-07-01 14:14     ` Kyle McMartin
2014-07-01 15:42       ` Alan Modra
2014-07-01 16:19         ` Kyle McMartin
2014-07-02  4:46           ` Alan Modra

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).