38class FIROpenACCSupportAnalysis {
40 FIROpenACCSupportAnalysis() =
default;
42 std::string getVariableName(mlir::Value v);
44 std::string getRecipeName(mlir::acc::RecipeKind kind, mlir::Type type,
47 mlir::InFlightDiagnostic emitNYI(mlir::Location loc,
48 const mlir::Twine &message);
50 bool isValidSymbolUse(mlir::Operation *user, mlir::SymbolRefAttr symbol,
51 mlir::Operation **definingOpPtr);
53 bool isValidValueUse(mlir::Value v, mlir::Region ®ion);
55 std::optional<mlir::acc::TypeSizeAndAlignment>
56 getTypeSizeAndAlignment(mlir::Type ty, mlir::ModuleOp module,
57 mlir::acc::OpenACCSupport &support);