summaryrefslogtreecommitdiff
path: root/rtemstoolkit/rld-files.cpp
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2017-08-16 18:09:59 +1000
committerChris Johns <chrisj@rtems.org>2017-08-16 18:18:35 +1000
commit78bbe4c1a31dc62c3a9bee919645c0aa8781709b (patch)
tree51caba18f81dd97459d45c00ba5bdb3d468e112c /rtemstoolkit/rld-files.cpp
parent0ea1c27f792a486badddb24c6ab219e4af0d91c3 (diff)
linkers/exe-info Support ARM static constructors.
Note, ARM destructors are registered at runtime and currently not easly found. Update libiberty to get a newer demangler. Closes #3102.
Diffstat (limited to 'rtemstoolkit/rld-files.cpp')
-rw-r--r--rtemstoolkit/rld-files.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/rtemstoolkit/rld-files.cpp b/rtemstoolkit/rld-files.cpp
index 1a236fd..6a276ea 100644
--- a/rtemstoolkit/rld-files.cpp
+++ b/rtemstoolkit/rld-files.cpp
@@ -406,6 +406,19 @@ namespace rld
return elf_;
}
+ byteorder
+ image::get_byteorder () const
+ {
+ switch (elf_.data_type ())
+ {
+ case ELFDATA2LSB:
+ return little_endian;
+ case ELFDATA2MSB:
+ return big_endian;
+ }
+ throw rld::error ("invalid elf data type", "byteorder: " + name ().path ());
+ }
+
void
image::symbol_referenced ()
{