public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jan Hubicka <hubicka@ucw.cz>
To: Markus Trippelsdorf <markus@trippelsdorf.de>
Cc: Jan Hubicka <hubicka@ucw.cz>,
	gcc-patches@gcc.gnu.org, mliska@suse.cz,	jakub@redhat.com
Subject: Re: ipa-icf::merge TLC
Date: Wed, 25 Feb 2015 17:31:00 -0000	[thread overview]
Message-ID: <20150225171532.GA27368@kam.mff.cuni.cz> (raw)
In-Reply-To: <20150225130102.GC342@x4>

> On 2015.02.25 at 09:38 +0100, Jan Hubicka wrote:
> > this patch reorganize sem_function::merge and sem_variable::merge.
> > I read the code in detail and found several issues that are fixed in the
> > following patch.
> 
> I gave your patch a quick spin. It breaks Chromium. Its protocol buffer
> compiler gets miscompiled:

I see (I remember running into simiarly looking ICE last time I tried Chromium).
Is there any chance you can look into what gets wrong?  I added enough of sanity checking
code so I do not see how merging itself can lead to wrong codes without ICEing,
but the patch makes considerably more merging to happen (old code had bug where it
tried to merge but didn't), so we may run into another previously latent issue.
Martin has 3 correctness ipa-icf patches in a way, so perhaps one of them ;)

