From 2413637c34d38c843c41386f616bc5478cf773ff Mon Sep 17 00:00:00 2001 From: roland Date: Thu, 11 Aug 2005 04:27:29 +0000 Subject: 2005-08-10 Roland McGrath * loc2c.c (emit_base_store): New function. (emit_bitfield): Rewritten to handle stores, change parameters. (c_translate_fetch): Update caller. (c_translate_store): New function. * loc2c.h: Declare it. * loc2c-test.c (handle_variable): Grok "=" last argument to do a store. --- loc2c.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'loc2c.h') diff --git a/loc2c.h b/loc2c.h index 75467010..af681bad 100644 --- a/loc2c.h +++ b/loc2c.h @@ -47,13 +47,21 @@ void c_translate_addressof (struct obstack *pool, int indent, struct location **input, const char *target); /* Translate a fragment to fetch the value of variable or member DIE - at the *INPUT location and store it in variable TARGET. + at the *INPUT location and store it in lvalue TARGET. This handles base integer types and bit fields. */ void c_translate_fetch (struct obstack *pool, int indent, Dwarf_Addr dwbias __attribute__ ((unused)), Dwarf_Die *die, Dwarf_Attribute *typeattr, struct location **input, const char *target); +/* Translate a fragment to locate the value of variable or member DIE + at the *INPUT location and set it to the C expression RVALUE. + This handles base integer types and bit fields. */ +void c_translate_store (struct obstack *pool, int indent, + Dwarf_Addr dwbias __attribute__ ((unused)), + Dwarf_Die *die, Dwarf_Attribute *typeattr, + struct location **input, const char *rvalue); + /* Emit the C fragment built up at LOC (i.e., the return value from the first c_translate_location call made). INDENT should match that passed to c_translate_* previously. -- cgit