VirtualBox

source: vbox/trunk/src/VBox/VMM/VMMInternal.mac@ 20786

Last change on this file since 20786 was 20545, checked in by vboxsync, 16 years ago

VMM: Instrumented the setjump code with stack usage statistics (only 32-bit and stack switching version atm).

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 2.2 KB
Line 
1; $Id: VMMInternal.mac 20545 2009-06-13 23:56:48Z vboxsync $
2;; @file
3; VMM - Internal header file.
4;
5
6;
7; Copyright (C) 2006-2009 Sun Microsystems, Inc.
8;
9; This file is part of VirtualBox Open Source Edition (OSE), as
10; available from http://www.virtualbox.org. This file is free software;
11; you can redistribute it and/or modify it under the terms of the GNU
12; General Public License (GPL) as published by the Free Software
13; Foundation, in version 2 as it comes in the "COPYING" file of the
14; VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15; hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16;
17; Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
18; Clara, CA 95054 USA or visit http://www.sun.com if you need
19; additional information or have any questions.
20;
21
22%include "VBox/asmdefs.mac"
23
24;
25; Determin the default stack switching unless specified explicitly.
26;
27%ifndef VMM_R0_SWITCH_STACK
28 %ifndef VMM_R0_NO_SWITCH_STACK
29 %ifdef RT_OS_DARWIN
30 %define VMM_R0_SWITCH_STACK
31 %endif
32 %endif
33%endif
34
35
36struc VMMR0JMPBUF
37%ifdef RT_ARCH_X86
38 ; traditional jmp_buf
39 .ebx resd 1
40 .esi resd 1
41 .edi resd 1
42 .ebp resd 1
43 .esp resd 1
44 .eip resd 1
45 .u32Padding resd 1
46
47 ; additional state and stack info.
48 .fInRing3Call resd 1
49 .cbSavedStack resd 1
50 .pvSavedStack resd 1
51 .SpCheck resd 1
52 .SpResume resd 1
53 .SavedEsp resd 1
54 .SavedEbp resd 1
55%endif
56%ifdef RT_ARCH_AMD64
57 ; traditional jmp_buf
58 .rbx resq 1
59 %ifdef RT_OS_WINDOWS
60 .rsi resq 1
61 .rdi resq 1
62 %endif
63 .rbp resq 1
64 .r12 resq 1
65 .r13 resq 1
66 .r14 resq 1
67 .r15 resq 1
68 .rsp resq 1
69 .rip resq 1
70
71 ; additional state and stack info.
72 .fInRing3Call resd 1
73 .cbSavedStack resd 1
74 .pvSavedStack resq 1
75 .SpCheck resq 1
76 .SpResume resq 1
77 .SavedEsp resq 1
78 .SavedEbp resq 1
79%endif
80
81 ; Statistics
82 .cbUsedMax resd 1
83 .cbUsedAvg resd 1
84 .cbUsedTotal resq 1
85 .cUsedTotal resq 1
86endstruc
87
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette