# This is a generated file, composed of the following suppression rules:
#
#      xfree-3.supp xfree-4.supp glibc-2.34567-NPTL-helgrind.supp glibc-2.7.supp 
#


##----------------------------------------------------------------------##

# Errors to suppress by default with XFree86 3.3.6)

# Format of this file is:
# {
#     name_of_suppression
#     tool_name:supp_kind
#     (optional extra info for some suppression types)
#     caller0 name, or /name/of/so/file.so
#     caller1 name, or ditto
#     (optionally: caller2 name)
#     (optionally: caller3 name)
#  }
#
# For Memcheck, the supp_kinds are:
#
#     Param Value1 Value2 Value4 Value8 Value16 Jump
#     Free Addr1 Addr2 Addr4 Addr8 Addr16
#     Cond (previously known as Value0)
#
# and the optional extra info is:
#     if Param: name of system call param

##----------------------------------------------------------------------##

{
   X11-Cond-0
   Memcheck:Cond
   obj:*libXt.so.6.0
   obj:*libXt.so.6.0
   obj:*libXt.so.6.0
}
{
   X11-Cond-1
   Memcheck:Cond
   fun:__rawmemchr
   obj:*libXt.so.6.0
   obj:*libXt.so.6.0
}


# Suppressions for XFree86-3.3.X

{
   X11-Addr4-1
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libX11.so.6.1
   obj:/usr/X11R6/lib/libX11.so.6.1
   obj:/usr/X11R6/lib/libX11.so.6.1
}

{
   X11-Addr4-2
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libX11.so.6.1
   obj:/usr/X11R6/lib/libX11.so.6.1
   obj:/usr/X11R6/lib/libXt.so.6.0
}

{
   X11-Addr4-3
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libXt.so.6.0
   obj:/usr/X11R6/lib/libXt.so.6.0
   obj:/usr/X11R6/lib/libXt.so.6.0
}

{
   X11-Addr4-4
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libX11.so.6.1
   obj:/usr/X11R6/lib/libXt.so.6.0
   obj:/usr/X11R6/lib/libXt.so.6.0
}

{
   X11-Addr4-5
   Memcheck:Addr4
   fun:__rawmemchr
   obj:/usr/X11R6/lib/libXt.so.6.0
   obj:/usr/X11R6/lib/libXt.so.6.0
}

{
   X11-Addr4-6
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libXmu.so.6.0
   obj:/usr/X11R6/lib/libXmu.so.6.0
   obj:/usr/X11R6/lib/libXt.so.6.0
}

{
   X11-Addr4-7
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libXt.so.6.0
   obj:/usr/X11R6/lib/libXt.so.6.0
   obj:/usr/X11R6/lib/libXawXpm_posing_as_Xaw.so.6.1
}

{
   X11-Param-1
   Memcheck:Param
   write(buf)
   fun:__libc_write
   obj:/usr/X11R6/lib/libX11.so.6.1
   obj:/usr/X11R6/lib/libX11.so.6.1
}

{
   X11-Addr4-8
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libX11.so.6.1
   obj:/usr/X11R6/lib/libXpm.so.4.11
   obj:/usr/X11R6/lib/libXpm.so.4.11
}

{
   X11-Addr4-8
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libXt.so.6.0
   obj:/usr/X11R6/lib/libXawXpm_posing_as_Xaw.so.6.1
   obj:/usr/X11R6/lib/libXt.so.6.0
}

{
   X11-Addr4-9
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libXaw.so.6.1
   obj:/usr/X11R6/lib/libXt.so.6.0
   obj:/usr/X11R6/lib/libXt.so.6.0
}

{
   X11-Addr4-10
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libXaw.so.6.1
   obj:/usr/X11R6/lib/libXaw.so.6.1
   obj:/usr/X11R6/lib/libXt.so.6.0
}

