GPGPU: Bail out gracefully in case of invalid IR
authorTobias Grosser <tobias@grosser.es>
Mon, 12 Sep 2016 06:06:31 +0000 (06:06 +0000)
committerTobias Grosser <tobias@grosser.es>
Mon, 12 Sep 2016 06:06:31 +0000 (06:06 +0000)
commit5857b701a3bf45baa5fa5ba99fef725615719f6b
tree44cd84ccf795cf840418d5efe6b783435e41b295
parentb6a3b4ba61383774dae692efb5767ffdb23ac36e
GPGPU: Bail out gracefully in case of invalid IR

Instead of aborting, we now bail out gracefully in case the kernel IR we
generate is invalid. This can currently happen in case the SCoP stores
pointer values, which we model as arrays, as data values into other arrays. In
this case, the original pointer value is not available on the device and can
consequently not be stored. As detecting this ahead of time is not so easy, we
detect these situations after the invalid IR has been generated and bail out.

llvm-svn: 281193
polly/lib/CodeGen/PPCGCodeGeneration.cpp
polly/test/GPGPU/invalid-kernel.ll [new file with mode: 0644]