[PATCH] Use function attribute "arm-restrict-it"

Eric Christopher echristo at gmail.com
Fri Jun 19 08:58:50 PDT 2015

Hi Renato,

We've always had two options for this sort of thing, just much more
horribly implemented. :)

Basically the backend developers want to be able to override (largely for
debugging purposes) the "default" for whether or not to construct IT
blocks. It's just overriding the source level and it's good that we can do
this without having developers overwrite the source themselves (it could be
quite large).

I've delayed on reviewing this patch because I'm not quite sure how I want
particular target options to be passed to the backend, but in general the
idea of the patch ("allow the backend to override the IR") isn't a bad


On Fri, Jun 19, 2015 at 4:28 AM Renato Golin <renato.golin at linaro.org>

> I'm confused. You removed the back-end option in Clang, but it remains
> here (IT), meaning you now have two identical command line options that do
> things slightly different. The function attributes set IT behaviour on
> every function and the backend option that sets it in a module level.
> This will create a confusing environment on which to develop things and I
> don't want to extend this pattern. If the option needs to be on a function
> basis, than we need to make sure that whatever generates IR does that on a
> function level, and free the backend from having to ponder about module
> level options.
> In summary, IT options must go. :)
> cheers,
> --renato
> http://reviews.llvm.org/D10416
>   http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150619/d673413a/attachment.html>

More information about the llvm-commits mailing list