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

📄 proc-macros.s

📁 linux 内核源代码
💻 S
字号:
/* * We need constants.h for: *  VMA_VM_MM *  VMA_VM_FLAGS *  VM_EXEC */#include <asm/asm-offsets.h>#include <asm/thread_info.h>/* * vma_vm_mm - get mm pointer from vma pointer (vma->vm_mm) */	.macro	vma_vm_mm, rd, rn	ldr	\rd, [\rn, #VMA_VM_MM]	.endm/* * vma_vm_flags - get vma->vm_flags */	.macro	vma_vm_flags, rd, rn	ldr	\rd, [\rn, #VMA_VM_FLAGS]	.endm	.macro	tsk_mm, rd, rn	ldr	\rd, [\rn, #TI_TASK]	ldr	\rd, [\rd, #TSK_ACTIVE_MM]	.endm/* * act_mm - get current->active_mm */	.macro	act_mm, rd	bic	\rd, sp, #8128	bic	\rd, \rd, #63	ldr	\rd, [\rd, #TI_TASK]	ldr	\rd, [\rd, #TSK_ACTIVE_MM]	.endm/* * mmid - get context id from mm pointer (mm->context.id) */	.macro	mmid, rd, rn	ldr	\rd, [\rn, #MM_CONTEXT_ID]	.endm/* * mask_asid - mask the ASID from the context ID */	.macro	asid, rd, rn	and	\rd, \rn, #255	.endm	.macro	crval, clear, mmuset, ucset#ifdef CONFIG_MMU	.word	\clear	.word	\mmuset#else	.word	\clear	.word	\ucset#endif	.endm/* * cache_line_size - get the cache line size from the CSIDR register * (available on ARMv7+). It assumes that the CSSR register was configured * to access the L1 data cache CSIDR. */	.macro	dcache_line_size, reg, tmp	mrc	p15, 1, \tmp, c0, c0, 0		@ read CSIDR	and	\tmp, \tmp, #7			@ cache line size encoding	mov	\reg, #16			@ size offset	mov	\reg, \reg, lsl \tmp		@ actual cache line size	.endm

⌨️ 快捷键说明

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