linux-2.6.33/common_interrupt()(x86)
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*参照元 [#x81764d3]
#backlinks
*説明 [#l43fd071]
-パス: [[linux-2.6.33/arch/x86/kernel/entry_32.S]]
-割り込みハンドラの初期化、後始末を行うコード(機種依存部...
**引数 [#xfc824a2]
-なし
**返り値 [#w961d571]
-なし
**参考 [#i2355e0d]
*実装 [#sdb5e291]
/*
* the CPU automatically disables interrupts when execut...
* so IRQ-flags tracing has to follow that:
*/
.p2align CONFIG_X86_L1_CACHE_SHIFT
-L1 キャッシュの先頭に乗るように境界合わせをする。
--割り込み処理は頻繁に呼び出されるため、
キャッシュ効率を上げる工夫をしている。
--.p2align は 2のべき乗(power of 2)で境界合わせ(align...
という gas の疑似命令である
---例えば CONFIG_X86_L1_CACHE_SHIFT が 5 なら、
32バイト境界にコードが配置される
--[[linux-2.6.33/CONFIG_X86_L1_CACHE_SHIFT]]
common_interrupt:
addl $-0x80,(%esp) /* Adjust vector into the [-256,-1] ...
SAVE_ALL
-
--[[linux-2.6.33/SAVE_ALL()]]
TRACE_IRQS_OFF
-
--[[linux-2.6.33/TRACE_IRQS_OFF()]]
movl %esp,%eax
call do_IRQ
-
--[[linux-2.6.33/do_IRQ()]]
jmp ret_from_intr
-
--[[linux-2.6.33/ret_from_intr()]]
ENDPROC(common_interrupt)
CFI_ENDPROC
-
--[[linux-2.6.33/CFI_ENDPROC()]]
*コメント [#t06361b5]
終了行:
*参照元 [#x81764d3]
#backlinks
*説明 [#l43fd071]
-パス: [[linux-2.6.33/arch/x86/kernel/entry_32.S]]
-割り込みハンドラの初期化、後始末を行うコード(機種依存部...
**引数 [#xfc824a2]
-なし
**返り値 [#w961d571]
-なし
**参考 [#i2355e0d]
*実装 [#sdb5e291]
/*
* the CPU automatically disables interrupts when execut...
* so IRQ-flags tracing has to follow that:
*/
.p2align CONFIG_X86_L1_CACHE_SHIFT
-L1 キャッシュの先頭に乗るように境界合わせをする。
--割り込み処理は頻繁に呼び出されるため、
キャッシュ効率を上げる工夫をしている。
--.p2align は 2のべき乗(power of 2)で境界合わせ(align...
という gas の疑似命令である
---例えば CONFIG_X86_L1_CACHE_SHIFT が 5 なら、
32バイト境界にコードが配置される
--[[linux-2.6.33/CONFIG_X86_L1_CACHE_SHIFT]]
common_interrupt:
addl $-0x80,(%esp) /* Adjust vector into the [-256,-1] ...
SAVE_ALL
-
--[[linux-2.6.33/SAVE_ALL()]]
TRACE_IRQS_OFF
-
--[[linux-2.6.33/TRACE_IRQS_OFF()]]
movl %esp,%eax
call do_IRQ
-
--[[linux-2.6.33/do_IRQ()]]
jmp ret_from_intr
-
--[[linux-2.6.33/ret_from_intr()]]
ENDPROC(common_interrupt)
CFI_ENDPROC
-
--[[linux-2.6.33/CFI_ENDPROC()]]
*コメント [#t06361b5]
ページ名: