akallabeth
c87b2cc93d
[primitives,copy] revert single memcpy
...
copying the while image messes up as the src and destination strides not
necessarily align. (reverts 1a58e74c17
)
2024-07-05 14:35:21 +02:00
akallabeth
b1355471c5
[cmake,intrinsics] fix NEON detection
...
* detect 32bit ARM architectures
* do not set -mfpu=neon for 64 bit architectures
2024-07-05 09:45:34 +02:00
Armin Novak
3c41de6382
[cmake] move intrinsic support to file
...
Create DetectIntrinsicSupport.cmake to unify intrinsic detection and use
2024-07-04 13:25:40 +02:00
Martin Fleisz
a01639e3c4
Merge pull request #10304 from akallabeth/neon-sse-guard
...
Neon sse guard
2024-06-25 11:52:27 +02:00
akallabeth
8020efcd0b
[primitives,codec] guard NEON code with platform
...
NEON optimized code might be used in multiarch/universal builds.
So not only guard with WITH_NEON but also with architecture defines from
winpr/platform.h
2024-06-25 10:00:41 +02:00
akallabeth
896ea3c445
[primitives,codec] guard SSE code with platform
...
SSE optimized code might be used in multiarch/universal builds.
So not only guard with WITH_SSE2 but also with architecture defines from
winpr/platform.h
2024-06-25 09:56:52 +02:00
akallabeth
26e570e9fe
[cmake] unify clang detection
...
* Move Clang detection to own CMake file
* Check for Clang and AppleClang
* Use CMAKE_COMPILER_IS_CLANG to check for Clang in code
2024-06-25 09:09:50 +02:00
akallabeth
889dff4f55
[primitives] log initialization
2024-06-18 08:52:28 +02:00
akallabeth
3cecd1de06
[primitives] refactor, split sse/neon/opencl
2024-06-17 13:15:14 +02:00
akallabeth
eedb5590b2
[primitives,copy] add fallback path
...
color format conversions that do not have an accelerated implementation
are now handled by generic pixel copy
2024-06-17 09:13:47 +02:00
akallabeth
311068e605
[primitives] add image copy primitive
...
* move freerdp_image_copy_no_overlap implementation to primitives
* add SSE4.1 and AVX2 optimizations
2024-06-11 13:26:06 +02:00
akallabeth
e8cca22d2a
[cmake] refactor libfreerdp
...
* Move codec and primitives to own CMakeLists.txt
* Add freerdp_object_library_add
* add freerdp_compile_options_add
2024-06-11 09:44:05 +02:00
akallabeth
a5bb0bf203
[primitives] add lShiftC_16s_inplace
2024-06-08 08:34:21 +02:00
akallabeth
dee9019e7c
[codec,progressive] use add_16s_inplace
2024-06-08 08:34:18 +02:00
akallabeth
cd72043811
[primitives,ipp] remove remaining IPP defines
2024-06-08 08:34:15 +02:00
akallabeth
f19098da83
[primitives,prim_add] add new add_16s_inplace
2024-06-08 08:34:11 +02:00
akallabeth
71e78bedd7
[warnings] fixed sign and const
...
* fix various char/BYTE sign warnings
* fix various const warnings
* fix format string size_t
* remove unused CMake variables
2024-04-18 11:05:58 +02:00
akallabeth
0a0df77c39
[build,ipp] drop support for IPP
...
Intel Performance Primitives do not have a test setup in FreeRDP and
most likely no longer compile.
2024-04-16 12:44:38 +02:00
akallabeth
4732f379d4
[winpr,sysinfo] unify time function use
...
* Add new function winpr_GetTickCount64NS for high resolution tick
count with (up to) nanosecond resolution
* Add new function winpr_GetUnixTimeNS for high resolution system time
as nanoseconds since 1.1.1970
* Replace use of clock_gettime and gettimeofday in whole project with
these new functions
* Add new macros WINPR_TIME_NS_TO_* and WINPR_TIME_NS_REM_* to convert
the nano second count to less resolution or get the remainder in the
desired resolution
2024-03-11 09:54:10 +01:00
akallabeth
37792c0a37
[ci,primitives] enable NEON on iOS builds
...
* Enable WITH_NEON=ON for iOS builds
* Fix a undeclared variable issue with NEON builds
2024-03-08 14:10:53 +01:00
akallabeth
acedd305d3
fixed unused-but-set-variable warnings
2024-02-22 12:31:50 +01:00
akallabeth
05e555feb7
fixed unused-variable warnings
2024-02-22 12:31:50 +01:00
akallabeth
43eae6029f
[clang-tidy] fix various review warnings
2024-02-22 12:31:50 +01:00
akallabeth
d7ebec5a65
[tidy] move loop variable declaration to loop
2024-02-22 12:31:50 +01:00
akallabeth
d76fcd2364
[primitives,opencl] fix alpha handling
2024-02-19 12:29:37 +01:00
akallabeth
1a42cf4f26
[tests,primitives] make error message more verbose
2024-02-19 12:29:37 +01:00
akallabeth
e8194a8fa3
[primitives,opencl] fix warnings
2024-02-19 12:29:37 +01:00
akallabeth
0ba995655d
[clang-tidy] cppcoreguidelines-init-variables
2024-02-15 11:49:16 +01:00
akallabeth
207def5c56
[clang-tidy] readability-isolate-declaration
2024-02-15 11:49:16 +01:00
Armin Novak
10e3942993
[primitives] skip benchmarking if only one available
2023-12-20 07:27:43 +01:00
akallabeth
1b31852d32
[git] remove .gitignore
...
we do no longer allow in source builds, so remove all the .gitignore
files just hiding generated files
2023-11-28 12:14:55 +01:00
akallabeth
1d21c0c609
[warnings] properly cast constants to char
2023-10-17 11:07:11 +02:00
Armin Novak
517ca5c714
[primitives] fix neon use of WINPR_RESTRICT
2023-09-11 10:04:56 +02:00
akallabeth
e04e28def9
[primitives,yuv] clean up code, assert arguments
2023-08-28 14:26:10 +02:00
akallabeth
3dcd702676
[primitives,yuv] use WINPR_RESTRICT
2023-08-25 14:13:30 +02:00
akallabeth
7a71441476
[warnings] fix integer multiplications
...
Ensure the integer width for size arguments is 64bit in a
multiplication. Leading 64bit constant 1ull expands width, a trailing
one is ignored.
2023-08-22 11:55:00 +02:00
Armin Novak
1e0ca536c7
[ci,nightly] use internal MD4, MD5 and RC4 on windows
2023-07-28 13:42:12 +02:00
Armin Novak
6c6eaf5144
[primitives,yuv] fix pointer cast warnings
2023-07-28 13:42:12 +02:00
akallabeth
2d16985d68
[primitives] fix typo, reading wrong buffer
2023-06-29 18:34:51 +02:00
akallabeth
1fc0d5b4b1
[winpr] remove casts for winpr_RAND calls
2023-06-21 09:57:52 +02:00
Armin Novak
a4c6b36a19
[build] fix memory sanitizer stack frame warnings
2023-06-07 09:14:45 +02:00
akallabeth
1c63284372
[primitives,tests] use winpr_alinged_calloc
2023-03-28 11:34:52 +02:00
akallabeth
ee07a13130
[cleanup] fix compiler warnings
2023-01-26 09:30:17 +01:00
akallabeth
82ba9ede9c
[freerdp] use FREERDP_/UWAC_/RDTK_ prefix for conditional headers
2023-01-10 17:38:00 +01:00
akallabeth
0186a9b303
Fixed some warnings
2022-12-09 15:58:26 +01:00
akallabeth
d768796163
[codec,avc] chroma reverse filter cutoff threshold
2022-12-07 15:54:58 +01:00
Armin Novak
31c1700c0c
Fixed -Wunused-variable
2022-11-21 10:12:31 +01:00
akallabeth
43c5289928
Replaced memset/ZeroMemory with initializer
...
* Addes WINPR_ASSERT on many occations
* Replaced memset with array initializer
* Replaced ZeroMemory with array initializer
2022-10-14 12:11:01 +02:00
akallabeth
e4b1258564
Fixed missing include
2022-10-11 13:28:30 +02:00
David Fort
77413f49b2
winpr: rework alignment functions
...
_align_XXX functions aren't widely available depending on the C runtime. That causes
problems with mingw where we can easily have some runtime mixes (which lead to mysterious
segfaults most of the time). This patch introduce winpr_aligned_XXX functions that will
either use the function available, or use an emulation layer.
2022-05-12 11:36:01 +02:00