| Index: binutils/bfd/elf32-cris.c
 | 
| diff --git a/binutils/bfd/elf32-cris.c b/binutils/bfd/elf32-cris.c
 | 
| index 2037b10f59ec6f82e628fe3c09532fcc45cb3f76..ceea1b92736ff4972816242a911b018ce3bd75f7 100644
 | 
| --- a/binutils/bfd/elf32-cris.c
 | 
| +++ b/binutils/bfd/elf32-cris.c
 | 
| @@ -1690,15 +1690,10 @@ cris_elf_relocate_section (output_bfd, info, input_bfd, input_section,
 | 
|  		= -elf_cris_hash_table (info)->dtpmod_refcount;
 | 
|  	    }
 | 
|  
 | 
| -	  /* The thread-based offset to the local symbol is the
 | 
| -	     relocation.
 | 
| -	     For the executable, TLS data begins at the thread pointer plus
 | 
| -	     the negative size of the TLS data.  For a DSO, that's part of
 | 
| -	     the module TLS offset.  */
 | 
| +	  /* The relocation is the offset from the start of the module
 | 
| +	     TLS block to the (local) symbol.  */
 | 
|  	  relocation -= elf_hash_table (info)->tls_sec == NULL
 | 
| -	    ? 0 : (elf_hash_table (info)->tls_sec->vma
 | 
| -		   + (info->shared
 | 
| -		      ? 0 : elf_hash_table (info)->tls_size));
 | 
| +	    ? 0 : elf_hash_table (info)->tls_sec->vma;
 | 
|  	  break;
 | 
|  
 | 
|  	case R_CRIS_32_GD:
 | 
| 
 |