libabigail/tests
Dodji Seketeli d08e5181f2 Support TLS variables
* src/abg-ir.cc (elf_symbol::is_variable): Accept TLS objects as
	variables too.
	* src/abg-dwarf-reader.cc (eval_last_constant_dwarf_sub_expr)
	(die_location_address): Add an output parameter to say if the
	resulting constant value is a tls address or not.
	(lookup_public_variable_symbol_from_elf): Use the proper
	elf_symbol::is_variable() method, rather than trying to figure out
	the low levels of what a variable is here.  Also, cleanup the
	condition.
	(read_context::load_symbol_maps): Consider symbols of type
	STT_TLS, when loading symbols for variables.  Also, to avoir
	symbols that are for versions, filter out symbols of type
	STT_OBJECT and with a SHN_ABS section index.
	(read_context::get_variable_address): If the address is for a tls
	variable, do no try to adjust the address to arrange for things
	like prelink.  As that doesn't seem to affect TLS variables.
	(dwarf_expr_eval_context::set_tls_addr): New data member.
	(dwarf_expr_eval_context::dwarf_expr_eval_context): Initialize it.
	(dwarf_expr_eval_context::set_tls_address): New accessors.
	(dwarf_expr_eval_context::op_manipulates_stack): Handle
	DW_OP_GNU_push_tls_address, a bit like DW_OP_form_tls_address, but
	then, its result is a constant.  Set the
	dwarf_expr_eval_context::set_tls_addr flag when these two OPs are
	run.
	(die_member_offset): Adjust to the new signature of
	eval_last_constant_dwarf_sub_expr.
	* tests/data/test-diff-dwarf/libtest9-v0.so: New test input.
	* tests/data/test-diff-dwarf/libtest9-v1.so: Likewise.
	* tests/data/test-diff-dwarf/test9-report.txt: Likewise
	* tests/data/test-diff-dwarf/test9-v0.cc: Source code for the
	first input.
	* tests/data/test-diff-dwarf/test9-v1.cc: Source code for the
	second input.
	* tests/test-diff-dwarf.cc: Run this harness on the two new inputs
	above.
	* tests/Makefile.am: Add the new inputs to the source distribution.

Signed-off-by: Dodji Seketeli <dodji@redhat.com>
2014-08-19 13:50:23 +02:00
..
data Support TLS variables 2014-08-19 13:50:23 +02:00
Makefile.am Support TLS variables 2014-08-19 13:50:23 +02:00
test-alt-dwarf-file.cc Support alternate debug info sections 2014-08-15 18:27:04 +02:00
test-bidiff.cc Fixlets in the bidiff regression testing harness 2014-03-27 13:01:17 +01:00
test-core-diff.cc Fix further reaching reverse path calculation in core diff algo 2014-02-10 15:51:09 +01:00
test-diff2.cc Re-write middle snakes management in core diff algorithms 2013-11-19 11:25:47 +01:00
test-diff-dwarf.cc Support TLS variables 2014-08-19 13:50:23 +02:00
test-diff-filter.cc Avoid reporting diff nodes that have already been reported 2014-06-23 13:43:42 +02:00
test-dot.cc Correct DOT merge. 2013-07-23 23:13:55 +02:00
test-ir-walker.cc Rename test-walker.cc into test-ir-walker.cc 2014-03-27 13:01:17 +01:00
test-lookup-syms.cc White space fix 2014-08-15 18:28:22 +02:00
test-read-dwarf.cc Consider symbols with STB_GNU_UNIQUE binding as public 2014-07-08 14:18:36 +02:00
test-read-write.cc Add comment to test-read-write.cc 2014-07-01 09:42:25 +02:00
test-svg.cc Add svg generation. 2013-07-23 23:13:54 +02:00
test-utils.cc Initial version of an archive manipulation program: biar 2013-08-29 17:08:47 +02:00
test-utils.h Initial version of an archive manipulation program: biar 2013-08-29 17:08:47 +02:00
test-write-read-archive.cc Add a symbol database to the ABI Corpus & support symbol aliases 2014-05-28 16:33:35 +02:00