Go to the source code of this file.
|
| enum | _tag_ARMINTR_SHIFT_T { _ARM_LSR = 0
, _ARM_LSL = 1
, _ARM_ASR = 2
, _ARM_ROR = 3
} |
| |
| enum | _tag_ARMINTR_CPS_OP { _ARM_CPS_ENABLE_INTERRUPTS = 1
, _ARM_CPS_DISABLE_INTERRUPTS = 2
, _ARM_CPS_CHANGE_MODE = 4
} |
| |
| enum | _tag_ARMINTR_CPS_FLAG { _ARM_CPS_INTERRUPT_FLAG_F = 1
, _ARM_CPS_INTERRUPT_FLAG_I = 2
, _ARM_CPS_INTERRUPT_FLAG_A = 4
} |
| |
| enum | _tag_ARMINTR_BARRIER_TYPE {
_ARM_BARRIER_SY = 0xF
, _ARM_BARRIER_ST = 0xE
, _ARM_BARRIER_ISH = 0xB
, _ARM_BARRIER_ISHST = 0xA
,
_ARM_BARRIER_NSH = 0x7
, _ARM_BARRIER_NSHST = 0x6
, _ARM_BARRIER_OSH = 0x3
, _ARM_BARRIER_OSHST = 0x2
} |
| |
| enum | _tag_ARMINTR_BANKED_REG {
_ARM_BANKED_R8_USR = 0x0
, _ARM_BANKED_R9_USR = 0x1
, _ARM_BANKED_R10_USR = 0x2
, _ARM_BANKED_R11_USR = 0x3
,
_ARM_BANKED_R12_USR = 0x4
, _ARM_BANKED_R13_USR = 0x5
, _ARM_BANKED_SP_USR = 0x5
, _ARM_BANKED_R14_USR = 0x6
,
_ARM_BANKED_LR_USR = 0x6
, _ARM_BANKED_R8_FIQ = 0x8
, _ARM_BANKED_R9_FIQ = 0x9
, _ARM_BANKED_R10_FIQ = 0xA
,
_ARM_BANKED_R11_FIQ = 0xB
, _ARM_BANKED_R12_FIQ = 0xC
, _ARM_BANKED_R13_FIQ = 0xD
, _ARM_BANKED_SP_FIQ = 0xD
,
_ARM_BANKED_R14_FIQ = 0xE
, _ARM_BANKED_LR_FIQ = 0xE
, _ARM_BANKED_R14_IRQ = 0x10
, _ARM_BANKED_LR_IRQ = 0x10
,
_ARM_BANKED_R13_IRQ = 0x11
, _ARM_BANKED_SP_IRQ = 0x11
, _ARM_BANKED_R14_SVC = 0x12
, _ARM_BANKED_LR_SVC = 0x12
,
_ARM_BANKED_R13_SVC = 0x13
, _ARM_BANKED_SP_SVC = 0x13
, _ARM_BANKED_R14_ABT = 0x14
, _ARM_BANKED_LR_ABT = 0x14
,
_ARM_BANKED_R13_ABT = 0x15
, _ARM_BANKED_SP_ABT = 0x15
, _ARM_BANKED_R14_UND = 0x16
, _ARM_BANKED_LR_UND = 0x16
,
_ARM_BANKED_R13_UND = 0x17
, _ARM_BANKED_SP_UND = 0x17
, _ARM_BANKED_R14_MON = 0x1C
, _ARM_BANKED_LR_MON = 0x1C
,
_ARM_BANKED_R13_MON = 0x1D
, _ARM_BANKED_SP_MON = 0x1D
, _ARM_BANKED_ELR_HYP = 0x1E
, _ARM_BANKED_R13_HYP = 0x1F
,
_ARM_BANKED_SP_HYP = 0x1F
, _ARM_BANKED_SPSR_FIQ = 0x2E
, _ARM_BANKED_SPSR_IRQ = 0x30
, _ARM_BANKED_SPSR_SVC = 0x32
,
_ARM_BANKED_SPSR_ABT = 0x34
, _ARM_BANKED_SPSR_UND = 0x36
, _ARM_BANKED_SPSR_MON = 0x3C
, _ARM_BANKED_SPSR_HYP = 0x3E
} |
| |
◆ _ARMINTR_BANKED_REG
◆ _ARMINTR_BARRIER_TYPE
◆ _ARMINTR_CPS_FLAG
◆ _ARMINTR_CPS_OP
◆ _ARMINTR_SHIFT_T
◆ _tag_ARMINTR_BANKED_REG
| Enumerator |
|---|
| _ARM_BANKED_R8_USR | |
| _ARM_BANKED_R9_USR | |
| _ARM_BANKED_R10_USR | |
| _ARM_BANKED_R11_USR | |
| _ARM_BANKED_R12_USR | |
| _ARM_BANKED_R13_USR | |
| _ARM_BANKED_SP_USR | |
| _ARM_BANKED_R14_USR | |
| _ARM_BANKED_LR_USR | |
| _ARM_BANKED_R8_FIQ | |
| _ARM_BANKED_R9_FIQ | |
| _ARM_BANKED_R10_FIQ | |
| _ARM_BANKED_R11_FIQ | |
| _ARM_BANKED_R12_FIQ | |
| _ARM_BANKED_R13_FIQ | |
| _ARM_BANKED_SP_FIQ | |
| _ARM_BANKED_R14_FIQ | |
| _ARM_BANKED_LR_FIQ | |
| _ARM_BANKED_R14_IRQ | |
| _ARM_BANKED_LR_IRQ | |
| _ARM_BANKED_R13_IRQ | |
| _ARM_BANKED_SP_IRQ | |
| _ARM_BANKED_R14_SVC | |
| _ARM_BANKED_LR_SVC | |
| _ARM_BANKED_R13_SVC | |
| _ARM_BANKED_SP_SVC | |
| _ARM_BANKED_R14_ABT | |
| _ARM_BANKED_LR_ABT | |
| _ARM_BANKED_R13_ABT | |
| _ARM_BANKED_SP_ABT | |
| _ARM_BANKED_R14_UND | |
| _ARM_BANKED_LR_UND | |
| _ARM_BANKED_R13_UND | |
| _ARM_BANKED_SP_UND | |
| _ARM_BANKED_R14_MON | |
| _ARM_BANKED_LR_MON | |
| _ARM_BANKED_R13_MON | |
| _ARM_BANKED_SP_MON | |
| _ARM_BANKED_ELR_HYP | |
| _ARM_BANKED_R13_HYP | |
| _ARM_BANKED_SP_HYP | |
| _ARM_BANKED_SPSR_FIQ | |
| _ARM_BANKED_SPSR_IRQ | |
| _ARM_BANKED_SPSR_SVC | |
| _ARM_BANKED_SPSR_ABT | |
| _ARM_BANKED_SPSR_UND | |
| _ARM_BANKED_SPSR_MON | |
| _ARM_BANKED_SPSR_HYP | |
Definition at line 43 of file armintr.h.
44{
enum _tag_ARMINTR_BANKED_REG _ARMINTR_BANKED_REG
◆ _tag_ARMINTR_BARRIER_TYPE
| Enumerator |
|---|
| _ARM_BARRIER_SY | |
| _ARM_BARRIER_ST | |
| _ARM_BARRIER_ISH | |
| _ARM_BARRIER_ISHST | |
| _ARM_BARRIER_NSH | |
| _ARM_BARRIER_NSHST | |
| _ARM_BARRIER_OSH | |
| _ARM_BARRIER_OSHST | |
Definition at line 31 of file armintr.h.
32{
enum _tag_ARMINTR_BARRIER_TYPE _ARMINTR_BARRIER_TYPE
◆ _tag_ARMINTR_CPS_FLAG
| Enumerator |
|---|
| _ARM_CPS_INTERRUPT_FLAG_F | |
| _ARM_CPS_INTERRUPT_FLAG_I | |
| _ARM_CPS_INTERRUPT_FLAG_A | |
Definition at line 24 of file armintr.h.
25{
@ _ARM_CPS_INTERRUPT_FLAG_I
@ _ARM_CPS_INTERRUPT_FLAG_F
@ _ARM_CPS_INTERRUPT_FLAG_A
enum _tag_ARMINTR_CPS_FLAG _ARMINTR_CPS_FLAG
◆ _tag_ARMINTR_CPS_OP
| Enumerator |
|---|
| _ARM_CPS_ENABLE_INTERRUPTS | |
| _ARM_CPS_DISABLE_INTERRUPTS | |
| _ARM_CPS_CHANGE_MODE | |
Definition at line 17 of file armintr.h.
18{
enum _tag_ARMINTR_CPS_OP _ARMINTR_CPS_OP
@ _ARM_CPS_DISABLE_INTERRUPTS
@ _ARM_CPS_ENABLE_INTERRUPTS
◆ _tag_ARMINTR_SHIFT_T
| Enumerator |
|---|
| _ARM_LSR | |
| _ARM_LSL | |
| _ARM_ASR | |
| _ARM_ROR | |
Definition at line 9 of file armintr.h.
10{
enum _tag_ARMINTR_SHIFT_T _ARMINTR_SHIFT_T
◆ __dmb()
Definition at line 694 of file intrin_arm64.h.
695{
696
697
698
700 {
701 case 1:
__asm__ __volatile__(
"dmb oshld" :::
"memory");
break;
702 case 2:
__asm__ __volatile__(
"dmb oshst" :::
"memory");
break;
703 case 3:
__asm__ __volatile__(
"dmb osh" :::
"memory");
break;
704 case 5:
__asm__ __volatile__(
"dmb nshld" :::
"memory");
break;
705 case 6:
__asm__ __volatile__(
"dmb nshst" :::
"memory");
break;
706 case 7:
__asm__ __volatile__(
"dmb nsh" :::
"memory");
break;
707 case 9:
__asm__ __volatile__(
"dmb ishld" :::
"memory");
break;
708 case 10:
__asm__ __volatile__(
"dmb ishst" :::
"memory");
break;
709 case 11:
__asm__ __volatile__(
"dmb ish" :::
"memory");
break;
710 case 13:
__asm__ __volatile__(
"dmb ld" :::
"memory");
break;
711 case 14:
__asm__ __volatile__(
"dmb st" :::
"memory");
break;
712 default:
__asm__ __volatile__(
"dmb sy" :::
"memory");
break;
713 }
714}
GLuint GLuint GLsizei GLenum type
__asm__(".p2align 4, 0x90\n" ".seh_proc __seh2_global_filter_func\n" "__seh2_global_filter_func:\n" "\tsub %rbp, %rax\n" "\tpush %rbp\n" "\t.seh_pushreg %rbp\n" "\tpush %rbx\n" "\t.seh_pushreg %rbx\n" "\tpush %rdi\n" "\t.seh_pushreg %rdi\n" "\tpush %rsi\n" "\t.seh_pushreg %rsi\n" "\tpush %r12\n" "\t.seh_pushreg %r12\n" "\tpush %r13\n" "\t.seh_pushreg %r13\n" "\tpush %r14\n" "\t.seh_pushreg %r14\n" "\tpush %r15\n" "\t.seh_pushreg %r15\n" "\tsub $40, %rsp\n" "\t.seh_stackalloc 40\n" "\t.seh_endprologue\n" "\tsub %rax, %rdx\n" "\tmov %rdx, %rbp\n" "\tjmp *%r8\n" "__seh2_global_filter_func_exit:\n" "\t.p2align 4\n" "\tadd $40, %rsp\n" "\tpop %r15\n" "\tpop %r14\n" "\tpop %r13\n" "\tpop %r12\n" "\tpop %rsi\n" "\tpop %rdi\n" "\tpop %rbx\n" "\tpop %rbp\n" "\tret\n" "\t.seh_endproc")
◆ __dsb()
Definition at line 718 of file intrin_arm64.h.
719{
721 {
722 case 1:
__asm__ __volatile__(
"dsb oshld" :::
"memory");
break;
723 case 2:
__asm__ __volatile__(
"dsb oshst" :::
"memory");
break;
724 case 3:
__asm__ __volatile__(
"dsb osh" :::
"memory");
break;
725 case 5:
__asm__ __volatile__(
"dsb nshld" :::
"memory");
break;
726 case 6:
__asm__ __volatile__(
"dsb nshst" :::
"memory");
break;
727 case 7:
__asm__ __volatile__(
"dsb nsh" :::
"memory");
break;
728 case 9:
__asm__ __volatile__(
"dsb ishld" :::
"memory");
break;
729 case 10:
__asm__ __volatile__(
"dsb ishst" :::
"memory");
break;
730 case 11:
__asm__ __volatile__(
"dsb ish" :::
"memory");
break;
731 case 13:
__asm__ __volatile__(
"dsb ld" :::
"memory");
break;
732 case 14:
__asm__ __volatile__(
"dsb st" :::
"memory");
break;
733 default:
__asm__ __volatile__(
"dsb sy" :::
"memory");
break;
734 }
735}
◆ __isb()