MLIR 24.0.0git
ROCDLTargetInfo.cpp File Reference
#include "mlir/Dialect/LLVMIR/ROCDLTargetInfo.h"
#include "mlir/Dialect/LLVMIR/LLVMDialect.h"
#include "mlir/Dialect/LLVMIR/ROCDLDialect.h"
#include "mlir/IR/Builders.h"
#include "llvm/ADT/SmallVector.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/Twine.h"

Go to the source code of this file.

Functions

static LogicalResult fail (function_ref< InFlightDiagnostic()> emitError, const Twine &message)
 Reports message through emitError if it is non-null, and returns failure.
static LogicalResult resolveWavefrontSize (AMDGPU::AMDGPUFeatureBitset &bits, unsigned waveSize, function_ref< InFlightDiagnostic()> emitError)
 Pins the wavefront size in bits, mirroring the policy LLVM applies in fillAMDGCNFeatureMap: a target that only runs at one size rejects a request for the other, and a target that runs at either defaults to wave32.

Function Documentation

◆ fail()

LogicalResult fail ( function_ref< InFlightDiagnostic()> emitError,
const Twine & message )
static

Reports message through emitError if it is non-null, and returns failure.

Definition at line 25 of file ROCDLTargetInfo.cpp.

References mlir::emitError().

Referenced by mlir::ROCDL::TargetInfo::get(), and resolveWavefrontSize().

◆ resolveWavefrontSize()

LogicalResult resolveWavefrontSize ( AMDGPU::AMDGPUFeatureBitset & bits,
unsigned waveSize,
function_ref< InFlightDiagnostic()> emitError )
static

Pins the wavefront size in bits, mirroring the policy LLVM applies in fillAMDGCNFeatureMap: a target that only runs at one size rejects a request for the other, and a target that runs at either defaults to wave32.

Definition at line 53 of file ROCDLTargetInfo.cpp.

References mlir::emitError(), fail(), and success().

Referenced by mlir::ROCDL::TargetInfo::get().