source: rtems/cpukit/score/cpu/x86_64/include/rtems/score/cpuimpl.h @ 95c76030

5
Last change on this file since 95c76030 was 95c76030, checked in by Andreas Dachsberger <andreas.dachsberger@…>, on 03/27/19 at 10:17:16

doxygen: score: Add x86-64 CPU architecture group

Update #3706.

  • Property mode set to 100644
File size: 1.1 KB
Line 
1/**
2 * @file
3 *
4 * @brief CPU Port Implementation API
5 */
6
7/*
8 * Copyright (c) 2018.
9 * Amaan Cheval <amaan.cheval@gmail.com>
10 *
11 * Copyright (c) 2013, 2016 embedded brains GmbH
12 *
13 * The license and distribution terms for this file may be
14 * found in the file LICENSE in this distribution or at
15 * http://www.rtems.org/license/LICENSE.
16 */
17
18#ifndef _RTEMS_SCORE_CPUIMPL_H
19#define _RTEMS_SCORE_CPUIMPL_H
20
21#include <rtems/score/cpu.h>
22
23/**
24 * @defgroup RTEMSScoreCPUx86-64 x86-64
25 *
26 * @ingroup RTEMSScoreCPU
27 *
28 * @brief x86-64 Architecture Support
29 *
30 * @{
31 */
32
33#define CPU_PER_CPU_CONTROL_SIZE 0
34
35#ifndef ASM
36
37#ifdef __cplusplus
38extern "C" {
39#endif
40
41RTEMS_INLINE_ROUTINE void _CPU_Context_volatile_clobber( uintptr_t pattern )
42{
43  /* TODO */
44}
45
46RTEMS_INLINE_ROUTINE void _CPU_Instruction_illegal( void )
47{
48  __asm__ volatile ( ".word 0" );
49}
50
51RTEMS_INLINE_ROUTINE void _CPU_Context_validate( uintptr_t pattern )
52{
53  while (1) {
54    /* TODO */
55  }
56}
57
58RTEMS_INLINE_ROUTINE void _CPU_Instruction_no_operation( void )
59{
60  __asm__ volatile ( "nop" );
61}
62
63#ifdef __cplusplus
64}
65#endif
66
67#endif /* !ASM */
68
69/** @} */
70
71#endif /* _RTEMS_SCORE_CPUIMPL_H */
Note: See TracBrowser for help on using the repository browser.