Coverage Report

Created: 2024-09-08 06:18

/src/FreeRDP/libfreerdp/codec/neon/nsc_neon.c
Line
Count
Source
1
/**
2
 * FreeRDP: A Remote Desktop Protocol Implementation
3
 * NSCodec Library - SSE2 Optimizations
4
 *
5
 * Copyright 2024 Armin Novak <anovak@thincast.com>
6
 * Copyright 2024 Thincast Technologies GmbH
7
 *
8
 * Licensed under the Apache License, Version 2.0 (the "License");
9
 * you may not use this file except in compliance with the License.
10
 * You may obtain a copy of the License at
11
 *
12
 *     http://www.apache.org/licenses/LICENSE-2.0
13
 *
14
 * Unless required by applicable law or agreed to in writing, software
15
 * distributed under the License is distributed on an "AS IS" BASIS,
16
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
 * See the License for the specific language governing permissions and
18
 * limitations under the License.
19
 */
20
21
#include <winpr/platform.h>
22
#include <winpr/sysinfo.h>
23
#include <freerdp/config.h>
24
#include <freerdp/log.h>
25
26
#include "../nsc_types.h"
27
#include "nsc_neon.h"
28
29
#define TAG FREERDP_TAG("codec.nsc.neon")
30
31
#if defined(WITH_NEON)
32
#if defined(_M_ARM64) || defined(_M_ARM)
33
#define NEON_ENABLED
34
#endif
35
#endif
36
37
void nsc_init_neon(NSC_CONTEXT* context)
38
16.2k
{
39
#if defined(NEON_ENABLED)
40
  if (!IsProcessorFeaturePresent(PF_ARM_NEON_INSTRUCTIONS_AVAILABLE))
41
    return;
42
43
  WLog_WARN(TAG, "TODO: Implement neon optimized version of this function");
44
#endif
45
16.2k
}