⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 icache.s

📁 Windows CE 6.0 BSP for the Beagle Board.
💻 S
字号:
;-------------------------------------------------------------------------------
;
;  File:  icache.s
;
;
        INCLUDE kxarm.h
        INCLUDE armmacros.s
        INCLUDE oal_cache.inc

        IMPORT g_oalCacheInfo

        TEXTAREA

;-------------------------------------------------------------------------------
;
;  Function:  OALFlushICache
;
        LEAF_ENTRY OALFlushICache

        mov     r0, #0
        mcr     p15, 0, r0, c7, c5, 0       ; invalidate all instruction caches

        mov     r2, #0
        mcr     p15, 0, r2, c7, c5, 4       ; flush the prefetch buffer
        mcr     p15, 0, r2, c7, c5, 6       ; flush entire branch target cache

        RETURN
        ENTRY_END OALFlushICache

;-------------------------------------------------------------------------------
;
;  Function:  OALFlushICacheLines
;
        LEAF_ENTRY OALFlushICacheLines

        ldr     r2, =g_oalCacheInfo
        ldr     r3, [r2, #L1ILineSize]

10      mcr     p15, 0, r0, c7, c5,  1      ; invalidate line from icache
        add     r0, r0, r3                  ; move to next entry
        subs    r1, r1, r3
        bgt     %b10                        ; loop while > 0 bytes left

        mov     r2, #0
        mcr     p15, 0, r2, c7, c5, 4       ; flush the prefetch buffer
        mcr     p15, 0, r2, c7, c5, 6       ; flush entire branch target cache

        RETURN
        ENTRY_END OALFlushICacheLines

        END

⌨️ 快捷键说明

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