{
   X11-Addr4-11
   Memcheck:Addr4
   obj:/usr/X11R6/lib/libXt.so.6.0
   obj:/usr/X11R6/lib/libXt.so.6.0
   obj:/usr/X11R6/lib/libXaw.so.6.1
}



##----------------------------------------------------------------------##

##----------------------------------------------------------------------##

# Errors to suppress by default with XFree86 4.1.0)

# Format of this file is:
# {
#     name_of_suppression
#     tool_name:supp_kind
#     (optional extra info for some suppression types)
#     caller0 name, or /name/of/so/file.so
#     caller1 name, or ditto
#     (optionally: caller2 name)
#     (optionally: caller3 name)
#  }
#
# For Memcheck, the supp_kinds are:
#
#     Param Value1 Value2 Value4 Value8 Value16 Jump
#     Free Addr1 Addr2 Addr4 Addr8 Addr16
#     Cond (previously known as Value0)
#
# and the optional extra info is:
#     if Param: name of system call param

# Resulting from R H 8.0
{
   *libc_write/libX11.so.6.2/*X11TransWrite(Param)
   Memcheck:Param
   write(buf)
   fun:*libc_write
   obj:/usr/X11R6/lib*/libX11.so.6.2
   fun:*X11TransWrite
}

{
   libX11.so.6.2/libX11.so.6.2/libX11.so.6.2(Cond)
   Memcheck:Cond
   obj:/usr/X11R6/lib*/libX11.so.6.2
   obj:/usr/X11R6/lib*/libX11.so.6.2
   obj:/usr/X11R6/lib*/libX11.so.6.2
}

{
   libXt.so.6.2/libXt.so.6.2/libXt.so.6.2(Cond)
   Memcheck:Cond
   obj:/usr/X11R6/lib*/libXt.so.6.0
   obj:/usr/X11R6/lib*/libXt.so.6.0
   obj:/usr/X11R6/lib*/libXt.so.6.0
}


{
   libXaw.so.7.0/libXaw.so.7.0/libXaw.so.7.0(Cond)
   Memcheck:Cond
   obj:/usr/X11R6/lib*/libXaw.so.7.0
   obj:/usr/X11R6/lib*/libXaw.so.7.0
   obj:/usr/X11R6/lib*/libXaw.so.7.0
}

{
   libXmu.so.6.2/libXmu.so.6.2/libXmu.so.6.2(Cond)
   Memcheck:Cond
   obj:/usr/X11R6/lib*/libXmu.so.6.2
   obj:/usr/X11R6/lib*/libXmu.so.6.2
   obj:/usr/X11R6/lib*/libXmu.so.6.2
}

{
   libXt.so.6.0/libXt.so.6.0/libXaw.so.7.0(Cond)
   Memcheck:Cond
   obj:/usr/X11R6/lib*/libXt.so.6.0
   obj:/usr/X11R6/lib*/libXt.so.6.0
   obj:/usr/X11R6/lib*/libXaw.so.7.0
}

{
   libXaw.so.7.0/libXaw.so.7.0/libXt.so.6.0(Value4)
   Memcheck:Value4
   obj:/usr/X11R6/lib*/libXaw.so.7.0
   obj:/usr/X11R6/lib*/libXaw.so.7.0
   obj:/usr/X11R6/lib*/libXt.so.6.0
}

{
   libXaw.so.7.0/libXaw.so.7.0/libXt.so.6.0(Cond)
   Memcheck:Cond
   obj:/usr/X11R6/lib*/libXaw.so.7.0
   obj:/usr/X11R6/lib*/libXaw.so.7.0
   obj:/usr/X11R6/lib*/libXt.so.6.0
}

{
   libX11.so.6.2/libX11.so.6.2/libXaw.so.7.0(Cond)
   Memcheck:Cond
   obj:/usr/X11R6/lib*/libX11.so.6.2
   obj:/usr/X11R6/lib*/libX11.so.6.2
   obj:/usr/X11R6/lib*/libXaw.so.7.0
}

