diff options
author | Jan Kratochvil <jan.kratochvil@redhat.com> | 2015-02-26 17:40:57 +0100 |
---|---|---|
committer | Jan Kratochvil <jan.kratochvil@redhat.com> | 2015-02-26 17:40:57 +0100 |
commit | 081a1c2cede38dfb837e3d89539416fd836be4fe (patch) | |
tree | 21501b9edc44ff08b4d2e7647d94dc3df1230f57 /gdb/ChangeLog | |
parent | 2f41223f62de5d893bd6a4bd832293c2c3e80d91 (diff) | |
download | gdb-081a1c2cede38dfb837e3d89539416fd836be4fe.zip gdb-081a1c2cede38dfb837e3d89539416fd836be4fe.tar.gz gdb-081a1c2cede38dfb837e3d89539416fd836be4fe.tar.bz2 |
compile: Fix GNU-IFUNC funcs called from injected code
One could not call IFUNCs (=indirect functions) from the compiled injected
code. Either it errored with:
gdb command line:1:1: error: function return type cannot be function
or it just called the IFUNC dispatcher in normal way, returning real function
implementation address instead of the function return value (and thus no
function was called).
gdb/ChangeLog
2015-02-26 Jan Kratochvil <jan.kratochvil@redhat.com>
* compile/compile-c-symbols.c (convert_one_symbol, convert_symbol_bmsym)
(gcc_symbol_address): Call gnu_ifunc_resolve_addr.
gdb/testsuite/ChangeLog
2015-02-26 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.compile/compile-ifunc.c: New file.
* gdb.compile/compile-ifunc.exp: New file.
Diffstat (limited to 'gdb/ChangeLog')
-rw-r--r-- | gdb/ChangeLog | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 5c4138e..3b21d8c 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2015-02-26 Jan Kratochvil <jan.kratochvil@redhat.com> + + * compile/compile-c-symbols.c (convert_one_symbol, convert_symbol_bmsym) + (gcc_symbol_address): Call gnu_ifunc_resolve_addr. + 2015-02-26 Antoine Tremblay <antoine.tremblay@ericsson.com> * gdb/infcmd.c (print_return_value): use type_to_string to print type. |