<p><a href="https://gerrit.osmocom.org/c/libosmocore/+/19372">View Change</a></p><p>5 comments:</p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/c/libosmocore/+/19372/1//COMMIT_MSG">Commit Message:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/libosmocore/+/19372/1//COMMIT_MSG@7">Patch Set #1, Line 7:</a> <code style="font-family:monospace,monospace">libomsocoding</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">Actually, it's not really libosmocoding. […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">I know, but the user of this code is libosmocoding, so this speds up libosmocoding, and therefore provides a more precise description of what now has neon support.</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/libosmocore/+/19372/1//COMMIT_MSG@14">Patch Set #1, Line 14:</a> <code style="font-family:monospace,monospace">performance impact, so it needs to be enabled manually.</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">I don't get what do you mean here. […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Just like the special rach case neon can be bad, i.e. on a cortex a8 with in-order dual issue pipeline neon performance is abysmal.</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/libosmocore/+/19372/1//COMMIT_MSG@11">Patch Set #1, Line 11:</a> </p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;"><pre style="font-family: monospace,monospace; white-space: pre-wrap;">Although autodetection according to __ARM_NEON would work because this<br>is only defined if the fpu is neon neon-fp16 neon-vfpv3 eon-vfpv4<br>neon-fp-armv8 crypto-neon-fp-armv8 doing that would lead to a unknown<br>performance impact, so it needs to be enabled manually.<br></pre></blockquote></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">I don't like this kind of approach. […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">SS(S)E/AVX is a cpu feature set that differs depending on bits provided by the cpu in a reg (and the knowledge that x64 means at least SSE2), NEON is a compile time target specific fpu and fp api configuration that is eternally set in stone at compile time. Detection would therefore happen at compile time.</p><p style="white-space: pre-wrap; word-wrap: break-word;">Mixing neon and the fpu is bad, as is neon on a dual issue in-order cortex a8, so there are valid reason why it should not just be enabled.</p><p style="white-space: pre-wrap; word-wrap: break-word;">That being said it's the users or devices fault, I'm fine with just turning it on.</p></li></ul></li><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/c/libosmocore/+/19372/1/src/Makefile.am">File src/Makefile.am:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/libosmocore/+/19372/1/src/Makefile.am@53">Patch Set #1, Line 53:</a> <code style="font-family:monospace,monospace">no, could as well be vfp with neon</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">Is it a comment or a part of AM_CFLAGS?</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">Just a reminder why adding explicit flags for neon instead or reyling upon the cflags provided by the build environment is a bad idea.</p></li></ul></li><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/c/libosmocore/+/19372/1/src/conv_acc_neon_impl.h">File src/conv_acc_neon_impl.h:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/libosmocore/+/19372/1/src/conv_acc_neon_impl.h@26">Patch Set #1, Line 26:</a> <code style="font-family:monospace,monospace">/* Some distributions (notably Alpine Linux) for some strange reason</code></p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;">In my linux (ArchLinux) __always_inline is defined in /usr/include/linux/stddef.h. […]</blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">This is a copy from the sse files and I see no reason to question this or waste time tracking it down..</p></li></ul></li></ul><p>To view, visit <a href="https://gerrit.osmocom.org/c/libosmocore/+/19372">change 19372</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/libosmocore/+/19372"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: libosmocore </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I58ff2cb4ce3514f43390ff0a2121f81e6a4983b5 </div>
<div style="display:none"> Gerrit-Change-Number: 19372 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Hoernchen <ewild@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Hoernchen <ewild@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-Reviewer: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-CC: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Gerrit-Comment-Date: Thu, 23 Jul 2020 10:43:40 +0000 </div>
<div style="display:none"> Gerrit-HasComments: Yes </div>
<div style="display:none"> Gerrit-Has-Labels: No </div>
<div style="display:none"> Comment-In-Reply-To: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Comment-In-Reply-To: pespin <pespin@sysmocom.de> </div>
<div style="display:none"> Comment-In-Reply-To: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-MessageType: comment </div>