diff options
author | Chris Johns <chrisj@rtems.org> | 2018-08-07 09:08:25 +1000 |
---|---|---|
committer | Chris Johns <chrisj@rtems.org> | 2018-08-07 09:11:29 +1000 |
commit | 317d85d71f4b156f6d99342700b8a0867058c4a4 (patch) | |
tree | 890e593d69a97ffd598e79ab3ce88ffc52a81763 /rtemstoolkit/rld-dwarf.h | |
parent | 99c90b3353bf5b638dcfd87803e4aaf02adf3219 (diff) |
rtemstoolkit/dwarf: Add types of inline. Report machine code size not span.
- Add the types of inlined functions to the interface.
- Return the machine code for each function and not the address span.
Diffstat (limited to 'rtemstoolkit/rld-dwarf.h')
-rw-r--r-- | rtemstoolkit/rld-dwarf.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/rtemstoolkit/rld-dwarf.h b/rtemstoolkit/rld-dwarf.h index d4e4c8a..030be3a 100644 --- a/rtemstoolkit/rld-dwarf.h +++ b/rtemstoolkit/rld-dwarf.h @@ -282,6 +282,17 @@ namespace rld class function { public: + + /** + * The various inline states. See Table 3.4 DWARF 5 standard. + */ + enum inlined { + inl_not_inlined = 0, /**< Not declared inline nore inlined. */ + inl_inline = 1, /**< Not declared inline but inlined. */ + inl_declared_not_inlined = 2, /**< Declared inline but not inlined. */ + inl_declared_inlined = 3 /**< Declared inline and inlined */ + }; + function (file& debug, debug_info_entry& die); function (const function& orig); ~function (); @@ -333,6 +344,11 @@ namespace rld bool is_inlined () const; /** + * Get the inlined state. + */ + inlined get_inlined () const; + + /** * Get the call file of the inlined function. */ std::string call_file () const; |