This website requires JavaScript.
Explore
Help
Sign In
OpenE2K
/
glibc
Watch
2
Star
0
Fork
You've already forked glibc
0
Code
Issues
Pull Requests
Projects
Releases
Wiki
Activity
7ec5f9465e
glibc
/
gmon
/
tst-gmon-pie.c
2 lines
22 B
C
Raw
Normal View
History
Unescape
Escape
Support profiling PIE [BZ #22284] Since PIE can be loaded at any address, we need to subtract load address from PCs. [BZ #22284] * gmon/Makefile [$(have-fpie)$(build-shared) == yesyes] (tests, tests-pie): Add tst-gmon-pie. (CFLAGS-tst-gmon-pie.c): New. (CRT-tst-gmon-pie): Likewise. (tst-gmon-pie-ENV): Likewise. [$(have-fpie)$(build-shared) == yesyes] (tests-special): Likewise. ($(objpfx)tst-gmon-pie.out): Likewise. (clean-tst-gmon-pie-data): Likewise. ($(objpfx)tst-gmon-pie-gprof.out): Likewise. * gmon/gmon.c [PIC]: Include <link.h>. [PIC] (callback): New function. (write_hist): Add an argument for load address. Subtract load address from PCs. (write_call_graph): Likewise. (write_gmon): Call __dl_iterate_phdr to get load address, pass it to write_hist and write_call_graph. Reviewed-by: Carlos O'Donell <carlos@redhat.com>
2017-10-12 12:45:55 +02:00
#
include
"tst-gmon.c"