New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Overzealous inline opitimizations? #1952
Comments
No, because "best" is not a well-defined term here. You see that
At this point, FTL isn't meant to be compiled with TL;DR: Compiling for size comes at a measurable speed penalty. So far, this isn't a really supported configuration and I would not speak about "overzealous" in this context just because we give the compiler hints it cannot know itself. *) not only our manual inlining instructions are removed, but also function/jump/labels/loops alignment, prefetching of loop arrays, and reordering of block algorithms, which can greatly reduce branch mis-prediction in the exectuable |
I beg to differ, but your point does stand. My accesspoint that has 8 mb of flash and 128 mb of ram running openwrt doesn't have 'space to burn' no matter how cheap it is. Also, So there certainly is still usage for Os in certain scenario's. However as I said, your point does stand and I do agree with it for the most part. ;)
I'm more then happy to accept that you know what you are doing :) no need to prove anything :p
And that's perfectly fine! So the answer to my question is 'no, we know what we are doing'. And that's great :) I should have potentially given more context, and that is I was trying to use the CMake target That means, that Line 106 in 8943e26
-Winline for that target (could we put -Wnonline there? or increase the inline warning limit (to which I had no success with so far).
Well then you conclude say we should actually remove
👍 |
Ah, yes. We do not "support" any embedded devices out of the box so that's why I haven't thought about them. Sure, there are so many different devices out there that not everyone will have a USB port or whatsover with which you could extend storage for the hundreds GBs with only couple of dollars. This context indeed sheds another light on your endeavor - one which I can easily follow.
I have no objections. A quick look on The Pi-hole team itself solely uses the |
Hi, (newbiew here) |
@DL6ER so for me, I'm just building with So I'll leave this issue open and you can close it with whatever solution you feel fits best. |
Versions
Compiling FTL with a recent GCC and the 'MinSizeRel' CMake target (e.g. -Os) triggers a lot of
like errors.
Here, GCC is basically telling us 'look, you wanted to inline this, but it's less efficient but you are asking to do
-Os
.Should we force inline functions at all, or should gcc figure things out by itself with
-Os
and-O3
. Generally the idea is 'do not inline, let the compiler figure it out, it knows best.The text was updated successfully, but these errors were encountered: