Skip to content

Commit

Permalink
Ensure proc-service symbols have default visibility (PR build/24805)
Browse files Browse the repository at this point in the history
Compiling GDB with '-fvisibility=hidden' removes the symbols that
should be exported.

This patch explicitly marks them as visible.

gdb/ChangeLog:
2020-01-16  Pedro Alves  <[email protected]>
            Norbert Lange  <[email protected]>

	PR build/24805
	* gdbsupport/gdb_proc_service.h (PS_EXPORT): New.
	(ps_get_thread_area, ps_getpid, ps_lcontinue, ps_lgetfpregs)
	(ps_lgetregs, ps_lsetfpregs, ps_lsetregs, ps_lstop, ps_pcontinue)
	(ps_pdread, ps_pdwrite, ps_pglobal_lookup, ps_pstop, ps_ptread)
	(ps_ptwrite, ps_lgetxregs, ps_lgetxregsize, ps_lsetxregs)
	(ps_plog): Redeclare exported functions with default visibility.
  • Loading branch information
palves committed Jan 16, 2020
1 parent 701adfb commit 790f171
Show file tree
Hide file tree
Showing 2 changed files with 40 additions and 0 deletions.
11 changes: 11 additions & 0 deletions gdb/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
2020-01-16 Pedro Alves <[email protected]>
Norbert Lange <[email protected]>

PR build/24805
* gdbsupport/gdb_proc_service.h (PS_EXPORT): New.
(ps_get_thread_area, ps_getpid, ps_lcontinue, ps_lgetfpregs)
(ps_lgetregs, ps_lsetfpregs, ps_lsetregs, ps_lstop, ps_pcontinue)
(ps_pdread, ps_pdwrite, ps_pglobal_lookup, ps_pstop, ps_ptread)
(ps_ptwrite, ps_lgetxregs, ps_lgetxregsize, ps_lsetxregs)
(ps_plog): Redeclare exported functions with default visibility.

2020-01-16 Nitika Achra <[email protected]>

* dwarf2loc.c (decode_debug_loclists_addresses): Handle
Expand Down
29 changes: 29 additions & 0 deletions gdbsupport/gdb_proc_service.h
Original file line number Diff line number Diff line change
Expand Up @@ -170,4 +170,33 @@ EXTERN_C_POP

#endif /* HAVE_PROC_SERVICE_H */

/* Make sure we export the needed symbols, in case GDB is built with
-fvisibility=hidden. */

#define PS_EXPORT(SYM) \
__attribute__((visibility ("default"))) typeof (SYM) SYM

PS_EXPORT (ps_get_thread_area);
PS_EXPORT (ps_getpid);
PS_EXPORT (ps_lcontinue);
PS_EXPORT (ps_lgetfpregs);
PS_EXPORT (ps_lgetregs);
PS_EXPORT (ps_lsetfpregs);
PS_EXPORT (ps_lsetregs);
PS_EXPORT (ps_lstop);
PS_EXPORT (ps_pcontinue);
PS_EXPORT (ps_pdread);
PS_EXPORT (ps_pdwrite);
PS_EXPORT (ps_pglobal_lookup);
PS_EXPORT (ps_pstop);
PS_EXPORT (ps_ptread);
PS_EXPORT (ps_ptwrite);

#ifdef __sun__
PS_EXPORT (ps_lgetxregs);
PS_EXPORT (ps_lgetxregsize);
PS_EXPORT (ps_lsetxregs);
PS_EXPORT (ps_plog);
#endif

#endif /* COMMON_GDB_PROC_SERVICE_H */

0 comments on commit 790f171

Please sign in to comment.