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 
12 #ifndef VPX_PORTS_ARM_H_
13 #define VPX_PORTS_ARM_H_
14 #include <stdlib.h>
15 #include "vpx_config.h"
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
21 /*ARMv5TE "Enhanced DSP" instructions.*/
22 #define HAS_EDSP  0x01
23 /*ARMv6 "Parallel" or "Media" instructions.*/
24 #define HAS_MEDIA 0x02
25 /*ARMv7 optional NEON instructions.*/
26 #define HAS_NEON  0x04
27 
28 int arm_cpu_caps(void);
29 
30 // Earlier gcc compilers have issues with some neon intrinsics
31 #if !defined(__clang__) && defined(__GNUC__) && \
32     __GNUC__ == 4 && __GNUC_MINOR__ <= 6
33 #define VPX_INCOMPATIBLE_GCC
34 #endif
35 
36 #ifdef __cplusplus
37 }  // extern "C"
38 #endif
39 
40 #endif  // VPX_PORTS_ARM_H_
41 
42