diff options
author | Michael Liao <michael.hliao@gmail.com> | 2021-06-08 14:35:36 -0400 |
---|---|---|
committer | Michael Liao <michael.hliao@gmail.com> | 2021-06-08 15:42:27 -0400 |
commit | 27332968d85e1ad4a58df884030e55abc00e91b1 (patch) | |
tree | 3236e3199cf70f27e53c26ee0b22fd50595a4139 /llvm/lib | |
parent | a9ea0a6a77b30305bfbe1b06c30bf6136f64c1ad (diff) | |
download | llvm-27332968d85e1ad4a58df884030e55abc00e91b1.zip llvm-27332968d85e1ad4a58df884030e55abc00e91b1.tar.gz llvm-27332968d85e1ad4a58df884030e55abc00e91b1.tar.bz2 |
[amdgpu] Add `-enable-ocl-mangling-mismatch-workaround`.
- Add `-enable-ocl-mangling-mismatch-workaround` to work around the
mismatch on OCL name mangling so far.
Reviewed By: yaxunl, rampitec
Differential Revision: https://reviews.llvm.org/D103920
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp b/llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp index 646087c..32262ea 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp @@ -19,10 +19,16 @@ #include "llvm/IR/Function.h" #include "llvm/IR/Module.h" #include "llvm/IR/ValueSymbolTable.h" +#include "llvm/Support/CommandLine.h" #include "llvm/Support/raw_ostream.h" using namespace llvm; +static cl::opt<bool> EnableOCLManglingMismatchWA( + "amdgpu-enable-ocl-mangling-mismatch-workaround", cl::init(true), + cl::ReallyHidden, + cl::desc("Enable the workaround for OCL name mangling mismatch.")); + namespace { enum EManglingParam { @@ -826,7 +832,8 @@ public: unsigned AS = UseAddrSpace ? AMDGPULibFuncBase::getAddrSpaceFromEPtrKind(p.PtrKind) : 0; - if (AS != 0) os << "U3AS" << AS; + if (EnableOCLManglingMismatchWA || AS != 0) + os << "U3AS" << AS; Ptr = p; p.PtrKind = 0; } |