diff options
author | Daniel Jacobowitz <dan@debian.org> | 2006-10-10 03:17:53 +0000 |
---|---|---|
committer | Daniel Jacobowitz <dan@debian.org> | 2006-10-10 03:17:53 +0000 |
commit | e87e493d73ddf98635afb81422f0c56bbff0957a (patch) | |
tree | 1b89f2b13a903dbce0d895cbbd63d0d09e47e070 /gdb/expression.h | |
parent | 9882179dac6a75ec376faa67e92b5cf269232438 (diff) | |
download | gdb-e87e493d73ddf98635afb81422f0c56bbff0957a.tar.gz |
2006-10-09 Jan Kratochvil <jan.kratochvil@redhat.com>
Daniel Jacobowitz <dan@codesourcery.com>
* Makefile.in (expprint.o, parse.o, target.o): Update.
* dwarf2loc.c (dwarf_expr_tls_address): Move body to
target_translate_tls_address. Call it.
* eval.c (evaluate_subexp_standard): Handle UNOP_MEMVAL_TLS.
* expprint.c (print_subexp_standard): Likewise.
(op_name_standard, dump_subexp_body_standard): Likewise.
* expression.h (enum exp_opcode): Add UNOP_MEMVAL_TLS.
(union exp_element): Add objfile.
* parse.c (write_exp_elt_objfile): New function.
(msym_tls_symbol_type): New.
(write_exp_msymbol): Handle TLS.
(operator_length_standard): Handle UNOP_MEMVAL_TLS.
(build_parse): Initialize msym_tls_symbol_type.
* parser-defs.h (write_exp_elt_objfile): New prototype.
* target.c (target_translate_tls_address): New.
* target.h (target_translate_tls_address): Add prototype.
2006-10-09 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.threads/tls-nodebug.c, gdb.threads/tls-nodebug.exp: New test.
Diffstat (limited to 'gdb/expression.h')
-rw-r--r-- | gdb/expression.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gdb/expression.h b/gdb/expression.h index dd6184a171f..4d9205d7d85 100644 --- a/gdb/expression.h +++ b/gdb/expression.h @@ -234,6 +234,13 @@ enum exp_opcode following subexpression. */ UNOP_MEMVAL, + /* UNOP_MEMVAL_TLS is followed by a `struct objfile' pointer in the next + exp_element and a type pointer in the following exp_element. + With another UNOP_MEMVAL_TLS at the end, this makes four exp_elements. + It casts the contents of the word offsetted by the value of the + following subexpression from the TLS specified by `struct objfile'. */ + UNOP_MEMVAL_TLS, + /* UNOP_... operate on one value from a following subexpression and replace it with a result. They take no immediate arguments. */ @@ -360,6 +367,7 @@ union exp_element struct type *type; struct internalvar *internalvar; struct block *block; + struct objfile *objfile; }; struct expression |