{
   libX11.so.6.2/libX11.so.6.2/libXaw.so.7.0(Addr4)
   Memcheck:Addr4
   obj:/usr/X11R6/lib*/libX11.so.6.2
   obj:/usr/X11R6/lib*/libX11.so.6.2
   obj:/usr/X11R6/lib*/libXaw.so.7.0
}

{
   libX11.so.6.2/libXaw.so.7.0/libXaw.so.7.0(Cond)
   Memcheck:Cond
   obj:/usr/X11R6/lib*/libX11.so.6.2
   obj:/usr/X11R6/lib*/libXaw.so.7.0
   obj:/usr/X11R6/lib*/libXaw.so.7.0
}

{
   libXpm.so.4.11/libXpm.so.4.11/libXpm.so.4.11
   Memcheck:Cond
   obj:/usr/X11R6/lib*/libXpm.so.4.11
   obj:/usr/X11R6/lib*/libXpm.so.4.11
   obj:/usr/X11R6/lib*/libXpm.so.4.11
}

{
   struct with uninitialized paddings
   Memcheck:Param
   writev(vector[...])
   fun:*_writev
   fun:_X11TransSocketWritev
   fun:_X11TransWritev
   fun:*
}

{
   struct with uninitialized paddings - libxcb
   Memcheck:Param
   writev(vector[...])
   obj:/lib*/libc-2.6*.so
   obj:/usr/lib*/libxcb.so.1.0.0
   obj:/usr/lib*/libxcb.so.1.0.0
   fun:xcb_send_request
   fun:_X*
}

{
   struct with uninitialized paddings - libxcb
   Memcheck:Param
   writev(vector[...])
   obj:/lib*/libc-2.6*.so
   obj:/usr/lib*/libxcb.so.1.0.0
   obj:/usr/lib*/libxcb.so.1.0.0
   obj:/usr/lib*/libxcb.so.1.0.0
   fun:xcb_*
   fun:_X*
}

{
   another struct with uninitialized paddings
   Memcheck:Param
   write(buf)
   obj:*
   fun:_IceTransSocketWrite
   fun:_IceTransWrite
   fun:_IceWrite
}

{
   Xorg 6.8.1 uninit _write* padding
   Memcheck:Param
   write(buf)
   fun:*
   fun:_X11TransWrite
   obj:/usr/X11R6/lib*/libX11.so.6.2
}

{
   Xorg 6.8.1 uninit write padding
   Memcheck:Param
   write(buf)
   fun:write
   fun:_X11TransWrite
   obj:/usr/X11R6/lib*/libX11.so.6.2
}

{
   Xorg 6.8.1 ICE uninit __write* padding
   Memcheck:Param
   write(buf)
   obj:*
   fun:_IceTransWrite
   fun:_IceWrite
   fun:IceFlush
}

{
   Xorg 6.8.1 writev uninit padding
   Memcheck:Param
   writev(vector[...])
   fun:writev
   obj:/usr/X11R6/lib*/libX11.so.6.2
   fun:_X11TransWritev
   fun:_XSend
}

{
   Xorg 6.9.0 writev uninit padding
   Memcheck:Param
   writev(vector[...])
   fun:do_writev
   fun:writev
   obj:/usr/X11R6/lib*/libX11.so.6.2
   fun:_X11TransWritev
   fun:_XSend
}

{
   X on SUSE11 writev uninit padding
   Memcheck:Param
   writev(vector[...])
   fun:writev
   obj:/usr/lib*/libxcb.so*
   obj:/usr/lib*/libxcb.so*
}
{
   X on SUSE11 writev uninit padding 2
   Memcheck:Param
   writev(vector[...])
   obj:/lib*/ld-2.*.so*
   obj:/usr/lib*/libxcb.so*
   obj:/usr/lib*/libxcb.so*
}
{
   X on SUSE11 writev uninit padding 3
   Memcheck:Param
   writev(vector[...])
   obj:/lib*/ld-2.*.so*
   obj:/usr/lib*/libORBit*.so*
   obj:/usr/lib*/libORBit*.so*
}
{
   X on SUSE11 writev uninit padding 4
   Memcheck:Param
   writev(vector[...])
   obj:/lib*/libc-2.*.so*
   obj:/usr/lib*/libORBit*.so*
   obj:/usr/lib*/libORBit*.so*
}


