summaryrefslogtreecommitdiffstats
path: root/tests/addrcfi.c
Commit message (Collapse)AuthorAgeFilesLines
* libdw: dwarf_frame_register takes an array of at least 3 Dwarf_OpsMark Wielaard2020-10-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | GCC11 will warn about a mismatch in the declaration of dwarf_frame_register: dwarf_frame_register.c:37:61: error: argument 3 of type ‘Dwarf_Op *’ declared as a pointer [-Werror=array-parameter=] 37 | dwarf_frame_register (Dwarf_Frame *fs, int regno, Dwarf_Op *ops_mem, | ~~~~~~~~~~^~~~~~~ libdw.h:1068:43: note: previously declared as an array ‘Dwarf_Op[3]’ 1068 | Dwarf_Op ops_mem[3], | ~~~~~~~~~^~~~~~~~~~ When fixing that it will show an actual bug in the addrcfi testcase: addrcfi.c:98:16: error: ‘dwarf_frame_register’ accessing 96 bytes in a region of size 64 [-Werror=stringop-overflow=] 98 | int result = dwarf_frame_register (stuff->frame, regno, ops_mem, &ops, &nops); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ addrcfi.c:98:16: note: referencing argument 3 of type ‘Dwarf_Op *’ 1069 | extern int dwarf_frame_register (Dwarf_Frame *frame, int regno, | ^~~~~~~~~~~~~~~~~~~~ Fix the declaration, fix the bug and add an extra comment to the description in libdw.h. Signed-off-by: Mark Wielaard <[email protected]>
* tests: Fix some memory leaks in testcases.Mark Wielaard2016-01-021-4/+13
| | | | | | | Make sure all structures allocated in the testcases are disposed so running them under valgrind will show no memory leaks. Signed-off-by: Mark Wielaard <[email protected]>
* Publish known-dwarf.hPetr Machata2015-03-311-6/+4
| | | | | | | | | | | | | - Make the macro names properly scoped (DWARF_ALL_KNOWN_* and DWARF_ONE_KNOWN_*). - Simplify the calling convention: don't keep track of the comment associated with the enumerator, always use the non-_DESC DWARF_ONE_KNOWN_* callback. - Install known-dwarf.h alongside libdw.h and others. Signed-off-by: Petr Machata <[email protected]>
* tests: Add s390 and s390x addrcfi testcases.Mark Wielaard2013-09-031-0/+6
| | | | Signed-off-by: Mark Wielaard <[email protected]>
* tests: Add ppc32 and ppc64 addrcfi testcases.Mark Wielaard2013-09-031-2/+1
| | | | Signed-off-by: Mark Wielaard <[email protected]>
* tests: Add run-addrcfi.sh test for libdw cfi dwarf_frame_* functions.Mark Wielaard2013-09-021-4/+26
| | | | | | | | | | | | | | | | | We require architecture backends to implement the ebl abi_cfi hook to provide the ABI's default CFI program as used by the libdw dwarf cfi functions. There is the addrcfi test program that prints the return address, cfa location expression and register states as returned by various dwarf_cfi_* and dwarf_frame functions. But that has to be run by hand. The new run-addrcfi.sh tests hooks addrcfi up to some existing architecture specific test files and known addresses to more easily (and automaticly) check that the default CFI program is implemented correctly and to test the libdw cfi frame info functionality. Only i386 and x86_64 are tested for now since other backends don't have the abi_cfi hook yet. Signed-off-by: Mark Wielaard <[email protected]>
* Update name, license and contributor policy.Mark Wielaard2012-06-051-19/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Change name from "Red Hat elfutils" to "elfutils". * Update license of standalone tools and test from GPLv2 to GPLv3+. * Change license of libraries from GPLv2+exception to GPLv2/LGPLv3+. * Add Developer Certificate of Origin based contributor policy. top-level: - COPYING: Upgraded from GPLv2 to GPLv3. - CONTRIBUTING, COPYING-GPLv2, COPYING-LGPLv3: New files. - NEWS: Added note about new contribution and license policy. - Makefile.am: Updated to GPLv3, added new files to EXTRA_DIST. - configure.ac: Update to GPLv3, changed AC_INIT name to 'elfutils'. backends, lib, libasm, libcpu, libdw, libdwfl, libebl, libelf: - All files updated to GPLv2/LGPLv3+. Except some very small files (<5 lines) which didn't have any headers at all before, the linker .maps files and the libcpu/defs files which only contain data and libelf/elf.h which comes from glibc and is under LGPLv2+. config: - elfutils.spec.in: Add new License: headers and new %doc files. - Update all license headers to GPLv2/LGPLv3+ for files used by libs. src, tests: - All files updated to GPLv3+. Except for the test bz2 data files, the linker maps and script files and some very small files (<5 lines) that don't have any headers. Signed-off-by: Richard Fontana <[email protected]> Signed-off-by: Mark Wielaard <[email protected]>
* Fix tests/addrcfi error reporting.Roland McGrath2010-04-221-2/+2
|
* Rejigger calling conventions for dwarf_frame_{cfa,register}.Roland McGrath2009-07-221-2/+3
|
* CFI support: lookup by PC and translate into DWARF location per registerRoland McGrath2009-07-081-0/+206