From: "H.J. Lu" <hjl.tools@gmail.com>
To: Jeffrey Yasskin <jyasskin@google.com>
Cc: Ian Lance Taylor <iant@google.com>,
binutils@sourceware.org, Cary Coutant <ccoutant@google.com>
Subject: Re: [PATCH] Fix the ODR checker again
Date: Fri, 11 Mar 2011 18:43:00 -0000 [thread overview]
Message-ID: <AANLkTi=95yQf+R+j7Luc3XjrPEfi=2x2=3hC9ouQiTna@mail.gmail.com> (raw)
In-Reply-To: <AANLkTim99NWOxchFj-ceFaF59BT02QOp5BfCD1Uqp-Ay@mail.gmail.com>
On Wed, Mar 9, 2011 at 4:14 PM, Jeffrey Yasskin <jyasskin@google.com> wrote:
> gold/ChangeLog:
> 2011-03-03 Jeffrey Yasskin <jyasskin@google.com>
>
> * dwarf_reader.cc (Sized_dwarf_line_info): Include all lines,
> but mark earlier ones as non-canonical
> (offset_to_iterator): Update search target and example
> (do_addr2line): Return extra lines in a vector*
> (format_file_lineno): Extract from do_addr2line
> (one_addr2line): Add vector* out-param
> * dwarf_reader.h (Offset_to_lineno_entry): New field recording
> when a lineno entry appeared last for its instruction
> (Dwarf_line_info): Add vector* out-param
> * object.cc (Relocate_info): Pass NULL for the vector* out-param
> * symtab.cc (Odr_violation_compare): Include the lineno in the
> comparison again.
> (linenos_from_loc): New. Combine the canonical line for an
> address with its other lines.
> (True_if_intersect): New. Helper functor to make
> std::set_intersection a query.
> (detect_odr_violations): Compare sets of lines instead of just
> one line for each function. This became less deterministic, but
> has fewer false positives.
> * symtab.h: Declarations.
> * testsuite/Makefile.am (odr_violation2.o): Compile with -O2 to
> mix an optimized and non-optimized object in the same binary
> (odr_violation2.so): Same.
> * testsuite/Makefile.in: Regenerate from Makefile.am.
> * testsuite/debug_msg.cc (main):
> * testsuite/debug_msg.sh: Update line numbers and add
> assertions.
> * testsuite/odr_violation1.cc: Use OdrDerived, in a
> non-optimized context.
> * testsuite/odr_violation2.cc: Make sure Ordering::operator()
> isn't inlined, and use OdrDerived in an optimized context.
> * testsuite/odr_header1.h: Defines OdrDerived, where
> optimization will change the
> first-instruction-in-the-destructor's file and line number.
> * testsuite/odr_header2.h: Defines OdrBase.
>
It caused:
http://sourceware.org/bugzilla/show_bug.cgi?id=12572
--
H.J.
prev parent reply other threads:[~2011-03-11 18:43 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-08 0:38 Jeffrey Yasskin
2011-03-09 1:12 ` Ian Lance Taylor
2011-03-10 0:15 ` Jeffrey Yasskin
2011-03-10 0:25 ` Ian Lance Taylor
2011-03-11 18:43 ` H.J. Lu [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='AANLkTi=95yQf+R+j7Luc3XjrPEfi=2x2=3hC9ouQiTna@mail.gmail.com' \
--to=hjl.tools@gmail.com \
--cc=binutils@sourceware.org \
--cc=ccoutant@google.com \
--cc=iant@google.com \
--cc=jyasskin@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).