Merge pull request #1110 from emankov/master
[HIPIFY][fix][#1109] Do not preserve extern __shared__ for IncompleteArrayType
Этот коммит содержится в:
@@ -352,7 +352,7 @@ bool HipifyAction::cudaSharedIncompleteArrayVar(const clang::ast_matchers::Match
|
||||
}
|
||||
|
||||
if (!typeName.empty()) {
|
||||
clang::SourceLocation slStart = llcompat::getBeginLoc(sharedVar->getTypeSourceInfo()->getTypeLoc());
|
||||
clang::SourceLocation slStart = sharedVar->getOuterLocStart();
|
||||
clang::SourceLocation slEnd = llcompat::getEndLoc(sharedVar->getTypeSourceInfo()->getTypeLoc());
|
||||
clang::SourceManager* SM = Result.SourceManager;
|
||||
size_t repLength = SM->getCharacterData(slEnd) - SM->getCharacterData(slStart) + 1;
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
__global__ void dynamicReverse(int *d, int n)
|
||||
{
|
||||
// Dynamic shared memory
|
||||
// CHECK-NOT: extern __shared__
|
||||
// CHECK: HIP_DYNAMIC_SHARED(int, s);
|
||||
extern __shared__ int s[];
|
||||
int t = threadIdx.x;
|
||||
|
||||
@@ -8,6 +8,8 @@
|
||||
|
||||
__global__ void staticReverse(int *d, int n)
|
||||
{
|
||||
// CHECK-NOT: HIP_DYNAMIC_SHARED(int, s);
|
||||
// CHECK: __shared__ int s[64];
|
||||
__shared__ int s[64];
|
||||
int t = threadIdx.x;
|
||||
int tr = n-t-1;
|
||||
|
||||
Ссылка в новой задаче
Block a user