# There's something strange about a % 127 in XftFontOpenInfo
# (hashing) which gcc turns into a multiply by 33818641 and
# some other guff instead.  I don't understand it enough to
# know if libXft is broken or if memcheck's value tracking is
# inadequate here.  Anyway, for the moment, suppress it.
#
# Use of uninitialised value of size 8
#   at 0x71A59F8: XftFontOpenInfo (in /usr/X11R6/lib64/libXft.so.2.1.2)
#   by 0x71A5F0D: XftFontOpenPattern (in /usr/X11R6/lib64/libXft.so.2.1.2)
#   by 0x65F166E: loadFontConfigFont(QFontPrivate const*, QFontDef const&, 
#                 QFont::Script) (qfontdatabase_x11.cpp:1942)
#   by 0x65F5DE4: QFontDatabase::findFont(QFont::Script, QFontPrivate const*,
#                 QFontDef const&, int) (qfontdatabase.cpp:996)
{
   XftFontOpenInfo-umod-127-strangeness
   Memcheck:Value8
   obj:/usr/X11*/lib*/libXft.so*
   obj:/usr/X11*/lib*/libXft.so*
}
{
   XftFontOpenInfo-umod-127-strangeness-a-la-xorg
   Memcheck:Value8
   obj:/usr/lib*/libXft.so*
   obj:/usr/lib*/libXft.so*
}

{
   More X padding stuff
   Memcheck:Param
   writev(vector[...])
   fun:*writev*
   obj:/usr/X11*/lib*/libX11.so*
   obj:/usr/X11*/lib*/libX11.so*
}


##----------------------------------------------------------------------##
# Completely inappropriate place, but ...

{
   ifort-9.X-on-i686-1
   Memcheck:Addr4
   fun:unaligned_bigint
   fun:hash
   fun:for__add_to_lf_table
}
{
   ifort-9.X-on-amd64-1
   Memcheck:Addr8
   fun:unaligned_bigint
   fun:hash
   fun:for__add_to_lf_table
}

##----------------------------------------------------------------------##

## More general versions of some of the old X suppressions above
{
   Ubuntu804 libXaw.so.7.0/libXaw.so.7.0/libXaw.so.7.0(Cond)
   Memcheck:Cond
   obj:/usr/*lib*/libXaw*so*
   obj:/usr/*lib*/libXaw*so*
   obj:/usr/*lib*/libXaw*so*
}
{
   Ubuntu804 libXaw.so.7.0/libXaw.so.7.0/libXt(Cond)
   Memcheck:Cond
   obj:/usr/*lib*/libXaw*so*
   obj:/usr/*lib*/libXaw*so*
   obj:/usr/*lib*/libXt*so*
}

{
   Ubuntu804-hack-1
   Memcheck:Overlap
   fun:mempcpy
   fun:_IO_default_xsputn
   obj:/lib*/libc-2.*so*
}

##----------------------------------------------------------------------##
# Suppressions for the Helgrind tool when using 
# a glibc-2.{2,3,4,5,6} system

