[PATCH] D22822: Adjust coercion of aggregates on RenderScript

Stephen Hines via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 27 08:18:17 PDT 2016


srhines added a comment.

In https://reviews.llvm.org/D22822#497693, @t.p.northover wrote:

> > I can talk to the rest of the RS team to see if they would mind passing the information differently going forward,
>
>
> It seems like it would improve RenderScript if they could. I'm not sure how common arguments like this are, but pessimizing them would be a shame.
>
> > but existing code/devices has to work this way.
>
>
> If the RenderScript runtime changes that happens without putting this patch into Clang doesn't it?


Actually no. We could fix it for some things going forward, but the Clang that they use will always need some form of this patch for generating IR to run on older devices.

> If you've got IR already then Clang isn't involved, and trying to generate IR to run on an older runtime isn't going to work for many other reasons besides this (LLVM IR isn't compatible like that).


Clang has been involved in generating RS IR for the past 6 years. This patch is merely upstreaming an existing Android-only modification to Clang. I believe this is the last such instance of an Android-specific patch. As far as LLVM IR compatibility, RS has bitcode translation that goes between the present-day in-memory IR representation and generates LLVM 3.2 bitcode (among other things). That part will remain outside of upstream LLVM because it is somewhat separable. This change, however, cannot be made in such a way that it can be layered on top of a pristine version of upstream Clang, hence our reason for upstreaming it.


https://reviews.llvm.org/D22822





More information about the llvm-commits mailing list