[cfe-dev] Scalar operand type has greater rank than the type of the vector element

Akira Hatanaka via cfe-dev cfe-dev at lists.llvm.org
Tue Apr 25 15:48:08 PDT 2017


It looks like the scalar type and the vector element type are checked in tryVectorConvertAndSplat, but the function only tells whether the conversion succeeded or failed, not the reason it failed. I think the diagnostic clang currently shows is misleading.

> On Apr 25, 2017, at 6:51 AM, Churaev, Egor via cfe-dev <cfe-dev at lists.llvm.org> wrote:
> 
> Hi all!
>  
> I attached test file. In the test we have diagnostic message with the following text: “scalar operand type has greater rank than the type of the vector element. ('float2' (vector of 2 'float' values) and 'double')”.
> If we run this test on the ToT then we get another diagnostic with the following message: “cannot convert between vector values of different size ('float2' (vector of 2 'float' values) and 'double')”.
>  
> I think that the diagnostic on the ToT is wrong because in the code we don’t have two vectors, we have one vector and one scalar. In the OpenCL V2.0 6.2.6.p2 is written that “An error shall occur if any scalar operand has greater rank than the type of the vector element.”.
> I have a patch where this diagnostic was implemented.
> Should I commit this patch to ToT or it doesn’t matter which diagnostic we will get in this case?
>  
> Best regards,
> Egor
>  
> 
> --------------------------------------------------------------------
> Joint Stock Company Intel A/O
> Registered legal address: Krylatsky Hills Business Park, 
> 17 Krylatskaya Str., Bldg 4, Moscow 121614, 
> Russian Federation
> 
> 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.
> 
> <arithmetic-conversions.cl>_______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org <mailto:cfe-dev at lists.llvm.org>
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev <http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20170425/eb16f09d/attachment.html>


More information about the cfe-dev mailing list