15#ifndef _RTEMS_SCORE_CPUIMPL_H
16#define _RTEMS_SCORE_CPUIMPL_H
18#include <rtems/score/cpu.h>
30#define CPU_PER_CPU_CONTROL_SIZE 0
32#ifdef ARM_MULTILIB_ARCH_V4
34#if defined(ARM_MULTILIB_VFP_D32)
35#define CPU_INTERRUPT_FRAME_SIZE 240
36#elif defined(ARM_MULTILIB_VFP)
37#define CPU_INTERRUPT_FRAME_SIZE 112
39#define CPU_INTERRUPT_FRAME_SIZE 40
50#ifdef ARM_MULTILIB_ARCH_V4
53#ifdef ARM_MULTILIB_VFP
55#ifdef ARM_MULTILIB_VFP_D32
96static inline struct Per_CPU_Control *_ARM_Get_current_per_CPU_control(
void )
102 "mrc p15, 0, %0, c13, c0, 4"
109#define _CPU_Get_current_per_CPU_control() _ARM_Get_current_per_CPU_control()
115void _CPU_Context_volatile_clobber( uintptr_t pattern );
117void _CPU_Context_validate( uintptr_t pattern );
121 __asm__
volatile (
"udf" );
126 __asm__
volatile (
"nop" );
#define RTEMS_INLINE_ROUTINE
Definition: basedefs.h:66
Interrupt stack frame (ISF).
Definition: cpu.h:191
Per CPU Core Structure.
Definition: percpu.h:347