Commit Graph

272 Commits

Author SHA1 Message Date
akallabeth
15456e1ee1
[warnings] fix implicit widening conversion 2024-08-29 10:47:20 +02:00
akallabeth
1d33095500
[warnings] fix cert-err33-c
Fix unused return values, cast to void if on purpose
2024-08-29 10:19:27 +02:00
akallabeth
380c5808a0
Merge pull request #10518 from akallabeth/clang-tidy-cleanup
Clang tidy cleanup
2024-08-28 16:36:16 +02:00
Armin Novak
3b1c1e0af1 [warnings] fix cppcoreguidelines-init-variables 2024-08-28 10:15:36 +02:00
Armin Novak
d71af44bb1
[warnings] disable warnings for generated code
* Disable clang-tidy in test build directories
* Disable compiler warnings for test binary directories.

These contain generated code we can not change, so the warnings are just noise
2024-08-28 09:18:30 +02:00
akallabeth
09a6655823
[primitives,opencl] fix deprecations 2024-07-22 15:08:41 +02:00
akallabeth
d91f90c7cc
Merge pull request #10352 from akallabeth/revert-img-memcpy
[primitives,copy] revert single memcpy
2024-07-07 15:40:15 +02:00
akallabeth
2fd4a59d36
[primitives,sse] fix char/uchar conversion warnings 2024-07-06 21:21:57 +02:00
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