diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 69ae520085ed984c08045598612135ff789d958f..2ba9b4e645eeca753d73eb0b393525b88353d4c5 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2004-11-24  H.J. Lu  <hongjiu.lu@intel.com>
+
+	PR 574:
+	* elfcode.h (elf_slurp_symbol_table): Handle STT_TLS.
+
 2004-11-24  Paul Brook  <paul@codesourcery.com>
 
 	* elf.c (assign_section_numbers): Number SHT_GROUP sections first.
diff --git a/bfd/elfcode.h b/bfd/elfcode.h
index 45c4ea9fb5ee0137416e964e7a95392545a08f57..303e46c7ba4615595489f79feb00d1b3e8eda634 100644
--- a/bfd/elfcode.h
+++ b/bfd/elfcode.h
@@ -1158,6 +1158,9 @@ elf_slurp_symbol_table (bfd *abfd, asymbol **symptrs, bfd_boolean dynamic)
 	    case STT_OBJECT:
 	      sym->symbol.flags |= BSF_OBJECT;
 	      break;
+	    case STT_TLS:
+	      sym->symbol.flags |= BSF_THREAD_LOCAL;
+	      break;
 	    }
 
 	  if (dynamic)