On 13 May 2013 10:59, Renato Golin <renato.golin at linaro.org> wrote:> Hi Rafael, > > As you mentioned in the bug, we should only apply this change when > hard-float is set, which it is by default on armv7a, I presume. > > From that part of the code, I can infer that by the time > "MaxAtomicPromoteWidth = 64;", the variable SoftFloat is not properly set, > so a simple "if (!SoftFloat)" won't cut in there. It seems SoftFloat is > being set on HandleTargetFeatures() which is a virtual method, probably > called indirectly. Do you have a better place to set MaxAtomicInlineWidth > 64?I have asked on #gcc what gcc does. I have posted a detailed description in the bug, but the summary is that there is some cooperation with the kernel going on that should make it safe to set MaxAtomicInlineWidth to 64 when targeting linux armv6 or newer. Hard float using it then just becomes a consequence of it implying armv7. I know think we need something like the attached patch (with tests and comments added). Cheers, Rafael -------------- next part -------------- A non-text attachment was scrubbed... Name: t.patch Type: application/octet-stream Size: 1135 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130513/d36a4baf/attachment.obj>
On 13 May 2013 18:38, Rafael Espíndola <rafael.espindola at gmail.com> wrote:> I know think we need something like the attached patch (with tests and > comments added). >I was afraid you were going to suggest that... ;) If that's the consensus, than I'll merge our patches, test and commit. cheers, --renato -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130513/065fa671/attachment.html>
On 13 May 2013 13:55, Renato Golin <renato.golin at linaro.org> wrote:> On 13 May 2013 18:38, Rafael Espíndola <rafael.espindola at gmail.com> wrote: >> >> I know think we need something like the attached patch (with tests and >> comments added). > > > I was afraid you were going to suggest that... ;) > > If that's the consensus, than I'll merge our patches, test and commit.Thanks! Cheers, Rafael
> I have asked on #gcc what gcc does. I have posted a detailed > description in the bug, but the summary is that there is some > cooperation with the kernel going on that should make it safe to set > MaxAtomicInlineWidth to 64 when targeting linux armv6 or newer. Hard > float using it then just becomes a consequence of it implying armv7. > > I know think we need something like the attached patch (with tests and > comments added).OK. The attached patch has comments and a test. Renato, what do you think? I am currently building it on a chromebook to make sure if fixes the bootstrap, but that will take some time. Cheers, Rafael -------------- next part -------------- A non-text attachment was scrubbed... Name: t.patch Type: application/octet-stream Size: 2109 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130513/8d81dcab/attachment.obj>
On 13 May 2013 19:54, Rafael Espíndola <rafael.espindola at gmail.com> wrote:> Renato, what do you think? I am currently building it on a chromebook > to make sure if fixes the bootstrap, but that will take some time. >There's also the test that fails, which I have in my patch. It should fail to you too. Maybe we should also test armv5 on your test, to make sure the behaviour remains different (and documented). I'm applying your patch to my tree now and will let you know. cheers, --renato -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130513/973fb29f/attachment.html>
Shouldn't you also support Thumb? And what about after v7 (e.g. v8) which AFAIK also supports these? On Mon, May 13, 2013 at 11:54 AM, Rafael Espíndola < rafael.espindola at gmail.com> wrote:> > I have asked on #gcc what gcc does. I have posted a detailed > > description in the bug, but the summary is that there is some > > cooperation with the kernel going on that should make it safe to set > > MaxAtomicInlineWidth to 64 when targeting linux armv6 or newer. Hard > > float using it then just becomes a consequence of it implying armv7. > > > > I know think we need something like the attached patch (with tests and > > comments added). > > OK. The attached patch has comments and a test. > > Renato, what do you think? I am currently building it on a chromebook > to make sure if fixes the bootstrap, but that will take some time. > > Cheers, > Rafael > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130513/524c1ed8/attachment.html>