• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
3  *
4  *  Use of this source code is governed by a BSD-style license
5  *  that can be found in the LICENSE file in the root of the source
6  *  tree. An additional intellectual property rights grant can be found
7  *  in the file PATENTS.  All contributing project authors may
8  *  be found in the AUTHORS file in the root of the source tree.
9  */
10 
11 #ifndef VPX_VPX_PORTS_ARM_H_
12 #define VPX_VPX_PORTS_ARM_H_
13 #include <stdlib.h>
14 #include "vpx_config.h"
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif
19 
20 /*ARMv5TE "Enhanced DSP" instructions.*/
21 #define HAS_EDSP 0x01
22 /*ARMv6 "Parallel" or "Media" instructions.*/
23 #define HAS_MEDIA 0x02
24 /*ARMv7 optional NEON instructions.*/
25 #define HAS_NEON 0x04
26 
27 int arm_cpu_caps(void);
28 
29 // Earlier gcc compilers have issues with some neon intrinsics
30 #if !defined(__clang__) && defined(__GNUC__) && __GNUC__ == 4 && \
31     __GNUC_MINOR__ <= 6
32 #define VPX_INCOMPATIBLE_GCC
33 #endif
34 
35 #ifdef __cplusplus
36 }  // extern "C"
37 #endif
38 
39 #endif  // VPX_VPX_PORTS_ARM_H_
40