From db5aa2d27701db5ff3c1e125a6bd4f7263933d93 Mon Sep 17 00:00:00 2001 From: Pratik Mankawde Date: Tue, 11 Nov 2025 15:03:20 +0000 Subject: [PATCH] added no-var-tracking Signed-off-by: Pratik Mankawde --- .github/scripts/strategy-matrix/generate.py | 6 ++++-- conan/profiles/sanitizers | 9 +++++---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.github/scripts/strategy-matrix/generate.py b/.github/scripts/strategy-matrix/generate.py index ceac9dcffe..2f539253bb 100755 --- a/.github/scripts/strategy-matrix/generate.py +++ b/.github/scripts/strategy-matrix/generate.py @@ -178,8 +178,10 @@ def generate_strategy_matrix(all: bool, config: Config) -> list: else: cxx_flags += " -O1" + # Somc functions are too complex and huge for compiler to handle variable tracking. + # Hence disable it. if cxx_flags: - cmake_args_flags = f'{cmake_args} -DCMAKE_CXX_FLAGS="-fsanitize=address,{sanitizers_flags} -fno-omit-frame-pointer {cxx_flags} {extra_warning_flags}" -DCMAKE_EXE_LINKER_FLAGS="{linker_flags}" -DCMAKE_SHARED_LINKER_FLAGS="{linker_flags}"' + cmake_args_flags = f'{cmake_args} -DCMAKE_CXX_FLAGS="-fsanitize=address,{sanitizers_flags} -fno-omit-frame-pointer -fno-var-tracking-assignments {cxx_flags} {extra_warning_flags}" -DCMAKE_EXE_LINKER_FLAGS="{linker_flags}" -DCMAKE_SHARED_LINKER_FLAGS="{linker_flags}"' else: cmake_args_flags = f'{cmake_args}' configurations.append({ @@ -196,7 +198,7 @@ def generate_strategy_matrix(all: bool, config: Config) -> list: if os['compiler_name'] == 'gcc': extra_warning_flags += ' -Wno-tsan' if cxx_flags: - cmake_args_flags = f'{cmake_args} -DCMAKE_CXX_FLAGS="-fsanitize=thread,{sanitizers_flags} -fno-omit-frame-pointer {cxx_flags} {extra_warning_flags}" -DCMAKE_EXE_LINKER_FLAGS="{linker_flags}" -DCMAKE_SHARED_LINKER_FLAGS="{linker_flags}"' + cmake_args_flags = f'{cmake_args} -DCMAKE_CXX_FLAGS="-fsanitize=thread,{sanitizers_flags} -fno-omit-frame-pointer -fno-var-tracking-assignments {cxx_flags} {extra_warning_flags}" -DCMAKE_EXE_LINKER_FLAGS="{linker_flags}" -DCMAKE_SHARED_LINKER_FLAGS="{linker_flags}"' else: cmake_args_flags = f'{cmake_args}' configurations.append({ diff --git a/conan/profiles/sanitizers b/conan/profiles/sanitizers index 6e3c006d22..1f92c743b6 100644 --- a/conan/profiles/sanitizers +++ b/conan/profiles/sanitizers @@ -12,11 +12,12 @@ tools.info.package_ids:confs+=["user.package:sanitizers"] {% if sanitizers == "Address" %} tools.build:cxxflags+=['-fsanitize=address,undefined,float-divide-by-zero,signed-integer-overflow --fno-omit-frame-pointer -O1 -Wno-stringop-overflow -mcmodel=medium'] +-fno-omit-frame-pointer -fno-var-tracking-assignments -O1 -Wno-stringop-overflow -mcmodel=medium'] tools.build:sharedlinkflags+=['-mcmodel=medium'] tools.build:exelinkflags+=['-mcmodel=medium'] {% elif sanitizers == "Thread" %} tools.build:cxxflags+=['-fsanitize=thread,undefined,float-divide-by-zero,signed-integer-overflow -fno-omit-frame-pointer +-fno-var-tracking-assignments -O1 -Wno-stringop-overflow -Wno-tsan -mcmodel=medium'] tools.build:sharedlinkflags+=['-mcmodel=medium'] tools.build:exelinkflags+=['-mcmodel=medium'] @@ -26,14 +27,14 @@ tools.build:exelinkflags+=['-mcmodel=medium'] {% if sanitizers == "Address" %} tools.build:cxxflags+=['-fsanitize=address,undefined,float-divide-by-zero,signed-integer-overflow,unsigned-integer-overflow --fno-omit-frame-pointer -O1 -mcmodel=medium'] +-fno-omit-frame-pointer -fno-var-tracking-assignments -O1 -mcmodel=medium'] tools.build:sharedlinkflags+=['-mcmodel=medium'] tools.build:exelinkflags+=['-mcmodel=medium'] {% elif sanitizers == "Thread" %} tools.build:cxxflags+=['-fsanitize=thread,undefined,float-divide-by-zero,signed-integer-overflow,unsigned-integer-overflow --fno-omit-frame-pointer -O1 -mcmodel=medium'] +-fno-omit-frame-pointer -fno-var-tracking-assignments -O1 -mcmodel=medium'] tools.build:sharedlinkflags+=['-mcmodel=medium'] tools.build:exelinkflags+=['-mcmodel=medium'] {% endif %} -{% endif %} +{% endif %} \ No newline at end of file