This patch restricts moving dynamic arrays to heap to arrays with all dynamic dimensions only
(i.e fir.array<?x?xf64> but not fir.array<5x?xf64>).
The patch also enables -fdynamic-heap-array flag by default.
Context: An issue was observed in 503.bwaves_r, where a function having an alloca with a dynamic size was not being inlined in LLVM. Converting to heap-arrays enables inlining.
Please change the default value in a separate commit. I also think that such a change has to be accompanied with at least some performance data for the major benchmarks, e.g. a summary of regressions/improvements caused by this change would be useful.