]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
On ppc, add generic_start_main.isra.0 as a below main function
authorPhilippe Waroquiers <philippe.waroquiers@skynet.be>
Sat, 23 Sep 2017 11:49:05 +0000 (13:49 +0200)
committerPhilippe Waroquiers <philippe.waroquiers@skynet.be>
Sat, 23 Sep 2017 11:49:05 +0000 (13:49 +0200)
We can have stacktraces such as:
==41840==    by 0x10000927: a1 (deep.c:27)
==41840==    by 0x1000096F: main (deep.c:35)
==41840==    by 0x4126BEB: generic_start_main.isra.0 (in /usr/lib64/libc-2.17.so)
==41840==    by 0x4126E13: __libc_start_main (in /usr/lib64/libc-2.17.so)

So, add generic_start_main.isra.0 as a below main function.
This fixes the test  massif/tests/deep-D

coregrind/m_debuginfo/debuginfo.c

index e01f19a7cb1c300af236bc8bf306074d155cd603..3817ecfe4ed768e06d4a257096859efc5594f6ba 100644 (file)
@@ -1987,6 +1987,9 @@ Vg_FnNameKind VG_(get_fnname_kind) ( const HChar* name )
 #      if defined(VGO_linux)
        VG_STREQ("__libc_start_main",  name) ||  // glibc glibness
        VG_STREQ("generic_start_main", name) ||  // Yellow Dog doggedness
+#      if defined(VGA_ppc32) || defined(VGA_ppc64be) || defined(VGA_ppc64le)
+       VG_STREQ("generic_start_main.isra.0", name) || // ppc glibness
+#      endif
 #      elif defined(VGO_darwin)
        // See readmacho.c for an explanation of this.
        VG_STREQ("start_according_to_valgrind", name) ||  // Darwin, darling