vmStructs_solaris_sparc.hpp revision 0:a61af66fc99e
1124483Sdes/*
2124483Sdes * Copyright 2000-2007 Sun Microsystems, Inc.  All Rights Reserved.
3124483Sdes * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4124483Sdes *
5124483Sdes * This code is free software; you can redistribute it and/or modify it
6124483Sdes * under the terms of the GNU General Public License version 2 only, as
7124483Sdes * published by the Free Software Foundation.
8124483Sdes *
9124483Sdes * This code is distributed in the hope that it will be useful, but WITHOUT
10124483Sdes * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11124483Sdes * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12124483Sdes * version 2 for more details (a copy is included in the LICENSE file that
13251069Semaste * accompanied this code).
14124483Sdes *
15124483Sdes * You should have received a copy of the GNU General Public License version
16124483Sdes * 2 along with this work; if not, write to the Free Software Foundation,
17124483Sdes * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18124483Sdes *
19124483Sdes * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
20124483Sdes * CA 95054 USA or visit www.sun.com if you need additional information or
21124483Sdes * have any questions.
22124483Sdes *
23124483Sdes */
24124483Sdes
25124483Sdes// These are the OS and CPU-specific fields, types and integer
26124483Sdes// constants required by the Serviceability Agent. This file is
27124483Sdes// referenced by vmStructs.cpp.
28124483Sdes
29124483Sdes#define VM_STRUCTS_OS_CPU(nonstatic_field, static_field, unchecked_nonstatic_field, volatile_nonstatic_field, nonproduct_nonstatic_field, c2_nonstatic_field, unchecked_c1_static_field, unchecked_c2_static_field, last_entry) \
30124483Sdes                                                                                                                                     \
31124483Sdes  /******************************/                                                                                                   \
32124483Sdes  /* Threads (NOTE: incomplete) */                                                                                                   \
33124483Sdes  /******************************/                                                                                                   \
34124483Sdes                                                                                                                                     \
35124483Sdes  nonstatic_field(JavaThread,                  _base_of_stack_pointer,                        intptr_t*)                             \
36124483Sdes  nonstatic_field(OSThread,                    _thread_id,                                    thread_t)                              \
37124483Sdes  /* This must be the last entry, and must be present */                                                                             \
38124483Sdes  last_entry()
39124483Sdes
40124483Sdes
41124483Sdes#define VM_TYPES_OS_CPU(declare_type, declare_toplevel_type, declare_oop_type, declare_integer_type, declare_unsigned_integer_type, declare_c1_toplevel_type, declare_c2_type, declare_c2_toplevel_type, last_entry) \
42124483Sdes                                                                          \
43124483Sdes  /**********************/                                                \
44184586Skib  /* Solaris Thread IDs */                                                \
45124483Sdes  /**********************/                                                \
46124514Sdes                                                                          \
47124483Sdes  declare_unsigned_integer_type(thread_t)                                 \
48124483Sdes                                                                          \
49  /* This must be the last entry, and must be present */                  \
50  last_entry()
51
52
53#define VM_INT_CONSTANTS_OS_CPU(declare_constant, declare_preprocessor_constant, declare_c1_constant, declare_c2_constant, declare_c2_preprocessor_constant, last_entry) \
54                                                                        \
55  /************************/                                            \
56  /* JavaThread constants */                                            \
57  /************************/                                            \
58                                                                        \
59  declare_constant(JavaFrameAnchor::flushed)                            \
60                                                                        \
61  /* This must be the last entry, and must be present */                \
62  last_entry()
63
64#define VM_LONG_CONSTANTS_OS_CPU(declare_constant, declare_preprocessor_constant, declare_c1_constant, declare_c2_constant, declare_c2_preprocessor_constant, last_entry) \
65                                                                        \
66  /* This must be the last entry, and must be present */                \
67  last_entry()
68