# The rules in this file are only applied at compile time.
# Because the Chrome buildsystem does not automatically touch the files
# mentioned here, changing this file requires clobbering all MSan bots.
#
# Please think twice before you add or remove these rules.

# False positive in ffmpeg due to assembly code. http://crbug.com/344505
fun:ff_get_cpu_flags_x86

# Uninit in zlib. http://crbug.com/116277
fun:*MOZ_Z_deflate*

# Uninit in OSMesa. http://crbug.com/347967
fun:unpack_RGBA8888
fun:unpack_RGB888

# An actual Chromium bug which is blocking our progress. http://crbug.com/334448
fun:*UTF8GenericReplaceInternal*

# False positives due to use of linux_syscall_support. http://crbug.com/394028
src:*/breakpad/src/*
src:*/components/crash/app/breakpad_linux.cc

# False positives due to an MSan bug. http://crbug.com/418986
fun:*SchedGetParamThread*
