title: Why gcov will cause program crash?
body: <p>I am using the <code>gcov</code> to test my program (add "<code>-fprofile-arcs -ftest-coverage</code>") on <code>Linux</code>, but the program will crash after start:  </p>
  
  <pre><code>(gdb) bt
  #0  0x00000034e433386f in __strlen_sse42 () from /lib64/libc.so.6
  #1  0x000000000053c57a in __gcov_init ()
  #2  0x000000000053c4b9 in _GLOBAL__I_65535_0_g_st_rerun_cmd_param ()
      at source/rerun/aicent_ara_rerun.c:963
  #3  0x000000000053dc26 in __do_global_ctors_aux ()
  #4  0x0000000000403743 in _init ()
  #5  0x00007fff6d6b3ce8 in ?? ()
  #6  0x000000000053db55 in __libc_csu_init ()
  #7  0x00000034e421ecb0 in __libc_start_main () from /lib64/libc.so.6
  #8  0x0000000000404449 in _start ()
  </code></pre>
  
  <p>From __gcov_init() source (<a href="http://www.coreboot.org/~stepan/coreboot-coverage/lib/libgcov.c.gcov.html" rel="nofollow">http://www.coreboot.org/~stepan/coreboot-coverage/lib/libgcov.c.gcov.html</a>) , </p>
  
  <pre><code>......
  size_t filename_length = strlen(info-&gt;filename);
  ......
  </code></pre>
  
  <p>I can see the root cause is the "<code>info-&gt;filename</code>" is invalid (After disassembling the code, the address is <code>0x57c4ac00000000</code>, and it is indeed invalid).</p>
  
  <p>I don't know how to analyse this bug, could anyone give any clues? Thanks very much in advance!</p>
  
  <p>P.S. My <code>Linux</code> environment:  </p>
  
  <pre><code>[root@localhost rel_1_3_3_20140902]# uname -a
  Linux localhost.localdomain 2.6.32-431.el6.x86_64 #1 SMP Sun Nov 10 22:19:54 EST 2013 x86_64 x86_64 x86_64 GNU/Linux
  </code></pre>
  
  <p><code>gcc</code> version:  </p>
  
  <pre><code>[root@localhost rel_1_3_3_20140902]# gcc -v
  Using built-in specs.
  Target: x86_64-redhat-linux
  Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
  Thread model: posix
  gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC)
  </code></pre>