aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/TargetParser.cpp
diff options
context:
space:
mode:
authorYaxun (Sam) Liu <yaxun.liu@amd.com>2021-06-07 15:01:25 -0400
committerYaxun (Sam) Liu <yaxun.liu@amd.com>2021-06-08 10:24:44 -0400
commit054cc3b1b469de4b0cb25d1dc3af43c679c5dc44 (patch)
tree517a9ea3a00439c71f516d6c0ee5c53b5d9959f9 /llvm/lib/Support/TargetParser.cpp
parent7f6c878a2c035eb6325ab228d9bc2d257509d959 (diff)
downloadllvm-054cc3b1b469de4b0cb25d1dc3af43c679c5dc44.zip
llvm-054cc3b1b469de4b0cb25d1dc3af43c679c5dc44.tar.gz
llvm-054cc3b1b469de4b0cb25d1dc3af43c679c5dc44.tar.bz2
[CUDA][HIP] Fix store of vtbl in ctor
vtbl itself is in default global address space. When clang emits ctor, it gets a pointer to the vtbl field based on the this pointer, then stores vtbl to the pointer. Since this pointer can point to any address space (e.g. an object created in stack), this pointer points to default address space, therefore the pointer to vtbl field in this object should also be in default address space. Currently, clang incorrectly casts the pointer to vtbl field in this object to global address space. This caused assertions in backend. This patch fixes that by removing the incorrect addr space cast. Reviewed by: Artem Belevich Differential Revision: https://reviews.llvm.org/D103835
Diffstat (limited to 'llvm/lib/Support/TargetParser.cpp')
0 files changed, 0 insertions, 0 deletions