Skip to content

Issues identifying symbols on segments other than the first one #9

Description

@AngheloAlf

flib may report the wrong address for symbols that are located on a segment after the first code segment (often referred to as boot).

This happens because flib doesn't account for segments not having contiguous vram addresses. This only happens when the code of a function is identified and the address of that function is calculated, getting symbol based on symbol references (relocations) doesn't seem to have this issue.
Because of this flib may report the same symbol twice with different addresses:

__MusIntMemInit, 0x80076360, 0x4C  (lib_memory, true)
__MusIntMemMalloc, 0x800763AC, 0x30  (lib_memory, true)

// ...

__MusIntMemInit, 0x8008F230, 0x0  (player, false)
__MusIntMemMalloc, 0x8008F27C, 0x0  (aud_dma, false)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions