[llvm] r246371 - New interface function is added to VectorUtils
James Molloy via llvm-commits
llvm-commits at lists.llvm.org
Sun Aug 30 03:48:04 PDT 2015
Hi Elena,
Firstly, it looks like your patch *fixes* a bug: the previous code didn't
check that the InsertVectorElt it found was actually inserting into lane
zero. Could a testcase be added to check this?
Secondly there are some coding style problems here:
+llvm::ConstantDataVector *CV = dyn_cast<llvm::ConstantDataVector>(V);
+if (CV)
+return CV->getSplatValue();
(And several other places): This would be more idiomatically written as:
if (auto *CV = dyn_cast<ConstantDataVector>(V))
return CV->getSplatValue();
There are other places where you needlessly use the llvm:: namespace prefix
too.
+ // All-zero (our undef) shuffle mask elements.
s/our/or.
for (int i : ShuffleInst->getShuffleMask())
We idiomatically use capitals for our loop induction variables.
if (i != 0 && i != -1)
The function should have a comment stating that it will only detect splats
that insert into the zero'th element of the left-hand vector (idiomatic
splats). The function could easily be made to detect non-idiomatic splats
too, but as long as the function says it explicitly that's good enough, I
think.
llvm::InsertElementInst *InsertEltInst =
dyn_cast<llvm::InsertElementInst>(ShuffleInst->getOperand(0));
You don't need to use llvm::, and you can use auto to shorten the line.
Cheers,
James
On Sun, 30 Aug 2015 at 11:39 Demikhovsky, Elena via llvm-commits <
llvm-commits at lists.llvm.org> wrote:
> I'm sure that it is unrelated. I just added an additional function that
> nobody uses yet.
> How should I check this?
>
> - Elena
>
> -----Original Message-----
> From: Renato Golin [mailto:renato.golin at linaro.org]
> Sent: Sunday, August 30, 2015 13:07
> To: Demikhovsky, Elena
> Cc: LLVM Commits
> Subject: Re: [llvm] r246371 - New interface function is added to
> VectorUtils
>
> On 30 August 2015 at 08:28, Elena Demikhovsky via llvm-commits <
> llvm-commits at lists.llvm.org> wrote:
> > Author: delena
> > Date: Sun Aug 30 02:28:18 2015
> > New Revision: 246371
> >
> > URL: http://llvm.org/viewvc/llvm-project?rev=246371&view=rev
> > Log:
> > New interface function is added to VectorUtils
>
> Hi Elena,
>
> Some issue with paq8p:
>
> TIMING OUT PROCESS: Output/paq8p.simple
> error: child terminated by signal 9
> TEST Output/paq8p.simple FAILED: process terminated by signal (exit status
> 137)!
>
> I'm also getting segfaults when I run it manually.
>
> http://lab.llvm.org:8011/builders/clang-cmake-aarch64-full/builds/106
>
> I've open PR24627 and have reverted in r246379.
>
> We shall investigate this offline.
>
> cheers,
> --renato
> ---------------------------------------------------------------------
> Intel Israel (74) Limited
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150830/8098e0fe/attachment.html>
More information about the llvm-commits
mailing list