[PPCGCodeGeneration] Skip arrays with empty extent.
authorSiddharth Bhat <siddu.druid@gmail.com>
Tue, 25 Jul 2017 12:35:36 +0000 (12:35 +0000)
committerSiddharth Bhat <siddu.druid@gmail.com>
Tue, 25 Jul 2017 12:35:36 +0000 (12:35 +0000)
commit43f178bbc9c75aea3df73632ae5fb4ca59a96c99
treeb41ccb6bdfb9a977753e874815ddc0eeddee435c
parente4130d52dae7fa7b8f9adb474ecb8a355209549d
[PPCGCodeGeneration] Skip arrays with empty extent.

Invariant load hoisted scalars, and arrays whose size we can statically compute
to be 0 do not need to be allocated as arrays.

Invariant load hoisted scalars are sent to the kernel directly as parameters.

Earlier, we used to allocate `0` bytes of memory for these because our
computation of size from `PPCGCodeGeneration::getArraySize` would result in `0`.

Now, since we don't invariant loads as arrays in PPCGCodeGeneration, this
problem does not occur anymore.

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

llvm-svn: 308971
polly/lib/CodeGen/PPCGCodeGeneration.cpp
polly/test/GPGPU/invariant-load-of-scalar.ll [new file with mode: 0644]