osmo-trx/Transceiver52M
Eric Wild 621a49eb69 ms: adjust float<->integral type conversion
Given integral type A and non integral type B and depending on rounding
mode, optimization, compiler, and phase of the moon A(A)*B != A(A*B) so
split the two cases.

While at it, also make the template automagically work for complex types
instead of requiring manual casts, the general idea here is to allow
inlining and vectorization by treating all args as plain arrays, which is fine.

This works as expected with -tune=native, x64 implies sse2, and we do not
target any neon-less arm versions either.

Clang only array length hints can improve this even more.

Change-Id: I93f077f967daf2ed382d12cc20a54846b3688634
2023-03-02 18:22:37 +01:00
..
arch treewide: remove FSF address 2021-12-14 12:23:00 +01:00
device ipc: remove old autotools workaround 2022-12-23 15:37:27 +01:00
grgsm_vitac ms-trx support 2022-12-23 13:41:13 +00:00
ms ms: adjust float<->integral type conversion 2023-03-02 18:22:37 +01:00
Channelizer.cpp Fix common misspellings and typos 2019-10-17 08:06:19 +00:00
Channelizer.h mcbts: Add multi-ARFCN channelizing filters 2016-07-01 03:07:27 -07:00
ChannelizerBase.cpp ChannelizerBase: Fix memory leak 2021-01-18 11:39:24 +00:00
ChannelizerBase.h Fix common misspellings and typos 2019-10-17 08:06:19 +00:00
Complex.h ms: adjust float<->integral type conversion 2023-03-02 18:22:37 +01:00
Makefile.am ms-trx support 2022-12-23 13:41:13 +00:00
Resampler.cpp treewide: remove FSF address 2021-12-14 12:23:00 +01:00
Resampler.h treewide: remove FSF address 2021-12-14 12:23:00 +01:00
Synthesis.cpp Add SPDX annotation 2019-07-22 12:06:26 +02:00
Synthesis.h mcbts: Add multi-ARFCN channelizing filters 2016-07-01 03:07:27 -07:00
Transceiver.cpp clean up mutex, scopedlock, and signal classes 2022-12-23 13:41:30 +00:00
Transceiver.h clean up mutex, scopedlock, and signal classes 2022-12-23 13:41:30 +00:00
osmo-trx.cpp ctrl: take both address and port from vty config 2022-12-17 21:26:49 +03:00
proto_trxd.c proto_trxd: cosmetic: 'if' is not a function, add space 2020-09-11 21:03:08 +07:00
proto_trxd.h Run struct_endianness.py 2023-02-20 10:53:48 +01:00
radioBuffer.cpp clean up mutex, scopedlock, and signal classes 2022-12-23 13:41:30 +00:00
radioBuffer.h radioBuffer: Remove extra ; at the end of inline function definitions. 2017-03-20 18:41:02 +00:00
radioClock.cpp Add SPDX annotation 2019-07-22 12:06:26 +02:00
radioClock.h Add SPDX annotation 2019-07-22 12:06:26 +02:00
radioInterface.cpp clean up mutex, scopedlock, and signal classes 2022-12-23 13:41:30 +00:00
radioInterface.h clean up mutex, scopedlock, and signal classes 2022-12-23 13:41:30 +00:00
radioInterfaceMulti.cpp radio interface: fix init 2023-01-09 20:17:46 +01:00
radioInterfaceResamp.cpp radio interface: fix init 2023-01-09 20:17:46 +01:00
radioVector.cpp rename noisevector class -> avgvector 2022-11-30 16:40:42 +01:00
radioVector.h rename noisevector class -> avgvector 2022-11-30 16:40:42 +01:00
sigProcLib.cpp computeCI: Document hardcoded multiplier 2021-09-03 13:52:02 +02:00
sigProcLib.h sigProcLib: fix C/I computation for 8-PSK modulated bursts 2021-02-04 20:44:51 +01:00
signalVector.cpp cosmetic: fix several typos found by codespell 2020-02-25 17:03:00 +01:00
signalVector.h SigProcLib: Improve Vector buffer allocation mess 2018-12-05 19:41:34 +00:00