Honza
> 
>  RULE Generating C++ and Python code from copresence/proto/enums.proto
> FAILED: cd ../../components; python ../tools/protoc_wrapper/protoc_wrapper.py --include "" --protobuf "../out/Release/gen/protoc_out/components/copresence/proto/enums.pb.h" -
> -proto-in-dir copresence/proto --proto-in-file "enums.proto" "--use-system-protobuf=0" -- ../out/Release/protoc --cpp_out ../out/Release/gen/protoc_out/components/copresence/
> proto --python_out ../out/Release/pyproto/components/copresence/proto
> *** Error in `../out/Release/protoc': double free or corruption (out): 0x00007ffd966468b0 ***
> ======= Backtrace: =========
> /lib/libc.so.6(+0x7265e)[0x7fe09058065e]
> /lib/libc.so.6(+0x77f1d)[0x7fe090585f1d]
> /lib/libc.so.6(+0x7874b)[0x7fe09058674b]
> ../out/Release/protoc[0x45f5e1]
> ../out/Release/protoc[0x462caf]
> ../out/Release/protoc[0x462d1c]
> ../out/Release/protoc[0x46685c]
> ../out/Release/protoc[0x4677d5]
> ../out/Release/protoc[0x4679c3]
> ../out/Release/protoc[0x467b15]
> ../out/Release/protoc[0x479d89]
> ../out/Release/protoc[0x4aa058]
> ../out/Release/protoc[0x4aa0af]
> ../out/Release/protoc[0x46b217]
> ../out/Release/protoc[0x4a4832]
> ../out/Release/protoc[0x4a86cf]
> ../out/Release/protoc[0x4a890e]
> ../out/Release/protoc[0x4a0827]
> ../out/Release/protoc[0x4678fd]
> ../out/Release/protoc[0x467b15]
> ../out/Release/protoc[0x40c926]
> ../out/Release/protoc[0x403131]
> /lib/libc.so.6(__libc_start_main+0xf0)[0x7fe09052e6d0]
> ../out/Release/protoc[0x4037f9]
> ======= Memory map: ========
> 00400000-004eb000 r-xp 00000000 00:13 36244132                           /var/tmp/chromium/src/out/Release/protoc
> 004ec000-004ef000 r--p 000eb000 00:13 36244132                           /var/tmp/chromium/src/out/Release/protoc
> 004ef000-004f0000 rw-p 000ee000 00:13 36244132                           /var/tmp/chromium/src/out/Release/protoc
> 01ab0000-01b03000 rw-p 00000000 00:00 0                                  [heap]
> 7fe09027f000-7fe09030d000 r-xp 00000000 00:0f 2540736                    /lib64/libm-2.21.90.so
> 7fe09030d000-7fe09050c000 ---p 0008e000 00:0f 2540736                    /lib64/libm-2.21.90.so
> 7fe09050c000-7fe09050d000 r--p 0008d000 00:0f 2540736                    /lib64/libm-2.21.90.so
> 7fe09050d000-7fe09050e000 rw-p 0008e000 00:0f 2540736                    /lib64/libm-2.21.90.so
> 7fe09050e000-7fe09066e000 r-xp 00000000 00:0f 2541268                    /lib64/libc-2.21.90.so
> 7fe09066e000-7fe09086d000 ---p 00160000 00:0f 2541268                    /lib64/libc-2.21.90.so
> 7fe09086d000-7fe090871000 r--p 0015f000 00:0f 2541268                    /lib64/libc-2.21.90.so
> 7fe090871000-7fe090873000 rw-p 00163000 00:0f 2541268                    /lib64/libc-2.21.90.so
> 7fe090873000-7fe090877000 rw-p 00000000 00:00 0 
> 7fe090877000-7fe09088f000 r-xp 00000000 00:0f 2541131                    /lib64/libpthread-2.21.90.so
> 7fe09088f000-7fe090a8e000 ---p 00018000 00:0f 2541131                    /lib64/libpthread-2.21.90.so
> 7fe090a8e000-7fe090a8f000 r--p 00017000 00:0f 2541131                    /lib64/libpthread-2.21.90.so
> 7fe090a8f000-7fe090a90000 rw-p 00018000 00:0f 2541131                    /lib64/libpthread-2.21.90.so
> 7fe090a90000-7fe090a94000 rw-p 00000000 00:00 0 
> 7fe090a94000-7fe090ab6000 r-xp 00000000 00:0f 2541267                    /lib64/ld-2.21.90.so
> 7fe090ad2000-7fe090ad7000 rw-p 00000000 00:00 0 
> 7fe090ad7000-7fe090aee000 r-xp 00000000 00:0f 72800                      /lib64/libgcc_s.so.1
> 7fe090aee000-7fe090aef000 rw-p 00016000 00:0f 72800                      /lib64/libgcc_s.so.1
> 7fe090aef000-7fe090af0000 rw-p 00000000 00:00 0 
> 7fe090af0000-7fe090c7b000 r-xp 00000000 00:0f 3018239                    /usr/lib64/gcc/x86_64-pc-linux-gnu/5.0.0/libstdc++.so.6.0.21
> 7fe090c7b000-7fe090c7c000 ---p 0018b000 00:0f 3018239                    /usr/lib64/gcc/x86_64-pc-linux-gnu/5.0.0/libstdc++.so.6.0.21
> 7fe090c7c000-7fe090c86000 r--p 0018b000 00:0f 3018239                    /usr/lib64/gcc/x86_64-pc-linux-gnu/5.0.0/libstdc++.so.6.0.21
> 7fe090c86000-7fe090c8a000 rw-p 00195000 00:0f 3018239                    /usr/lib64/gcc/x86_64-pc-linux-gnu/5.0.0/libstdc++.so.6.0.21
> 7fe090c8a000-7fe090c8d000 rw-p 00000000 00:00 0 
> 7fe090cb3000-7fe090cb5000 rw-p 00000000 00:00 0 
> 7fe090cb5000-7fe090cb6000 r--p 00021000 00:0f 2541267                    /lib64/ld-2.21.90.so
> 7fe090cb6000-7fe090cb7000 rw-p 00022000 00:0f 2541267                    /lib64/ld-2.21.90.so
> 7fe090cb7000-7fe090cb8000 rw-p 00000000 00:00 0 
> 7ffd96628000-7ffd96649000 rw-p 00000000 00:00 0                          [stack]
> 7ffd967e4000-7ffd967e6000 r--p 00000000 00:00 0                          [vvar]
> 7ffd967e6000-7ffd967e8000 r-xp 00000000 00:00 0                          [vdso]
> ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                  [vsyscall]
> 
> -- 
> Markus

  reply	other threads:[~2015-02-25 17:15 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-25  9:03 Jan Hubicka
2015-02-25 13:10 ` Markus Trippelsdorf
2015-02-25 17:31   ` Jan Hubicka [this message]
2015-02-25 18:41     ` Martin Liška
2015-02-25 19:02       ` Markus Trippelsdorf
2015-02-26 16:46 ` Jack Howarth
2015-02-27  5:55   ` Jan Hubicka
2015-02-27 13:48     ` H.J. Lu
2015-02-27 18:04       ` Jan Hubicka
2015-02-27 18:39     ` Steve Ellcey
2015-02-27 18:56       ` Steve Ellcey
2015-02-27 20:00         ` Martin Liška
2015-02-27 21:16       ` Jan Hubicka
2015-03-01 16:47         ` Christophe Lyon
2015-03-02 19:01           ` Alex Velenko
2015-03-02 20:21             ` Jan Hubicka
2015-03-02 22:04               ` Christophe Lyon
2015-03-03 12:44                 ` Alex Velenko
2015-03-03 15:06                   ` Christophe Lyon
2015-03-03 20:01                     ` Jan Hubicka
2015-03-04  9:11                       ` Christophe Lyon
2015-02-28 16:38     ` James Greenhalgh
2015-02-28 18:15       ` Jan Hubicka
2015-03-04  9:38         ` James Greenhalgh
2015-03-06 16:09           ` [ARM testsuite obvious] Fixup atomic-comp-swap-release-acquire.c to not use ICF James Greenhalgh
2015-03-06 16:13             ` James Greenhalgh

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=20150225171532.GA27368@kam.mff.cuni.cz \
    --to=hubicka@ucw.cz \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=jakub@redhat.com \
    --cc=markus@trippelsdorf.de \
    --cc=mliska@suse.cz \
    /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).