[all-commits] [llvm/llvm-project] 5795a8: [flang] Fix "EQ" comparison of arrays

Pete Steinfeld via All-commits all-commits at lists.llvm.org
Fri Nov 13 15:24:08 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 5795a81cbab879e353299556157dd5fd42cc7857
      https://github.com/llvm/llvm-project/commit/5795a81cbab879e353299556157dd5fd42cc7857
  Author: Peter Steinfeld <psteinfeld at nvidia.com>
  Date:   2020-11-13 (Fri, 13 Nov 2020)

  Changed paths:
    M flang/lib/Evaluate/fold-implementation.h
    M flang/lib/Evaluate/shape.cpp
    A flang/test/Semantics/shape.f90

  Log Message:
  -----------
  [flang] Fix "EQ" comparison of arrays

When comparing arrays whose shapes do not conform, the contant folding
code ran into problems trying to get the value of an extent that did not
exist.  There were actually two problems.  First, the routine
"CheckConformance()" was returning "true" when the compiler was unable
to get the extent of an array.  Second, the function
"ApplyElementwise()" was calling "CheckConformance()" prior to folding
the elements of two arrays, but it was ignoring the return value.

Differential Revision: https://reviews.llvm.org/D91440




More information about the All-commits mailing list