public inbox for gdb-testers@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb] gdbserver/IPA: Export some functions via global function pointers.
@ 2016-03-30 22:29 sergiodj+buildbot
  2016-03-30 22:33 ` Failures on Debian-i686, branch master sergiodj+buildbot
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: sergiodj+buildbot @ 2016-03-30 22:29 UTC (permalink / raw)
  To: gdb-testers

*** TEST RESULTS FOR COMMIT 1cda1512689aabb36588a01370002632a0c8e560 ***

Author: Marcin Kocielnicki <koriakin@0x04.net>
Branch: master
Commit: 1cda1512689aabb36588a01370002632a0c8e560

gdbserver/IPA: Export some functions via global function pointers.

On powerpc64, qSymbol for a function returns the function code address,
and not the descriptor address.  Since we emit code calling gdb_collect
and some other functions, we need the descriptor (no way to know the
proper TOC address without it).  To get the descriptor address, make
global function pointer variables in the IPA pointing to the relevant
functions and read them instead of asking for them directly via qSymbol.

gdb/gdbserver/ChangeLog:

	* linux-aarch64-ipa.c: Rename gdb_agent_get_raw_reg to get_raw_reg.
	* linux-amd64-ipa.c: Likewise.
	* linux-i386-ipa.c: Likewise.
	* linux-s390-ipa.c: Likewise.
	* tracepoint.c: IPA-export gdb_collect_ptr instead of gdb_collect,
	ditto for get_raw_reg_ptr, get_trace_state_variable_value_ptr,
	set_trace_state_variable_value_ptr.
	(struct ipa_sym_addresses): Likewise.
	(symbol_list): Likewise.
	(install_fast_tracepoint): Dereference gdb_collect_ptr instead of
	accessing gdb_collect directly.
	(gdb_collect_ptr_type): New typedef.
	(get_raw_reg_ptr_type): New typedef.
	(get_trace_state_variable_value_ptr_type): New typedef.
	(set_trace_state_variable_value_ptr_type): New typedef.
	(gdb_collect_ptr): New global.
	(get_raw_reg_ptr): New global.
	(get_trace_state_variable_value_ptr): New global.
	(set_trace_state_variable_value_ptr): New global.
	(get_raw_reg_func_addr): Dereference get_raw_reg_ptr instead of
	accessing get_raw_reg directly.
	(get_get_tsv_func_addr): Likewise for
	get_trace_state_variable_value_ptr.
	(get_set_tsv_func_addr): Likewise for
	set_trace_state_variable_value_ptr.
	* tracepoint.h: Rename gdb_agent_get_raw_reg to get_raw_reg.


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-03-31  3:12 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-30 22:29 [binutils-gdb] gdbserver/IPA: Export some functions via global function pointers sergiodj+buildbot
2016-03-30 22:33 ` Failures on Debian-i686, branch master sergiodj+buildbot
2016-03-30 22:38 ` Failures on Fedora-x86_64-native-extended-gdbserver-m32, " sergiodj+buildbot
2016-03-30 23:48 ` Failures on AIX-POWER7-plain, " sergiodj+buildbot
2016-03-31  1:29 ` Failures on Fedora-x86_64-native-gdbserver-m32, " sergiodj+buildbot
2016-03-31  3:12 ` Failures on Fedora-ppc64be-native-extended-gdbserver-m64, " sergiodj+buildbot
2016-03-31  4:49 ` Failures on Fedora-ppc64le-native-extended-gdbserver-m64, " sergiodj+buildbot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).