######------------ glibc-2.5 specific ------------######
#
## NB.  This is the "reference set".  Derived sets for
## glibc 2.7, 2.6, 2.4 and 2.3 follow below.
{
   helgrind-glibc25-001
   Helgrind:Race
   obj:/lib*/ld-2.5.*so
   obj:/lib*/ld-2.5.*so
}
{
   helgrind-glibc25-002
   Helgrind:Race
   obj:/lib*/ld-2.5.*so
   obj:/lib*/libc-2.5.*so
   obj:/lib*/ld-2.5.*so
}
{
   helgrind-glibc25-003
   Helgrind:Race
   obj:/lib*/ld-2.5.*so
   obj:/lib*/libc-2.5.*so
   obj:/lib*/libc-2.5.*so
}
{
   helgrind-glibc25-004
   Helgrind:Race
   obj:/lib*/libc-2.5.*so
   obj:/lib*/libc-2.5.*so
}
{
   helgrind-glibc25-005
   Helgrind:Race
   obj:/lib*/libpthread-2.5.*so
   obj:/lib*/libpthread-2.5.*so
   obj:/lib*/libpthread-2.5.*so
}
{
   helgrind-glibc25-006
   Helgrind:Race
   obj:/lib*/libpthread-2.5.*so
   obj:/lib*/libpthread-2.5.*so
   obj:/lib*/libc-2.5.*so
}
{
   helgrind-glibc25-007
   Helgrind:Race
   obj:/lib*/ld-2.5.*so
   obj:/lib*/libc-2.5.*so
   obj:/lib*/libdl-2.5.*so
}
{
   helgrind-glibc25-008
   Helgrind:Race
   obj:/lib*/libpthread-2.5.*so
   obj:/lib*/libc-2.5.*so
}
{
   helgrind-glibc25-009
   Helgrind:Race
   obj:/lib*/libc-2.5.*so
   fun:*
   obj:/lib*/libc-2.5.*so
}
{
   helgrind-glibc25-010
   Helgrind:Race
   obj:/lib*/ld-2.5.*so
   obj:/lib*/libpthread-2.5.*so
}
{
   helgrind-glibc25-011
   Helgrind:Race
   obj:/lib*/libc-2.5.*so
   obj:/lib*/libpthread-2.5.*so
}
{
   helgrind-glibc25-013
   Helgrind:Race
   obj:/lib*/ld-2.5.*so
   fun:*
   obj:/lib*/ld-2.5.*so
}
{
   helgrind-glibc25-014
   Helgrind:Race
   obj:/lib*/ld-2.5.*so
   obj:/lib*/ld-2.5.*so
   obj:/lib*/libpthread-2.5.*so
}

# These are very ugly.  They are needed to suppress errors inside (eg)
# NPTL's pthread_cond_signal.  Why only one stack frame -- at least we
# should see the wrapper calling the real functions, right?
# Unfortunately, no: the real functions are handwritten assembly (in
# the glibc-2.5 sources) and does not create a proper stack frame.
# Therefore it's only one level of unwinding before we're back out in
# user code rather than the 2 levels you'd expect.
{
   helgrind-glibc25-101
   Helgrind:Race
   obj:/lib*/libpthread-2.5.*so
   fun:pthread_*
}
{
   helgrind-glibc25-102
   Helgrind:Race
   fun:mythread_wrapper
   obj:/lib*/libpthread-2.5.*so
}
{
   helgrind-glibc25-103
   Helgrind:Race
   fun:pthread_cond_*@@GLIBC_2.3.2
}
{
   helgrind-glibc25-104
   Helgrind:Race
   fun:__lll_mutex_*
}
{
   helgrind-glibc25-105
   Helgrind:Race
   fun:pthread_rwlock_*lock*
}
{
   helgrind-glibc25-107
   Helgrind:Race
   obj:/lib*/libpthread-2.5.*so
   fun:sem_*
}
{
   helgrind-glibc25-108
   Helgrind:Race
   fun:clone
}
{
   helgrind-glibc25-109
   Helgrind:Race
   fun:start_thread
}

