[PATCH] D91443: [flang] Unsplit COMPLEX operations

Peter Klausler via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 13 09:49:26 PST 2020


klausler created this revision.
klausler added a reviewer: jeanPerier.
klausler added a project: Flang.
Herald added subscribers: llvm-commits, jdoerfert.
Herald added a project: LLVM.
klausler requested review of this revision.

COMPLEX negation, addition, subtraction, conversions of kind, and
equality/inequality were represented as component-wise REAL
operations.  It turns out to be easier for lowering if we
do not split and recombine these COMPLEX operations, and it
avoids a potential problem with COMPLEX valued function calls
in these contexts.  So add this suite of operations to the
typed expression representation in place of the component-wise
transformations, and support them in folding.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D91443

Files:
  flang/include/flang/Evaluate/expression.h
  flang/include/flang/Evaluate/tools.h
  flang/lib/Evaluate/fold-implementation.h
  flang/lib/Evaluate/fold-logical.cpp
  flang/lib/Evaluate/formatting.cpp
  flang/lib/Evaluate/tools.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D91443.305200.patch
Type: text/x-patch
Size: 13639 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201113/9a8eeaf8/attachment.bin>


More information about the llvm-commits mailing list