![]() |
RTEMS 6.1-rc7
|
Addresses Incompatible Flavors Problems. More...
#include <rtems/score/cpuopts.h>
#include <rtems/score/x86_64.h>
#include <rtems/score/percpu.h>
#include <rtems/concat.h>
Go to the source code of this file.
Macros | |
#define | ASM |
#define | __USER_LABEL_PREFIX__ _ |
#define | __REGISTER_PREFIX__ % |
#define | SYM(x) CONCAT1 (__USER_LABEL_PREFIX__, x) |
#define | REG(x) CONCAT1 (__REGISTER_PREFIX__, x) |
#define | rax REG (rax) |
#define | rbx REG (rbx) |
#define | rcx REG (rcx) |
#define | rdx REG (rdx) |
#define | rdi REG (rdi) |
#define | rsi REG (rsi) |
#define | rbp REG (rbp) |
#define | rsp REG (rsp) |
#define | r8 REG (r8) |
#define | r9 REG (r9) |
#define | r10 REG (r10) |
#define | r11 REG (r11) |
#define | r12 REG (r12) |
#define | r13 REG (r13) |
#define | r14 REG (r14) |
#define | r15 REG (r15) |
#define | REG_ARG0 rdi |
#define | REG_ARG1 rsi |
#define | REG_ARG2 rdx |
#define | REG_ARG3 rcx |
#define | REG_ARG4 r8 |
#define | REG_ARG5 r9 |
#define | BEGIN_CODE_DCL .text |
#define | END_CODE_DCL |
#define | BEGIN_DATA_DCL .data |
#define | END_DATA_DCL |
#define | BEGIN_CODE .text |
#define | END_CODE |
#define | BEGIN_DATA |
#define | END_DATA |
#define | BEGIN_BSS |
#define | END_BSS |
#define | END |
#define | PUBLIC(sym) .globl SYM (sym) |
#define | EXTERN(sym) .globl SYM (sym) |
Variables | |
macro GET_CPU_INDEX REG REG32 movq | $0 |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq | _Per_CPU_Information |
Set of Per CPU Core Information. | |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL | rax |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL | rbx |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL | rcx |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL | rdx |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL edx endm macro GET_SELF_CPU_CONTROL_RDI GET_SELF_CPU_CONTROL | rdi |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL edx endm macro GET_SELF_CPU_CONTROL_RDI GET_SELF_CPU_CONTROL edi endm macro GET_SELF_CPU_CONTROL_RSI GET_SELF_CPU_CONTROL | rsi |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL edx endm macro GET_SELF_CPU_CONTROL_RDI GET_SELF_CPU_CONTROL edi endm macro GET_SELF_CPU_CONTROL_RSI GET_SELF_CPU_CONTROL esi endm macro GET_SELF_CPU_CONTROL_R8 GET_SELF_CPU_CONTROL | r8 |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL edx endm macro GET_SELF_CPU_CONTROL_RDI GET_SELF_CPU_CONTROL edi endm macro GET_SELF_CPU_CONTROL_RSI GET_SELF_CPU_CONTROL esi endm macro GET_SELF_CPU_CONTROL_R8 GET_SELF_CPU_CONTROL r8d endm macro GET_SELF_CPU_CONTROL_R9 GET_SELF_CPU_CONTROL | r9 |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL edx endm macro GET_SELF_CPU_CONTROL_RDI GET_SELF_CPU_CONTROL edi endm macro GET_SELF_CPU_CONTROL_RSI GET_SELF_CPU_CONTROL esi endm macro GET_SELF_CPU_CONTROL_R8 GET_SELF_CPU_CONTROL r8d endm macro GET_SELF_CPU_CONTROL_R9 GET_SELF_CPU_CONTROL r9d endm macro GET_SELF_CPU_CONTROL_R10 GET_SELF_CPU_CONTROL | r10 |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL edx endm macro GET_SELF_CPU_CONTROL_RDI GET_SELF_CPU_CONTROL edi endm macro GET_SELF_CPU_CONTROL_RSI GET_SELF_CPU_CONTROL esi endm macro GET_SELF_CPU_CONTROL_R8 GET_SELF_CPU_CONTROL r8d endm macro GET_SELF_CPU_CONTROL_R9 GET_SELF_CPU_CONTROL r9d endm macro GET_SELF_CPU_CONTROL_R10 GET_SELF_CPU_CONTROL r10d endm macro GET_SELF_CPU_CONTROL_R11 GET_SELF_CPU_CONTROL | r11 |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL edx endm macro GET_SELF_CPU_CONTROL_RDI GET_SELF_CPU_CONTROL edi endm macro GET_SELF_CPU_CONTROL_RSI GET_SELF_CPU_CONTROL esi endm macro GET_SELF_CPU_CONTROL_R8 GET_SELF_CPU_CONTROL r8d endm macro GET_SELF_CPU_CONTROL_R9 GET_SELF_CPU_CONTROL r9d endm macro GET_SELF_CPU_CONTROL_R10 GET_SELF_CPU_CONTROL r10d endm macro GET_SELF_CPU_CONTROL_R11 GET_SELF_CPU_CONTROL r11d endm macro GET_SELF_CPU_CONTROL_R12 GET_SELF_CPU_CONTROL | r12 |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL edx endm macro GET_SELF_CPU_CONTROL_RDI GET_SELF_CPU_CONTROL edi endm macro GET_SELF_CPU_CONTROL_RSI GET_SELF_CPU_CONTROL esi endm macro GET_SELF_CPU_CONTROL_R8 GET_SELF_CPU_CONTROL r8d endm macro GET_SELF_CPU_CONTROL_R9 GET_SELF_CPU_CONTROL r9d endm macro GET_SELF_CPU_CONTROL_R10 GET_SELF_CPU_CONTROL r10d endm macro GET_SELF_CPU_CONTROL_R11 GET_SELF_CPU_CONTROL r11d endm macro GET_SELF_CPU_CONTROL_R12 GET_SELF_CPU_CONTROL r12d endm macro GET_SELF_CPU_CONTROL_R13 GET_SELF_CPU_CONTROL | r13 |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL edx endm macro GET_SELF_CPU_CONTROL_RDI GET_SELF_CPU_CONTROL edi endm macro GET_SELF_CPU_CONTROL_RSI GET_SELF_CPU_CONTROL esi endm macro GET_SELF_CPU_CONTROL_R8 GET_SELF_CPU_CONTROL r8d endm macro GET_SELF_CPU_CONTROL_R9 GET_SELF_CPU_CONTROL r9d endm macro GET_SELF_CPU_CONTROL_R10 GET_SELF_CPU_CONTROL r10d endm macro GET_SELF_CPU_CONTROL_R11 GET_SELF_CPU_CONTROL r11d endm macro GET_SELF_CPU_CONTROL_R12 GET_SELF_CPU_CONTROL r12d endm macro GET_SELF_CPU_CONTROL_R13 GET_SELF_CPU_CONTROL r13d endm macro GET_SELF_CPU_CONTROL_R14 GET_SELF_CPU_CONTROL | r14 |
macro GET_CPU_INDEX REG REG32 movq REG endm macro GET_SELF_CPU_CONTROL REG REG32 leaq REG endm macro GET_SELF_CPU_CONTROL_RAX GET_SELF_CPU_CONTROL eax endm macro GET_SELF_CPU_CONTROL_RBX GET_SELF_CPU_CONTROL ebx endm macro GET_SELF_CPU_CONTROL_RCX GET_SELF_CPU_CONTROL ecx endm macro GET_SELF_CPU_CONTROL_RDX GET_SELF_CPU_CONTROL edx endm macro GET_SELF_CPU_CONTROL_RDI GET_SELF_CPU_CONTROL edi endm macro GET_SELF_CPU_CONTROL_RSI GET_SELF_CPU_CONTROL esi endm macro GET_SELF_CPU_CONTROL_R8 GET_SELF_CPU_CONTROL r8d endm macro GET_SELF_CPU_CONTROL_R9 GET_SELF_CPU_CONTROL r9d endm macro GET_SELF_CPU_CONTROL_R10 GET_SELF_CPU_CONTROL r10d endm macro GET_SELF_CPU_CONTROL_R11 GET_SELF_CPU_CONTROL r11d endm macro GET_SELF_CPU_CONTROL_R12 GET_SELF_CPU_CONTROL r12d endm macro GET_SELF_CPU_CONTROL_R13 GET_SELF_CPU_CONTROL r13d endm macro GET_SELF_CPU_CONTROL_R14 GET_SELF_CPU_CONTROL r14d endm macro GET_SELF_CPU_CONTROL_R15 GET_SELF_CPU_CONTROL | r15 |
Addresses Incompatible Flavors Problems.
This include file attempts to address the problems caused by incompatible flavors of assemblers and toolsets. It primarily addresses variations in the use of leading underscores on symbols and the requirement that register names be preceded by a %.
NOTE: The spacing in the use of these macros is critical to them working as advertised.