equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
43 public: |
43 public: |
44 ElfSymbolTable(FILE* file, Elf_Shdr shdr); |
44 ElfSymbolTable(FILE* file, Elf_Shdr shdr); |
45 ~ElfSymbolTable(); |
45 ~ElfSymbolTable(); |
46 |
46 |
47 // search the symbol that is nearest to the specified address. |
47 // search the symbol that is nearest to the specified address. |
48 bool lookup(address addr, int* stringtableIndex, int* posIndex, int* offset); |
48 bool lookup(address addr, int* stringtableIndex, int* posIndex, int* offset, ElfFuncDescTable* funcDescTable); |
49 |
49 |
50 NullDecoder::decoder_status get_status() { return m_status; }; |
50 NullDecoder::decoder_status get_status() { return m_status; }; |
51 |
51 |
52 protected: |
52 protected: |
53 ElfSymbolTable* m_next; |
53 ElfSymbolTable* m_next; |
63 Elf_Shdr m_shdr; |
63 Elf_Shdr m_shdr; |
64 |
64 |
65 NullDecoder::decoder_status m_status; |
65 NullDecoder::decoder_status m_status; |
66 }; |
66 }; |
67 |
67 |
68 #endif // _WINDOWS and _APPLE |
68 #endif // !_WINDOWS and !__APPLE__ |
69 |
69 |
70 #endif // SHARE_VM_UTILITIES_ELF_SYMBOL_TABLE_HPP |
70 #endif // SHARE_VM_UTILITIES_ELF_SYMBOL_TABLE_HPP |