================ @@ -1106,8 +1106,12 @@ bool AMDGPUToolChain::shouldSkipSanitizeOption( // For simplicity, we only allow -fsanitize=address SanitizerMask K = parseSanitizerValue(A->getValue(), /*AllowGroups=*/false); - if (K != SanitizerKind::Address) + if (K != SanitizerKind::Address) { ---------------- ampandey-1995 wrote:
Done. Hi @yxsamliu & @jhuber6 , there is one complication with respect to OpenMP toolchain i.e ```AMDGPUOpenMPToolchain```. I am seeing diagnoseUnsupportedSanitizers is getting called twice for AMDGPUOpenMP toolchain. In ```Driver.cpp``` AMDGPUOpenMPToolchain objects are created twice. **1. At line number 988.** `#0 clang::driver::toolchains::ROCMToolChain::diagnoseUnsupportedSanitizers (this=0x7e1ff5c21900, Args=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/ToolChains/AMDGPU.h:154 #1 0x000055555c2e0b53 in clang::driver::toolchains::AMDGPUOpenMPToolChain::AMDGPUOpenMPToolChain (this=0x7e1ff5c21900, D=..., Triple=..., HostTC=..., Args=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp:41 #2 0x000055555c22489b in std::make_unique<clang::driver::toolchains::AMDGPUOpenMPToolChain, clang::driver::Driver&, llvm::Triple&, clang::driver::ToolChain const&, llvm::opt::InputArgList const&> (__parameter_pack#0=..., __parameter_pack#1=..., __parameter_pack#2=..., __parameter_pack#3=...) at /usr/include/c++/12/bits/unique_ptr.h:1065 #3 0x000055555c1fa1ca in clang::driver::Driver::CreateOffloadingDeviceToolChains (this=0x7fffffff8420, C=..., Inputs=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/Driver.cpp:988 #4 0x000055555c2006d6 in clang::driver::Driver::BuildCompilation (this=0x7fffffff8420, ArgList=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/Driver.cpp:1780 #5 0x0000555559685f47 in clang_main(int, char**, llvm::ToolContext const&) () #6 0x000055555969a83a in main ()` **2. At line number 1058** `#0 clang::driver::toolchains::ROCMToolChain::diagnoseUnsupportedSanitizers (this=0x7e1ff5c23100, Args=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/ToolChains/AMDGPU.h:154 #1 0x000055555c2e0b53 in clang::driver::toolchains::AMDGPUOpenMPToolChain::AMDGPUOpenMPToolChain (this=0x7e1ff5c23100, D=..., Triple=..., HostTC=..., Args=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp:41 #2 0x000055555c22489b in std::make_unique<clang::driver::toolchains::AMDGPUOpenMPToolChain, clang::driver::Driver&, llvm::Triple&, clang::driver::ToolChain const&, llvm::opt::InputArgList const&> (__parameter_pack#0=..., __parameter_pack#1=..., __parameter_pack#2=..., __parameter_pack#3=...) at /usr/include/c++/12/bits/unique_ptr.h:1065 #3 0x000055555c1fad00 in clang::driver::Driver::CreateOffloadingDeviceToolChains (this=0x7fffffff8420, C=..., Inputs=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/Driver.cpp:1058 #4 0x000055555c2006d6 in clang::driver::Driver::BuildCompilation (this=0x7fffffff8420, ArgList=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/Driver.cpp:1780 #5 0x0000555559685f47 in clang_main(int, char**, llvm::ToolContext const&) () #6 0x000055555969a83a in main ()` With Hip there is only one HIPAMD toolchain. `#0 clang::driver::toolchains::ROCMToolChain::diagnoseUnsupportedSanitizers (this=0x7e1ff5c21900, Args=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/ToolChains/AMDGPU.h:154 #1 0x000055555c3e4727 in clang::driver::toolchains::HIPAMDToolChain::HIPAMDToolChain (this=0x7e1ff5c21900, D=..., Triple=..., HostTC=..., Args=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/ToolChains/HIPAMD.cpp:220 #2 0x000055555c23278a in std::make_unique<clang::driver::toolchains::HIPAMDToolChain, clang::driver::Driver const&, llvm::Triple const&, clang::driver::ToolChain const&, llvm::opt::ArgList const&> (__parameter_pack#0=..., __parameter_pack#1=..., __parameter_pack#2=..., __parameter_pack#3=...) at /usr/include/c++/12/bits/unique_ptr.h:1065 #3 0x000055555c21df4c in clang::driver::Driver::getOffloadingDeviceToolChain (this=0x7fffffff8400, Args=..., Target=..., HostTC=..., TargetDeviceOffloadKind=@0x7fffffff78f0: clang::driver::Action::OFK_HIP) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/Driver.cpp:6817 #4 0x000055555c1f9b47 in clang::driver::Driver::CreateOffloadingDeviceToolChains (this=0x7fffffff8400, C=..., Inputs=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/Driver.cpp:922 #5 0x000055555c2006d6 in clang::driver::Driver::BuildCompilation (this=0x7fffffff8400, ArgList=...) at /home/ampandey/trunk-toolchain/src-home/llvm-project/clang/lib/Driver/Driver.cpp:1780 #6 0x0000555559685f47 in clang_main(int, char**, llvm::ToolContext const&) () #7 0x000055555969a83a in main ()` https://github.com/llvm/llvm-project/pull/124754 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits