[flang-commits] [flang] [flang][rfc] Add represention of volatile references (PR #132486)

Slava Zakharin via flang-commits flang-commits at lists.llvm.org
Mon Mar 24 12:24:18 PDT 2025


================
@@ -1057,18 +1062,38 @@ unsigned fir::RecordType::getFieldIndex(llvm::StringRef ident) {
 // ReferenceType
 //===----------------------------------------------------------------------===//
 
-// `ref` `<` type `>`
+// `ref` `<` type (`, volatile` $volatile^)? `>`
 mlir::Type fir::ReferenceType::parse(mlir::AsmParser &parser) {
-  return parseTypeSingleton<fir::ReferenceType>(parser);
+  if (parser.parseLess())
----------------
vzakhari wrote:

`DefaultValuedParameter` seems to work for `LLVMPointerType`:
```
  let parameters = (ins DefaultValuedParameter<"unsigned", "0">:$addressSpace);
  let assemblyFormat = [{
    (`<` $addressSpace^ `>`)?
  }];
```

No need for `UnitAttr`, I think.

https://github.com/llvm/llvm-project/pull/132486


More information about the flang-commits mailing list