[polly][vectorizer] do not emit bitcast i32** to <1 x i32*>*
Tobias Grosser
tobias at grosser.es
Mon Oct 7 08:10:13 PDT 2013
On 10/07/2013 04:27 PM, Sebastian Pop wrote:
> Hi,
>
> I would like to commit a patch from Zino solving several ICEs when compiling the
> nightly testsuite with polly's vector backend: -mllvm -polly-vectorizer=polly
> Tested on the nightly.
>
> The ICE looks like this:
> lib/IR/Instructions.cpp:2929: llvm::BitCastInst::BitCastInst(llvm::Value *, llvm::Type *, const llvm::Twine &, llvm::Instruction *): Assertion `castIsValid(getOpcode(), S, Ty) && "Illegal BitCast"' failed.
>
> The ICE appears very often during the compilation of the nightly testsuite (with CPU2000 and CPU2006):
> $ cat llvm-master-3706eda-clang-master-d815b3a-polly-master-b99acd7/runme.testsuite.2013_09_24_16_51_27.log | grep "Illegal BitCast" | wc -l
> 34
>
> The attached patch fixes all these ICEs. Ok to commit?
Hi Sebastian,
thanks for the patches.
Here some comments:
1) Bitcast patch
The patch goes definitely in the right direction. However, it would be
nice if you could besides modifying the existing test cases also provide
a test cases that fail without these changes.
2) Remove -polly-cloog
By removing -polly-cloog you basically disable this test. As we should
not use -polly-cloog in test/ScopInfo, disabling this test may make
sense. However, then please remove the entire file.
3) Replace -polly-codegen with -polly-codegen-isl
LGTM.
Thanks,
Tobias
More information about the llvm-commits
mailing list