*参照元 [#b991e00e] #backlinks *説明 [#vbd8a69e] -パス: [[linux-2.6.33/arch/arm/kernel/entry-armv.S]] -FIXME: これは何? --説明 **引数 [#b3a2b849] -なし **返り値 [#z29f2667] -なし **参考 [#kf18b99b] *実装 [#c8d96bae] .align 5 -2^5 = 32バイト境界に配置する __pabt_usr: usr_entry - --[[linux-2.6.33/usr_entry()]] mov r0, r2 @ pass address of aborted instruction. #ifdef MULTI_PABORT - --[[linux-2.6.33/MULTI_PABORT]] ldr r4, .LCprocfns - --[[linux-2.6.33/.LCprocfns()]] mov lr, pc ldr pc, [r4, #PROCESSOR_PABT_FUNC] - --[[linux-2.6.33/PROCESSOR_PABT_FUNC]] #else bl CPU_PABORT_HANDLER - --[[linux-2.6.33/CPU_PABORT_HANDLER()]] #endif enable_irq @ Enable interrupts - --[[linux-2.6.33/enable_irq()]] mov r2, sp @ regs bl do_PrefetchAbort @ call abort handler - --[[linux-2.6.33/do_PrefetchAbort()]] UNWIND(.fnend ) - --[[linux-2.6.33/UNWIND()]] /* fall through */ /* * This is the return code to user mode for abort handlers */ ENTRY(ret_from_exception) - --[[linux-2.6.33/ret_from_exception()]] UNWIND(.fnstart ) UNWIND(.cantunwind ) get_thread_info tsk mov why, #0 b ret_to_user UNWIND(.fnend ) ENDPROC(__pabt_usr) - --[[linux-2.6.33/ENDPROC()]] ENDPROC(ret_from_exception) *コメント [#tb90903e]