######------------ glibc-2.8 specific ---------######
#
{
   helgrind-glibc28-001
   Helgrind:Race
   obj:/lib*/ld-2.8.*so
   obj:/lib*/ld-2.8.*so
}
{
   helgrind-glibc28-002
   Helgrind:Race
   obj:/lib*/ld-2.8.*so
   obj:/lib*/libc-2.8.*so
   obj:/lib*/ld-2.8.*so
}
{
   helgrind-glibc28-003
   Helgrind:Race
   obj:/lib*/ld-2.8.*so
   obj:/lib*/libc-2.8.*so
   obj:/lib*/libc-2.8.*so
}
{
   helgrind-glibc28-004
   Helgrind:Race
   obj:/lib*/libc-2.8.*so
   obj:/lib*/libc-2.8.*so
}
{
   helgrind-glibc28-006
   Helgrind:Race
   obj:/lib*/libpthread-2.8.*so
   obj:/lib*/libpthread-2.8.*so
   obj:/lib*/libc-2.8.*so
}
{
   helgrind-glibc28-010
   Helgrind:Race
   obj:/lib*/ld-2.8.*so
   obj:/lib*/libpthread-2.8.*so
}

{
   helgrind-glibc28-101
   Helgrind:Race
   obj:/lib*/libpthread-2.8.*so
   fun:pthread_*
}
{
   helgrind-glibc28-102
   Helgrind:Race
   fun:mythread_wrapper
   obj:/lib*/libpthread-2.8.*so
}
{
   helgrind-glibc28-110
   Helgrind:Race
   obj:/lib*/libc-2.8.*so
   fun:pthread_*
}
{
   helgrind-glibc28-111
   Helgrind:Race
   fun:__lll_*lock_*
}

######------------ glibc-2.7 specific ---------######
#
{
   helgrind-glibc27-001
   Helgrind:Race
   obj:/lib*/ld-2.7.*so
   obj:/lib*/ld-2.7.*so
}
{
   helgrind-glibc27-003
   Helgrind:Race
   obj:/lib*/ld-2.7.*so
   obj:/lib*/libc-2.7.*so
   obj:/lib*/libc-2.7.*so
}
{
   helgrind-glibc27-004
   Helgrind:Race
   obj:/lib*/libc-2.7.*so
   obj:/lib*/libc-2.7.*so
}
{
   helgrind-glibc27-005
   Helgrind:Race
   obj:/lib*/libpthread-2.7.*so
   obj:/lib*/libpthread-2.7.*so
   obj:/lib*/libpthread-2.7.*so
}
{
   helgrind-glibc27-011
   Helgrind:Race
   obj:/lib*/libc-2.7.*so
   obj:/lib*/libpthread-2.7.*so
}

{
   helgrind-glibc27-101
   Helgrind:Race
   obj:/lib*/libpthread-2.7.*so
   fun:pthread_*
}
{
   helgrind-glibc27-102
   Helgrind:Race
   fun:mythread_wrapper
   obj:/lib*/libpthread-2.7.*so
}
{
   helgrind-glibc27-107
   Helgrind:Race
   obj:/lib*/libpthread-2.7.*so
   fun:sem_*
}

######------------ glibc-2.6 specific ---------######
#
{
   helgrind-glibc26-001
   Helgrind:Race
   obj:/lib*/ld-2.6.*so
   obj:/lib*/ld-2.6.*so
}
{
   helgrind-glibc26-003
   Helgrind:Race
   obj:/lib*/ld-2.6.*so
   obj:/lib*/libc-2.6.*so
   obj:/lib*/libc-2.6.*so
}
{
   helgrind-glibc26-004
   Helgrind:Race
   obj:/lib*/libc-2.6.*so
   obj:/lib*/libc-2.6.*so
}
{
   helgrind-glibc26-005
   Helgrind:Race
   obj:/lib*/libpthread-2.6.*so
   obj:/lib*/libpthread-2.6.*so
   obj:/lib*/libpthread-2.6.*so
}
{
   helgrind-glibc26-006
   Helgrind:Race
   obj:/lib*/libpthread-2.6.*so
   obj:/lib*/libpthread-2.6.*so
   obj:/lib*/libc-2.6.*so
}
{
   helgrind-glibc26-008
   Helgrind:Race
   obj:/lib*/libpthread-2.6.*so
   obj:/lib*/libc-2.6.*so
}
{
   helgrind-glibc26-011
   Helgrind:Race
   obj:/lib*/libc-2.6.*so
   obj:/lib*/libpthread-2.6.*so
}
{
   helgrind-glibc26-014
   Helgrind:Race
   obj:/lib*/ld-2.6.*so
   obj:/lib*/ld-2.6.*so
   obj:/lib*/libpthread-2.6.*so
}

