diff options
author | Pierre-Marie de Rodat <derodat@adacore.com> | 2016-08-18 14:39:22 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2016-08-18 14:39:22 +0000 |
commit | 80c5ad359f30c86d48a04c080785606a2701ab71 (patch) | |
tree | e55edc4fa8fd327e421894c2c5b542df4808abf6 /libcpp/errors.c | |
parent | 0b224dcf60dd8bd401501178f6118b8455ceeb1f (diff) | |
download | gcc-80c5ad359f30c86d48a04c080785606a2701ab71.zip gcc-80c5ad359f30c86d48a04c080785606a2701ab71.tar.gz gcc-80c5ad359f30c86d48a04c080785606a2701ab71.tar.bz2 |
DWARF: do not emit DW_TAG_variable to materialize DWARF procedures
Hello,
For -gdwarf-3 and newer, the DWARF back-end sometimes generates DWARF
procedures to factorize complex location descriptions. DWARF procedures
can be materialized as DW_TAG_dwarf_procedure DIEs, but actually any DIE
that can hold a DW_AT_location attribute is also accepted.
Unlike what I thought at some point, the DW_TAG_dwarf_procedure tag was
introduced in the DWARFv3 standard, not the DWARFv4 one, so the back-end
can always emit DW_TAG_dwarf_procedure DIEs, as this simplifies code and
prevents the types pruning pass from missing a DWARF procedure.
Boostrapped and regtested on x86_64-linux: no regression. Ok to commit?
Thank you in advance!
gcc/
* dwarf2out.c (copy_dwarf_procedure): Remove obsolete comment.
(new_dwarf_proc_die): Emit DW_TAG_dwarf_procedure DIEs even for
-gdwarf-3.
(function_to_dwarf_procedure): Update comment.
From-SVN: r239575
Diffstat (limited to 'libcpp/errors.c')
0 files changed, 0 insertions, 0 deletions