[PATCH] D118785: [flang] Switch return to ExtendedValue in AbstractConverter and Bridge

Valentin Clement via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 2 09:44:40 PST 2022


This revision was automatically updated to reflect the committed changes.
Closed by commit rG415267407db2: [flang] Switch return to ExtendedValue in AbstractConverter and Bridge (authored by clementval).

Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D118785/new/

https://reviews.llvm.org/D118785

Files:
  flang/include/flang/Lower/AbstractConverter.h
  flang/lib/Lower/Bridge.cpp


Index: flang/lib/Lower/Bridge.cpp
===================================================================
--- flang/lib/Lower/Bridge.cpp
+++ flang/lib/Lower/Bridge.cpp
@@ -71,12 +71,13 @@
     return lookupSymbol(sym).getAddr();
   }
 
-  mlir::Value genExprAddr(const Fortran::lower::SomeExpr &expr,
-                          mlir::Location *loc = nullptr) override final {
+  fir::ExtendedValue genExprAddr(const Fortran::lower::SomeExpr &expr,
+                                 mlir::Location *loc = nullptr) override final {
     TODO_NOLOC("Not implemented. Needed for more complex expression lowering");
   }
-  mlir::Value genExprValue(const Fortran::lower::SomeExpr &expr,
-                           mlir::Location *loc = nullptr) override final {
+  fir::ExtendedValue
+  genExprValue(const Fortran::lower::SomeExpr &expr,
+               mlir::Location *loc = nullptr) override final {
     TODO_NOLOC("Not implemented. Needed for more complex expression lowering");
   }
 
Index: flang/include/flang/Lower/AbstractConverter.h
===================================================================
--- flang/include/flang/Lower/AbstractConverter.h
+++ flang/include/flang/Lower/AbstractConverter.h
@@ -78,19 +78,20 @@
   // Expressions
   //===--------------------------------------------------------------------===//
 
+  /// Generate the address of the location holding the expression, someExpr.
+  virtual fir::ExtendedValue genExprAddr(const SomeExpr &,
+                                         mlir::Location *loc = nullptr) = 0;
   /// Generate the address of the location holding the expression, someExpr
-  virtual mlir::Value genExprAddr(const SomeExpr &,
-                                  mlir::Location *loc = nullptr) = 0;
-  /// Generate the address of the location holding the expression, someExpr
-  mlir::Value genExprAddr(const SomeExpr *someExpr, mlir::Location loc) {
+  fir::ExtendedValue genExprAddr(const SomeExpr *someExpr, mlir::Location loc) {
     return genExprAddr(*someExpr, &loc);
   }
 
   /// Generate the computations of the expression to produce a value
-  virtual mlir::Value genExprValue(const SomeExpr &,
-                                   mlir::Location *loc = nullptr) = 0;
+  virtual fir::ExtendedValue genExprValue(const SomeExpr &,
+                                          mlir::Location *loc = nullptr) = 0;
   /// Generate the computations of the expression, someExpr, to produce a value
-  mlir::Value genExprValue(const SomeExpr *someExpr, mlir::Location loc) {
+  fir::ExtendedValue genExprValue(const SomeExpr *someExpr,
+                                  mlir::Location loc) {
     return genExprValue(*someExpr, &loc);
   }
 


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D118785.405317.patch
Type: text/x-patch
Size: 2686 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20220202/3afe6603/attachment.bin>


More information about the llvm-commits mailing list