Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add interface for getting undefined function and variable info #1245

Open
wants to merge 1 commit into
base: kupsch/parse-callsites-preview-3
Choose a base branch
from

Conversation

mplegendre
Copy link
Contributor

As discussed, I've added an interface for fetching information about undefined functions and variables without going through Function callsite info. This builds off of @kupsch work on callsites, but helps with some situations with compilers (seen in gcc 10.2) aren't outputting callsite DWARF information, but they are outputting signatures for undefined symbols. This works by building up a list of undefined symbol names from the GOT, then when DWARF parsing it matches Type and Function signature info to those symbol names.

I was unable to get the Dyninst testsuite working, and I've only validated this against some out-of-testsuite tests.

@mplegendre mplegendre added Symtab This issue is directly related to SymtabAPI DWARF Item is related to DWARF parsing ELF Relates to the handling of ELF data labels Apr 4, 2022
@vsoch
Copy link
Contributor

vsoch commented Apr 4, 2022

@mplegendre you need to rebase with dyninst master, you are missing the ABI tests!

The testing suite has been pretty actively changed so it's going to likely influence results here.

@mplegendre
Copy link
Contributor Author

@mplegendre you need to rebase with dyninst master, you are missing the ABI tests!

I'm merging into @kupsch's callsite branch, not master. It's building on that work, and I don't want to rush the callsite work into master before it's ready.

@vsoch
Copy link
Contributor

vsoch commented Apr 5, 2022

ah ok. I don't think @hainest can give a proper review with the test suite in that case - any reason @kupsch can't update his branch to be in line with master?

@vsoch
Copy link
Contributor

vsoch commented Apr 5, 2022

@mplegendre if we are going to use this in Smeagle, could you provide some documentation for the functions that should be used and replaced?

@kupsch
Copy link
Contributor

kupsch commented Apr 5, 2022

@mplegendre, @vsoch there is now a branch kupsch/parse-callsites-preview-3 that is based on the tip of master. Rebase your branch to it, and the test problems should be fixed

@vsoch
Copy link
Contributor

vsoch commented Apr 5, 2022

woot! Thank you @kupsch !

@vsoch
Copy link
Contributor

vsoch commented Apr 5, 2022

@mplegendre the libabigail ABI tests are super baller you will like them.

@mplegendre mplegendre changed the base branch from kupsch/parse-callsites-preview-2 to kupsch/parse-callsites-preview-3 April 5, 2022 22:27
@mplegendre
Copy link
Contributor Author

I've rebased to parse-callsites-preview-3. That fixed the testsuite problems I was having.
A documentation commit will follow soon.

@vsoch
Copy link
Contributor

vsoch commented Apr 5, 2022

Tests are running here (I changed the recipe so they would! #1247)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DWARF Item is related to DWARF parsing ELF Relates to the handling of ELF data Symtab This issue is directly related to SymtabAPI
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants