linux-2.6.33/SAVE_ALL()(x86)
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*参照元 [#reabb3ba]
#backlinks
*説明 [#ne6f1346]
-パス: [[linux-2.6.33/arch/x86/kernel/entry_32.S]]
-FIXME: これは何?
--説明
**引数 [#z24d585c]
-なし
**返り値 [#u11c9697]
-なし
**参考 [#p3a4076d]
*実装 [#u0f0350a]
.macro SAVE_ALL
cld
PUSH_GS
-
--[[linux-2.6.33/PUSH_GS()]]
pushl %fs
CFI_ADJUST_CFA_OFFSET 4
-FS は 32ビット(4バイト)なので、CFA に 4 加える。
--[[linux-2.6.33/CFI_ADJUST_CFA_OFFSET()]]
/*CFI_REL_OFFSET fs, 0;*/
pushl %es
CFI_ADJUST_CFA_OFFSET 4
/*CFI_REL_OFFSET es, 0;*/
pushl %ds
CFI_ADJUST_CFA_OFFSET 4
/*CFI_REL_OFFSET ds, 0;*/
pushl %eax
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET eax, 0
-
--[[linux-2.6.33/CFI_REL_OFFSET()]]
pushl %ebp
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET ebp, 0
pushl %edi
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET edi, 0
pushl %esi
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET esi, 0
pushl %edx
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET edx, 0
pushl %ecx
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET ecx, 0
pushl %ebx
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET ebx, 0
movl $(__USER_DS), %edx
-
--[[linux-2.6.33/__USER_DS]]
movl %edx, %ds
movl %edx, %es
movl $(__KERNEL_PERCPU), %edx
-
--[[linux-2.6.33/__KERNEL_PERCPU]]
movl %edx, %fs
SET_KERNEL_GS %edx
-
--[[linux-2.6.33/SET_KERNEL_GS()]]
.endm
*コメント [#v6fc5165]
終了行:
*参照元 [#reabb3ba]
#backlinks
*説明 [#ne6f1346]
-パス: [[linux-2.6.33/arch/x86/kernel/entry_32.S]]
-FIXME: これは何?
--説明
**引数 [#z24d585c]
-なし
**返り値 [#u11c9697]
-なし
**参考 [#p3a4076d]
*実装 [#u0f0350a]
.macro SAVE_ALL
cld
PUSH_GS
-
--[[linux-2.6.33/PUSH_GS()]]
pushl %fs
CFI_ADJUST_CFA_OFFSET 4
-FS は 32ビット(4バイト)なので、CFA に 4 加える。
--[[linux-2.6.33/CFI_ADJUST_CFA_OFFSET()]]
/*CFI_REL_OFFSET fs, 0;*/
pushl %es
CFI_ADJUST_CFA_OFFSET 4
/*CFI_REL_OFFSET es, 0;*/
pushl %ds
CFI_ADJUST_CFA_OFFSET 4
/*CFI_REL_OFFSET ds, 0;*/
pushl %eax
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET eax, 0
-
--[[linux-2.6.33/CFI_REL_OFFSET()]]
pushl %ebp
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET ebp, 0
pushl %edi
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET edi, 0
pushl %esi
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET esi, 0
pushl %edx
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET edx, 0
pushl %ecx
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET ecx, 0
pushl %ebx
CFI_ADJUST_CFA_OFFSET 4
CFI_REL_OFFSET ebx, 0
movl $(__USER_DS), %edx
-
--[[linux-2.6.33/__USER_DS]]
movl %edx, %ds
movl %edx, %es
movl $(__KERNEL_PERCPU), %edx
-
--[[linux-2.6.33/__KERNEL_PERCPU]]
movl %edx, %fs
SET_KERNEL_GS %edx
-
--[[linux-2.6.33/SET_KERNEL_GS()]]
.endm
*コメント [#v6fc5165]
ページ名: