mirror of
https://github.com/intel/llvm.git
synced 2026-01-13 10:56:08 +08:00
[flang][cuda] Do not fail if global is not found (#163445)
This commit is contained in:
committed by
GitHub
parent
5ef56f1d15
commit
7b10e977f8
@@ -179,11 +179,13 @@ struct AddrOfOpConversion : public fir::FIROpConversion<fir::AddrOfOp> {
|
||||
|
||||
if (auto gpuMod = addr->getParentOfType<mlir::gpu::GPUModuleOp>()) {
|
||||
auto global = gpuMod.lookupSymbol<mlir::LLVM::GlobalOp>(addr.getSymbol());
|
||||
assert(global && "Expect global in gpu module");
|
||||
replaceWithAddrOfOrASCast(rewriter, addr->getLoc(), global.getAddrSpace(),
|
||||
getProgramAddressSpace(rewriter),
|
||||
global.getSymName(),
|
||||
convertType(addr.getType()), addr);
|
||||
replaceWithAddrOfOrASCast(
|
||||
rewriter, addr->getLoc(),
|
||||
global ? global.getAddrSpace() : getGlobalAddressSpace(rewriter),
|
||||
getProgramAddressSpace(rewriter),
|
||||
global ? global.getSymName()
|
||||
: addr.getSymbol().getRootReference().getValue(),
|
||||
convertType(addr.getType()), addr);
|
||||
return mlir::success();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user