{
   helgrind-glibc26-101
   Helgrind:Race
   obj:/lib*/libpthread-2.6.*so
   fun:pthread_*
}
{
   helgrind-glibc26-102
   Helgrind:Race
   fun:mythread_wrapper
   obj:/lib*/libpthread-2.6.*so
}
{
   helgrind-glibc26-106
   Helgrind:Race
   fun:__lll_lock_wait
}
{
   helgrind-glibc26-107
   Helgrind:Race
   obj:/lib*/libpthread-2.6.*so
   fun:sem_*
}

######------------ glibc-2.4 specific ------------######
#
{
   helgrind-glibc24-001
   Helgrind:Race
   obj:/lib*/ld-2.4.*so
   obj:/lib*/ld-2.4.*so
}
{
   helgrind-glibc24-003
   Helgrind:Race
   obj:/lib*/ld-2.4.*so
   obj:/lib*/libc-2.4.*so
   obj:/lib*/libc-2.4.*so
}
{
   helgrind-glibc24-004
   Helgrind:Race
   obj:/lib*/libc-2.4.*so
   obj:/lib*/libc-2.4.*so
}
{
   helgrind-glibc24-005
   Helgrind:Race
   obj:/lib*/libpthread-2.4.*so
   obj:/lib*/libpthread-2.4.*so
   obj:/lib*/libpthread-2.4.*so
}
{
   helgrind-glibc24-006
   Helgrind:Race
   obj:/lib*/libpthread-2.4.*so
   obj:/lib*/libpthread-2.4.*so
   obj:/lib*/libc-2.4.*so
}
{
   helgrind-glibc24-008
   Helgrind:Race
   obj:/lib*/libpthread-2.4.*so
   obj:/lib*/libc-2.4.*so
}
{
   helgrind-glibc24-010
   Helgrind:Race
   obj:/lib*/ld-2.4.*so
   obj:/lib*/libpthread-2.4.*so
}
{
   helgrind-glibc24-011
   Helgrind:Race
   obj:/lib*/libc-2.4.*so
   obj:/lib*/libpthread-2.4.*so
}

{
   helgrind-glibc24-101
   Helgrind:Race
   obj:/lib*/libpthread-2.4.*so
   fun:pthread_*
}
{
   helgrind-glibc24-102
   Helgrind:Race
   fun:mythread_wrapper
   obj:/lib*/libpthread-2.4.*so
}

