1 /**************************************************************************//**
3 * @brief CMSIS Cortex-M Core Instruction Access Header File
6 ******************************************************************************/
8 * Copyright (c) 2009-2016 ARM Limited. All rights reserved.
10 * SPDX-License-Identifier: Apache-2.0
12 * Licensed under the Apache License, Version 2.0 (the License); you may
13 * not use this file except in compliance with the License.
14 * You may obtain a copy of the License at
16 * http://www.apache.org/licenses/LICENSE-2.0
18 * Unless required by applicable law or agreed to in writing, software
19 * distributed under the License is distributed on an AS IS BASIS, WITHOUT
20 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 * See the License for the specific language governing permissions and
22 * limitations under the License.
25 #if defined ( __ICCARM__ )
26 #pragma system_include /* treat file as system include file for MISRA check */
27 #elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
28 #pragma clang system_header /* treat file as system include file */
31 #ifndef __CORE_CMINSTR_H
32 #define __CORE_CMINSTR_H
35 /* ########################## Core Instruction Access ######################### */
36 /** \defgroup CMSIS_Core_InstructionInterface CMSIS Core Instruction Interface
37 Access to dedicated instructions
41 /*------------------ ARM Compiler 4/5 ------------------*/
42 #if defined ( __CC_ARM )
43 #include "cmsis_armcc.h"
45 /*------------------ ARM Compiler 6 --------------------*/
46 #elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
47 #include "cmsis_armclang.h"
49 /*------------------ GNU Compiler ----------------------*/
50 #elif defined ( __GNUC__ )
51 #include "cmsis_gcc.h"
53 /*------------------ ICC Compiler ----------------------*/
54 #elif defined ( __ICCARM__ )
55 #include <cmsis_iar.h>
57 /*------------------ TI CCS Compiler -------------------*/
58 #elif defined ( __TI_ARM__ )
59 #include <cmsis_ccs.h>
61 /*------------------ TASKING Compiler ------------------*/
62 #elif defined ( __TASKING__ )
64 * The CMSIS functions have been implemented as intrinsics in the compiler.
65 * Please use "carm -?i" to get an up to date list of all intrinsics,
66 * Including the CMSIS ones.
69 /*------------------ COSMIC Compiler -------------------*/
70 #elif defined ( __CSMC__ )
71 #include <cmsis_csm.h>
75 /*@}*/ /* end of group CMSIS_Core_InstructionInterface */
77 #endif /* __CORE_CMINSTR_H */