summaryrefslogtreecommitdiff
path: root/nss/coreconf/sanitizers.py
diff options
context:
space:
mode:
Diffstat (limited to 'nss/coreconf/sanitizers.py')
-rw-r--r--nss/coreconf/sanitizers.py15
1 files changed, 6 insertions, 9 deletions
diff --git a/nss/coreconf/sanitizers.py b/nss/coreconf/sanitizers.py
index 2f62d00..8735aad 100644
--- a/nss/coreconf/sanitizers.py
+++ b/nss/coreconf/sanitizers.py
@@ -5,14 +5,16 @@ import sys
def main():
if len(sys.argv) < 2:
- raise Exception('Specify either "ld", asan", "msan", "sancov" or "ubsan" as argument.')
+ raise Exception('Specify either "asan", "msan", "sancov" or "ubsan" as argument.')
sanitizer = sys.argv[1]
if sanitizer == "ubsan":
- print('-fsanitize=undefined -fno-sanitize-recover=undefined ', end='')
+ if len(sys.argv) < 3:
+ raise Exception('ubsan requires another argument.')
+ print('-fsanitize='+sys.argv[2]+' -fno-sanitize-recover=undefined ', end='')
return
if sanitizer == "asan":
- print('-fsanitize=address ', end='')
+ print('-fsanitize=address -fsanitize-address-use-after-scope ', end='')
print('-fno-omit-frame-pointer -fno-optimize-sibling-calls ', end='')
return
if sanitizer == "msan":
@@ -25,12 +27,7 @@ def main():
print('-fsanitize-coverage='+sys.argv[2]+' ', end='')
return
- # We have to remove this from the ld flags when building asan.
- if sanitizer == "ld":
- print('-Wl,-z,defs ', end='')
- return
-
- raise Exception('Specify either "ld", asan", "msan", "sancov" or "ubsan" as argument.')
+ raise Exception('Specify either "asan", "msan", "sancov" or "ubsan" as argument.')
if __name__ == '__main__':
main()