######--------- glibc-2.3 specific ---------######
{
   helgrind-glibc23-001
   Helgrind:Race
   obj:/lib*/ld-2.3.*so
   obj:/lib*/ld-2.3.*so
}
{
   helgrind-glibc23-002
   Helgrind:Race
   obj:/lib*/ld-2.3.*so
   obj:/lib*/libc-2.3.*so
   obj:/lib*/ld-2.3.*so
}
{
   helgrind-glibc23-003
   Helgrind:Race
   obj:/lib*/ld-2.3.*so
   obj:/lib*/libc-2.3.*so
   obj:/lib*/libc-2.3.*so
}
{
   helgrind-glibc23-004
   Helgrind:Race
   obj:/lib*/libc-2.3.*so
   obj:/lib*/libc-2.3.*so
}
{
   helgrind-glibc23-006
   Helgrind:Race
   obj:/lib*/libpthread-2.3.*so
   obj:/lib*/libpthread-2.3.*so
   obj:/lib*/libc-2.3.*so
}
{
   helgrind-glibc23-008
   Helgrind:Race
   obj:/lib*/libpthread-2.3.*so
   obj:/lib*/libc-2.3.*so
}
{
   helgrind-glibc23-009
   Helgrind:Race
   obj:/lib*/libc-2.3.*so
   obj:/lib*/ld-2.3.*so
   obj:/lib*/libc-2.3.*so
}
{
   helgrind-glibc23-011
   Helgrind:Race
   obj:/lib*/libc-2.3.*so
   obj:/lib*/libpthread-2.3.*so
}
{
   helgrind-glibc23-012
   Helgrind:Race
   obj:/lib*/ld-2.3.*so
   obj:/lib*/ld-2.3.*so
   obj:/lib*/libc-2.3.*so
}
{
   helgrind-glibc23-014
   Helgrind:Race
   obj:/lib*/ld-2.3.*so
   obj:/lib*/ld-2.3.*so
   obj:/lib*/libpthread-2.3.*so
}

{
   helgrind-glibc23-100
   Helgrind:Race
   obj:/lib*/libpthread-2.3.*so
   fun:pthread_*
}
{
   helgrind-glibc23-101
   Helgrind:Race
   fun:mythread_wrapper
   obj:/lib*/libpthread-2.3.*so
}

######------ qt4 specific (GNU mangling) ------######
{
   helgrind-qt4-QMutex::lock()-twice
   Helgrind:Race
   fun:_ZN6QMutex4lockEv
   fun:_ZN6QMutex4lockEv
}

# Errors to suppress by default with glibc 2.7.x

# Format of this file is:
# {
#     name_of_suppression
#     tool_name:supp_kind
#     (optional extra info for some suppression types)
#     caller0 name, or /name/of/so/file.so
#     caller1 name, or ditto
#     (optionally: caller2 name)
#     (optionally: caller3 name)
#  }
#
# For Memcheck, the supp_kinds are:
#
#     Param Value1 Value2 Value4 Value8 Value16 Jump
#     Free Addr1 Addr2 Addr4 Addr8 Addr16
#     Cond (previously known as Value0)
#
# and the optional extra info is:
#     if Param: name of system call param

{
   dl-hack3-cond-1
   Memcheck:Cond
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/ld-2.7*.so*
}
{
   dl-hack3-cond-2
   Memcheck:Cond
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/libc-2.7*.so*
}
{
   dl-hack3-cond-3
   Memcheck:Cond
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/libc-2.7*.so*
   obj:/lib*/libc-2.7*.so*
}
{
   dl-hack3-cond-4
   Memcheck:Cond
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/libdl-2.7*.so*
}

{
   dl-hack4-64bit-addr-1
   Memcheck:Addr8
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/ld-2.7*.so*
}
{
   dl-hack4-64bit-addr-2
   Memcheck:Addr8
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/libc-2.7*.so*
}
{
   dl-hack4-64bit-addr-3
   Memcheck:Addr8
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/ld-2.7*.so*
   obj:/lib*/libdl-2.7*.so*
}

{
   dl-hack5-32bit-addr-1
   Memcheck:Addr4
   obj:/lib/ld-2.7*.so
   obj:/lib/ld-2.7*.so
   obj:/lib/ld-2.7*.so
}
{
   dl-hack5-32bit-addr-3
   Memcheck:Addr4
   obj:/lib/ld-2.7*.so
   obj:/lib/ld-2.7*.so
   obj:/lib/libdl-2.7*.so*
}
{
   dl-hack5-32bit-addr-4
   Memcheck:Addr4
   obj:/lib/ld-2.7*.so
   obj:/lib/libdl-2.7*.so*
   obj:/lib/ld-2.7*.so
}
