_csl_begincriticalsection.asm

来自「TI达芬奇dm644x各硬件模块测试代码」· 汇编 代码 · 共 56 行

ASM
56
字号
*****************************************************************************                    E X P O R T E D     F U N C T I O N S****************************************************************************    .global __CSL_beginCriticalSection*****************************************************************************                         P A S S - T H R U   C O D E****************************************************************************  .text  .state32; the FIQIRQ bit   [6:7]   in PSR__ARM_CPSR_FIQIRQ_MASK   .equ   0x000000C0__ARM_CPSR_FIQIRQ_SHIFT  .equ   0x06*****************************************************************************                       P U B L I C   F U N C T I O N S*********************************************************************************************************************************************************   CSL_CriticalSectionState*       _CSL_beginCriticalSection (*           void*   )****************************************************************************__CSL_beginCriticalSection:    ; return value in R0 -> the FIQIRQ bit pattern    mrs r0, cpsr    orr r1, r0, #__ARM_CPSR_FIQIRQ_MASK ; set the FIQIRQ-bits to disable    msr cpsr, r1    ; make return value    and r0, r0, #__ARM_CPSR_FIQIRQ_MASK      ; mask out irrelevant bits    mov r0, r0, lsr #__ARM_CPSR_FIQIRQ_SHIFT ; shift into LSBs    bx   lr    .state16    .global $_CSL_beginCriticalSection$_CSL_beginCriticalSection:    bx  pc    nop    .state32    b   __CSL_beginCriticalSection***************************************************************************** End of _CSL_beginCriticalSection.asm****************************************************************************

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?