You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by na...@apache.org on 2007/01/14 19:13:55 UTC

svn commit: r496108 [2/4] - in /harmony/enhanced/drlvm/trunk/vm: include/ include/open/ vmcore/include/

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/common.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/common.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/common.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/common.h Sun Jan 14 10:13:53 2007
@@ -14,18 +14,14 @@
  *  See the License for the specific language governing permissions and
  *  limitations under the License.
  */
-/** 
- * @author Aleksey Ignatenko 
- * @version $Revision: 1.1.2.1.4.3 $
- */  
 
 // excluding remarks: 
 #if defined (__INTEL_COMPILER)
-#pragma warning (disable:1684)    // conversion from pointer to same-sized integral type (potential portability problem)
-#pragma warning (disable:279)    // controlling expression is constant
-#pragma warning (disable:444)   // destructor for base class is not virtual
-#pragma warning (disable:981) // operands are evaluated in unspecified order
-#pragma warning (disable:181) // argument is incompatible with corresponding format string conversion (in printf)
+#pragma warning (disable:1684) // conversion from pointer to same-sized integral type (potential portability problem)
+#pragma warning (disable:279)  // controlling expression is constant
+#pragma warning (disable:444)  // destructor for base class is not virtual
+#pragma warning (disable:981)  // operands are evaluated in unspecified order
+#pragma warning (disable:181)  // argument is incompatible with corresponding format string conversion (in printf)
 #pragma warning (disable:1599) // declaration hides variable "dclazz" (declared at line NN)
 #endif // _MSC_VER
 
@@ -33,7 +29,9 @@
 #pragma warning (disable:4800)    // forcing value to bool 'true' or 'false' (performance warning)
 #endif
 
-//Warning appears when local variable is defined and not used
+/** 
+ * Warning appears when local variable is defined and not used.
+ */
 #if defined (__INTEL_COMPILER) && defined(__GNUC__)
 #pragma warning (disable:177)
 #define UNUSED
@@ -48,7 +46,10 @@
 #define UNUSED
 #endif // !__GNUC__
 
-//Warning appears when function parameter is not used in function body
+/** 
+ * Warning appears when function parameter is not used in 
+ * function body.
+ */
 #if defined (__INTEL_COMPILER) && defined(__GNUC__)
 #pragma warning (disable:869)
 #define UNREF

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/ee_em_intf.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/ee_em_intf.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/ee_em_intf.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/ee_em_intf.h Sun Jan 14 10:13:53 2007
@@ -1,23 +1,20 @@
 /*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
  *
- *     http://www.apache.org/licenses/LICENSE-2.0
+ *    http://www.apache.org/licenses/LICENSE-2.0
  *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
  */
-/** 
- * @author Mikhail Y. Fursov
- * @version $Revision: 1.1.2.1.4.4 $
- */  
+  
 #ifndef _EE_EM_H_
 #define _EE_EM_H_
 
@@ -44,9 +41,9 @@
    * The given method is called only once per JIT instance.
    * 
    * @param[in] jit   - the run-time JIT handle used at run-time to refer to 
-   *                the given JIT instance
+   *                    the given JIT instance
    * @param[in] name  - the persistent JIT name that the compiler uses to separate 
-   *                its configuration settings from the ones of other JITs 
+   *                    its configuration settings from the ones of other JITs 
    */
 JITEXPORT void JIT_init(JIT_Handle jit, const char* name);
 
@@ -86,19 +83,18 @@
    * by the <code>role</code> parameter.
    * The profile type and the profile collector are defined by the profile 
    * collector handle.
-
    *
    * @param[in] jit  - the JIT instance 
    * @param[in] pc   - the handle of the profile collector instance
    * @param[in] role - the role of JIT in profiling defining whether to collect 
-   *               or to use the profile
+   *                   or to use the profile
    *
    * @return  <code>TRUE</code> if JIT does profiling of the <code>pc</code> type 
-   *          according the <code>role</code> parameter, <code>FALSE</code> if profiling is not 
-   *          supported.
+   *          according to the <code>role</code> parameter; <code>FALSE</code> if 
+   *          profiling is not supported.
    *
    * @note The given method is optional. A JIT compiler without profiling
-   *        support does not need this method. 
+   *       support does not need this method. 
    */
 JITEXPORT bool JIT_enable_profiling(JIT_Handle jit, PC_Handle pc, EM_JIT_PC_Role role);
 
@@ -108,4 +104,5 @@
 
 
 #endif
+
 

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/em_profile_access.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/em_profile_access.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/em_profile_access.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/em_profile_access.h Sun Jan 14 10:13:53 2007
@@ -1,10 +1,10 @@
 /*
  *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
+ *  contributor license agreements. See the NOTICE file distributed with
  *  this work for additional information regarding copyright ownership.
  *  The ASF licenses this file to You under the Apache License, Version 2.0
  *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
+ *  the License. You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
@@ -14,10 +14,7 @@
  *  See the License for the specific language governing permissions and
  *  limitations under the License.
  */
-/**
- * @author Mikhail Y. Fursov
- * @version $Revision: 1.1.2.2.4.4 $
- */
+
 #ifndef _EM_PROFILE_ACCESS_H_
 #define _EM_PROFILE_ACCESS_H_
 
@@ -29,62 +26,78 @@
 #endif
 
 /**
-  * Known profiler types. Each of the profilers
-  * is represented with separate interface to 
-  * create and to access to profiles.
-  */
+ * Known profiler types. Each of the profilers
+ * is represented with separate interface to 
+ * create and to access to profiles.
+ */
 enum EM_PCTYPE {
-    /**  Entry-backedge profiler
-      *  Collects number execution counts for
-      *  methods entries and backedges if present.
-      */
+  
+/** 
+ * Entry-backedge profiler.
+ * Collects number execution counts for
+ * methods entries and backedges if present.
+ */
     EM_PCTYPE_ENTRY_BACKEDGE=1,
-    /**  Edge profiler.
-      *  Collects profile for method entry and 
-      *  all edges in IR Control Flow Graph
-      */
+/** 
+ * Edge profiler.
+ * Collects profile for method entry and 
+ * all edges in <code>IR Control Flow Graph</code>.
+ */
     EM_PCTYPE_EDGE=2,
-    /** Value profiler
-      * Collects profile for each given instruction
-      */
+
+/** 
+ * Value profiler.
+ * Collects profile for each given instruction.
+ */
     EM_PCTYPE_VALUE=3
     
 };
 
-/** A EM interface used to access to profile collectors*/
+/** 
+ * A EM interface used to access to profile collectors.
+ */
 typedef struct EM_ProfileAccessInterface {
 
-    /** Request profile collector typ for specified profile collector handle 
-      *  @param  _this - EM instance profile collector belongs to
-      *  @param  pc    - profile collector handle we interested in
-      *  @return       - the type of profile collector
-      */
+/** 
+ * Request profile collector type for specified profile collector handle.
+ *
+ *  @param  _this  - EM instance profile collector belongs to
+ *  @param  pc     - profile collector handle we interested in
+ *
+ *  @return The type of profile collector.
+ */
     EM_PCTYPE               (*get_pc_type) (
                                 EM_Handle _this,
                                 PC_Handle pc
                             );
 
-    /** Request method profile from profile collector
-      * @param _this     - EM instance profile collector belongs to
-      * @param pc        - profile collector used to collect profile
-      * @param mh        - method we asking profile for
-      * @return          - method profile handle, that can be used to access
-      *                    to custom method profile properties with 
-      *                    specialized profile collector interface
-      */
+/** 
+ * Request method profile from profile collector.
+ *
+ * @param _this     - EM instance profile collector belongs to
+ * @param pc        - profile collector used to collect profile
+ * @param mh        - method we asking profile for
+ *
+ * @return Method profile handle, that can be used to access
+ *         to custom method profile properties with specialized 
+ *         profile collector interface.
+ */
     Method_Profile_Handle   (*get_method_profile)(
                                 EM_Handle _this,
                                 PC_Handle pc,
                                 Method_Handle mh
                             );
 
-    /** Request profile collector of specified type and role for a JIT
-      * @param _this          - EM instance profile collector belongs to
-      * @param profile_type   - the type of profile collector
-      * @param jh             - handle to JIT, profile collector created for.
-      * @param jit_role       - the role of JIT: the user or supplier of profile
-      * @return               - the handle to profile collector instance 
-      */
+ /** 
+  * Request profile collector of specified type and role for a JIT.
+  *
+  * @param _this          - EM instance profile collector belongs to
+  * @param profile_type   - the type of profile collector
+  * @param jh             - handle to JIT, profile collector created for
+  * @param jit_role       - the role of JIT: the user or supplier of profile
+  *
+  * @return  The handle to profile collector instance. 
+  */
 
     PC_Handle               (*get_pc)(
                                 EM_Handle _this,
@@ -99,108 +112,138 @@
     // All methods below could be moved into separate EB and Edge 
     // profiler collectors specific files.
 
-    /** Create new entry-backedge profile for a method
-      * Only one profile per method can be created for a single 
-      * profile collector instance 
-      */
+/** 
+ * Create new entry-backedge profile for a method.
+ * Only one profile per method can be created for a single 
+ * profile collector instance. 
+ */
     Method_Profile_Handle (*eb_profiler_create_profile) (PC_Handle ph, Method_Handle mh);
 
-    /** Request the address of entry counter
-      * JIT configured to generate entry-backedge profile must 
-      * emit the code to increment this counter every time a method called
-      */
+/** 
+ * Request the address of entry counter.
+ * JIT configured to generate entry-backedge profile must 
+ * emit the code to increment this counter every time a method called.
+ */
     void* (*eb_profiler_get_entry_counter_addr)(Method_Profile_Handle mph);
 
-    /** Request the address of backedge counter
-      * JIT configured to generate entry-backedge profile must 
-      * emit the code to increment this counter every time any backedge in
-      * a method is called
-      */
+/** 
+ * Request the address of backedge counter.
+ * JIT configured to generate entry-backedge profile must 
+ * emit the code to increment this counter every time any backedge in
+ * a method is called.
+ */
     void* (*eb_profiler_get_backedge_counter_addr)(Method_Profile_Handle mph);
 
-    /** Check if entry-backedge profiler is configured to work in synchronous mode
-      * In synchronous mode JIT is responsible to emit checks that counter's limit
-      * is reached for both entry and backedge counters. If limit is reached 
-      * eb_profiler_sync_mode_callback must be called directly from managed code
-      * In asynchronous mode counters checks are done by profile collector in a 
-      * separate thread.
-      * @see eb_profiler_sync_mode_callback()
-      */
+/** 
+ * Check if entry-backedge profiler is configured to work in synchronous mode
+ * In synchronous mode JIT is responsible to emit checks that counter's limit
+ * is reached for both entry and backedge counters. If limit is reached 
+ * <code>eb_profiler_sync_mode_callback</code> must be called directly from 
+ * managed code.
+ * In asynchronous mode counters checks are done by profile collector in a 
+ * separate thread.
+ *
+ * @sa eb_profiler_sync_mode_callback()
+ */
     char (*eb_profiler_is_in_sync_mode)(PC_Handle pch);
 
-    /** If profile collector is in 'sync' mode (@see eb_profiler_is_in_sync_mode())
-      * JIT must call this method every time the counter limit is reached
-      */
+/** 
+ * If profile collector is in <code>sync</code> mode 
+ * JIT must call this method every time the counter limit is reached.
+ *
+ * @sa eb_profiler_is_in_sync_mode()
+ */
     void (*eb_profiler_sync_mode_callback)(Method_Profile_Handle mph);
 
-    /** Return the counter's limit for entry threshold for a given
-      * profile collector
-      */
+/** 
+ * @return The counter's limit for entry threshold for a given
+ *         profile collector.
+ */
     uint32 (*eb_profiler_get_entry_threshold)(PC_Handle pch);
 
-    /** Return the counter's limit for backedge threshold for a given
-      * profile collector
-      */
+/** 
+ * @return The counter's limit for backedge threshold for a given
+ *         profile collector.
+ */
     uint32 (*eb_profiler_get_backedge_threshold)(PC_Handle pch);
 
 
 
     //EDGE profiler interface
 
-    /** Create an edge profile for a method. 
-      * Only one profile per method can be created for a single 
-      * profile collector instance 
-      * @param ph               - edge profile collector handle
-      * @param mh               - method handle to create profile for
-      * @param numEdgeCounters  - number of edge counters in a method
-      * @param counterKeys      - the keys, or numbers, will be associated with 
-      *                           each counter. The key must be used to access to
-      *                           counter value
-      * @param checksum         - profile checksum
-      * @return                 - a handle to access method profile data
-      */
+    /** 
+	 * Create an edge profile for a method. 
+     * Only one profile per method can be created for a single 
+     * profile collector instance.
+	 *
+     * @param ph               - edge profile collector handle
+     * @param mh               - method handle to create profile for
+     * @param numEdgeCounters  - number of edge counters in a method
+     * @param counterKeys      - the keys, or numbers, will be associated with 
+     *                           each counter. The key must be used to access to
+     *                           counter value
+     * @param checksum         - profile checksum
+	 *
+     * @return A handle to access method profile data.
+     */
     Method_Profile_Handle (*edge_profiler_create_profile) (PC_Handle ph, Method_Handle mh, uint32 numEdgeCounters, uint32* counterKeys, uint32 checkSum);
 
 
-    /** Return number of edge counters in profile */
+    /** 
+	 * Return number of edge counters in profile.
+	 */
     uint32 (*edge_profiler_get_num_counters)(Method_Profile_Handle mph);
 
-    /** Return profile checksum*/
+    /** 
+	 * Return profile checksum.
+	 */
     uint32 (*edge_profiler_get_checksum)(Method_Profile_Handle mph);
 
-    /** Return the address of counter associated with key*/
+    /** 
+	 * Return the address of counter associated with key.
+	 */
     void* (*edge_profiler_get_counter_addr)(Method_Profile_Handle mph, uint32 key);
 
-    /** Return the address of entry counter*/
+    /** 
+	 * Return the address of entry counter.
+	 */
     void* (*edge_profiler_get_entry_counter_addr)(Method_Profile_Handle mph);
 
-    /** Return the entry threshold for profile collector
-      */
+    /** 
+	 * Return the entry threshold for profile collector.
+     */
     uint32 (*edge_profiler_get_entry_threshold)(PC_Handle pch);
     
-    /** Return the edge threshold for profile collector
-      */
+    /** 
+	 * Return the edge threshold for profile collector.
+     */
+
     uint32 (*edge_profiler_get_backedge_threshold)(PC_Handle pch);
-    // Value profiler interface
+    
+	// Value profiler interface
 
-    /** Create an value profile for a method. 
-    * Only one profile per method can be created for a single 
-    * profile collector instance 
-    * @param pch              - value profile collector handle
-    * @param mh               - method handle to create profile for
-    * @param numKeys          - number of instructions to be profiled
-    * @param keys             - the keys, or numbers, will be associated with 
-    *                           each instruction. The key must be used to access to
-    *                           instruction value
-    */
+    /** 
+	 * Create an value profile for a method. 
+     * Only one profile per method can be created for a single 
+     * profile collector instance.
+	 *
+     * @param pch              - value profile collector handle
+     * @param mh               - method handle to create profile for
+     * @param numKeys          - number of instructions to be profiled
+     * @param keys             - the keys, or numbers, will be associated with 
+     *                           each instruction. The key must be used to access to
+     *                           instruction value
+     */
     Method_Profile_Handle (*value_profiler_create_profile) (PC_Handle pch, Method_Handle mh, uint32 numKeys, uint32* keys);
     
-    /** Update frequency or insert the new value of given instruction.
-      */
+    /** 
+	 * Update frequency or insert the new value of given instruction.
+     */
     void (*value_profiler_add_value)(Method_Profile_Handle mph, uint32 instructionKey, POINTER_SIZE_INT valueToAdd);
     
-    /** Return the maximum value(by frequency) of give instruction.
-      */
+    /** 
+	 * @return The maximum value(by frequency) of give instruction.
+     */
     POINTER_SIZE_INT (*value_profiler_get_top_value) (Method_Profile_Handle mph, uint32 instructionKey);
 
 
@@ -214,4 +257,5 @@
 
 
 #endif
+
 

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/gc.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/gc.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/gc.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/gc.h Sun Jan 14 10:13:53 2007
@@ -1,10 +1,10 @@
 /*
  *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
+ *  contributor license agreements. See the NOTICE file distributed with
  *  this work for additional information regarding copyright ownership.
  *  The ASF licenses this file to You under the Apache License, Version 2.0
  *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
+ *  the License. You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
@@ -14,10 +14,6 @@
  *  See the License for the specific language governing permissions and
  *  limitations under the License.
  */
-/** 
- * @author Intel, Salikh Zakirov
- * @version $Revision: 1.1.2.1.4.3 $
- */  
 
 #ifndef _OPEN_GC_H
 #define _OPEN_GC_H
@@ -31,9 +27,9 @@
  *
  * This is a global include file which provides to the VM an interface to the
  * GC. This interface is the only supported interface that the VM should call
- * to talk to the GC. All routines in this C interface will begin with "gc_"
+ * to talk to the GC. All routines in this C interface will begin with <code>gc_</code>.
  *
- * The GC expects that there is a vm_gc.h file holding the only  
+ * The GC expects that there is a <code>vm_gc.h</code> file holding the only  
  * interface that the GC will use to talk to the VM.
  *
  * In order to eliminate dependency on certain types such as (VTable *) we 
@@ -53,7 +49,7 @@
 
 
 /**
- * GCExport is used to declare functions exported by GC.
+ * <code>GCExport</code> is used to declare functions exported by GC.
  */
 #ifndef PLATFORM_POSIX
 #ifdef BUILDING_VM
@@ -79,13 +75,10 @@
 
 #if defined(USE_GC_STATIC) || defined(BUILDING_GC)
 
-/*
- * *****
- * *
- * *  Routines to support the initialization and termination of GC.
- * * 
- * *****
+/** 
+ * @name Routines to support the initialization and termination of GC
  */
+//@{
 
 /**
  * Is called by VM to start GC initialization sequence.
@@ -97,10 +90,8 @@
  */
 GCExport void gc_init();
 
-
-
 /**
- * may be called at various points the VM decides are GC-safe.
+ * May be called at various points the VM decides are GC-safe.
  * The GC may ignore this, or it may force a root set enumeration, or it may
  * execute a full GC.
  *
@@ -114,16 +105,13 @@
 /**
  * If the GC supports a "bump-the-pointer" style allocation, where the GC's
  * thread-local information contains a "current" pointer and a "limit" pointer,
- * then it should return TRUE, and it should set *offset_of_current to be the
- * offset into the GC thread block of the "current" pointer, and similar for
- * *offset_of_limit and the "limit" pointer.  If not, then it should return
- * FALSE.
+ * then it should return <code>TRUE</code>, and it should set <code>*offset_of_current</code>
+ * to be the offset into the GC thread block of the "current" pointer, and similar for
+ * <code>*offset_of_limit</code> and the "limit" pointer. If not, then it should return
+ * <code>FALSE</code>.
  */
 GCExport Boolean gc_supports_frontier_allocation(unsigned *offset_of_current, unsigned *offset_of_limit);
 
-
-
-
 /**
  * This API is used by the VM to notify the GC that the
  * VM has completed bootstrapping and initialization, and 
@@ -131,21 +119,19 @@
  * live references.
  *
  * Prior to this function being called the GC might see some
- * strange sights such as NULL or incomplete vtables. The GC will
+ * strange sights such as <code>NULL</code> or incomplete vtables. The GC will
  * need to consider these as normal and work with the VM to ensure 
  * that bootstrapping works. This means that the GC will make few
  * demands on the VM prior to this routine being called.
  *
  * However, once called the GC will feel free to do 
  * stop-the-world collections and will assume that the entire
- * gc_import.h interface is available and fully functioning.
+ * <code>gc_import.h</code> interface is available and fully functioning.
  *
  * If this routine is called twice the result is undefined.
  */
 GCExport void gc_vm_initialized();
 
-
-
 /**
  * This is called once the VM has no use for the heap or the 
  * garbage collector data structures. The assumption is that the 
@@ -154,21 +140,19 @@
  * After this routine has been called the VM can not relie on any
  * data structures created by the GC.
  *
- * Errors: If gc_enumerate_finalizable_objects has been called and
- *         gc_wrapup gc discovers an object that has not had it
+ * Errors: If <code>gc_enumerate_finalizable_objects</code> has been called and
+ *         <code>gc_wrapup</code> gc discovers an object that has not had it
  *         finalizer run then it will attempt to report an error.
  */
 GCExport void gc_wrapup();
 
-
-
 /**
  * Is called by the VM to enumerate the root reference.
  */
 GCExport void gc_add_root_set_entry(Managed_Object_Handle *ref, Boolean is_pinned);
 
 /**
- * Resembles gc_add_root_set_entry() but is passed the address of a slot
+ * Resembles <code>gc_add_root_set_entry()</code> but is passed the address of a slot
  * containing a compressed reference.
  */
 GCExport void gc_add_compressed_root_set_entry(uint32 *ref, Boolean is_pinned);
@@ -176,20 +160,20 @@
 /**
  * Is called by the VM to enumerate weak root reference.
  *
- * @param slot An pointer to the slot, containing the weak root
- * @param is_pinned TRUE denotes that object pointed-to from this slot
- *        should not be moved during garbage collection.
- * @param is_short_weak TRUE means that the weak root must be cleared
- *        before object becomes eligible for finalization.
+ * @param slot          - a pointer to the slot, containing the weak root
+ * @param is_pinned     - <code>TRUE</code> denotes that object pointed-to from this slot
+ *                        should not be moved during garbage collection
+ * @param is_short_weak - <code>TRUE</code> means that the weak root must be cleared
+ *                        before object becomes eligible for finalization
  */
 GCExport void gc_add_weak_root_set_entry(Managed_Object_Handle *slot, 
     Boolean is_pinned, Boolean is_short_weak);
 
-/*
+/**
  * Enumerate a managed pointer.  
- * The pointer can be declared as pinned.  The pointer can
+ * The pointer can be declared as pinned. The pointer can
  * point to the managed heap or any other area where data can be stored: stack
- * or static fields.  It is the responsibility of the GC to ignore pointers
+ * or static fields. It is the responsibility of the GC to ignore pointers
  * that are not in the managed heap.
  *
  * @note Is this function needed for Java? -salikh
@@ -197,22 +181,20 @@
 GCExport void gc_add_root_set_entry_managed_pointer(void **slot,
                                                     Boolean is_pinned);
 
-
-
 /**
- * Call from the VM to the gc to enumerate an interior pointer. **ref is a
+ * Call from the VM to the gc to enumerate an interior pointer. <code>**ref</code> is a
  * slot holding a pointer into the interior of an object. The base of the
- * object is located at *ref - offset. The strategy employed is to place the
- * slot, the object base and the offset into a slot_base_offset table. We then
- * call gc_add_root_set_entry with the slot in the table holding the base of
+ * object is located at <code>*ref</code> - offset. The strategy employed is to place the
+ * slot, the object base and the offset into a <code>slot_base_offset</code> table. We then
+ * call <code>gc_add_root_set_entry</code> with the slot in the table holding the base of
  * the object. Upon completion of the garbage collection the routine
- * fixup_interior_pointers is called and the slot_base_offset table is
+ * <code>fixup_interior_pointers</code> is called and the <code>slot_base_offset</code> table is
  * traversed and the new interior pointer is calculated by adding the base of
- * the object and the offset.  This new interior pointer value is then placed
+ * the object and the offset. This new interior pointer value is then placed
  * into the slot.
  *
  * This routine can be called multiple times with the same interiour pointer
- * without any problems.  The offset is checked to make sure it is positive but
+ * without any problems. The offset is checked to make sure it is positive but
  * the logic is not dependent on this fact.
  *
  * @note Optional function, never called by Java virtual machine.
@@ -270,20 +252,20 @@
  * pointer to the object. If it is not able to allocate the object 
  * without invoking a GC then it returns NULL.
  *
- * @param size - the size of the object to allocate. If the high bit
- *               set then various constraints as described above are
- *               placed on the allocation of this object.
- * @param type - a pointer to the vtable of the class being 
- *                   allocated. This routine will place this value 
- *                   in the appropriate slot of the new object.
- * @param thread_pointer - a pointer to the GC's thread-local space.
- *
- * This is like gc_malloc_or_null, except that it passes a pointer to
- * the thread's GC-specific space as a third argument.  This prevents
- * the GC from having to immediately call vm_get_thread_curr_alloc_block()
+ * @param size            - the size of the object to allocate. If the high bit
+ *                          set then various constraints as described above are
+ *                          placed on the allocation of this object.
+ * @param type            - a pointer to the vtable of the class being 
+ *                          allocated. This routine will place this value 
+ *                          in the appropriate slot of the new object.
+ * @param thread_pointer  - a pointer to the GC's thread-local space
+ *
+ * This is like <code>gc_malloc_or_null</code>, except that it passes a pointer to
+ * the thread's GC-specific space as a third argument. This prevents
+ * the GC from having to immediately call <code>vm_get_thread_curr_alloc_block()</code>
  * as its first task.
  *
- * @note rename of gc_malloc_with_thread_pointer()
+ * @note Rename of <code>gc_malloc_with_thread_pointer()</code>.
  */
 GCExport Managed_Object_Handle gc_alloc_fast(unsigned size, 
                                              Allocation_Handle type,
@@ -293,15 +275,15 @@
  * This routine is used to allocate an object. See the above 
  * discussion on the overloading of size. {link allocation}
  *
- * @param size - the size of the object to allocate. If the high bit
- *               set then various constraints as described above are
- *               placed on the allocation of this object.
- * @param type - a pointer to the vtable of the class being allocated.
- *                   This routine will place this value in the 
- *                   appropriate slot of the new object.
- * @param thread_pointer - a pointer to the GC's thread-local space.
+ * @param size           - the size of the object to allocate. If the high bit
+ *                         set then various constraints as described above are
+ *                         placed on the allocation of this object.
+ * @param type           - a pointer to the vtable of the class being allocated.
+ *                         This routine will place this value in the 
+ *                         appropriate slot of the new object.
+ * @param thread_pointer - a pointer to the GC's thread-local space
  * 
- * @note rename of gc_malloc_or_null_with_thread_pointer()
+ * @note Rename of <code>gc_malloc_or_null_with_thread_pointer()</code>.
  */
 GCExport Managed_Object_Handle gc_alloc(unsigned size, 
                                         Allocation_Handle type,
@@ -311,18 +293,19 @@
 /**
  * For bootstrapping situations, when we still don't have
  * a class for the object. This routine is only available prior to 
- * a call to the call gc_vm_initialized. If it is called after
- * the call to gc_vm_initialized then the results are undefined. 
- * The GC places NULL in the vtable slot of the newly allocated
+ * a call to the call <code>gc_vm_initialized<code>. If it is called after
+ * the call to <code>gc_vm_initialized</code> then the results are undefined. 
+ * The GC places <code>NULL</code> in the vtable slot of the newly allocated
  * object.
  * 
  * The object allocated will be pinned, not finalizable and not an array.
  *
  * @param size - the size of the object to allocate. The high bit
  *               will never be set on this argument.
- * @return The newly allocated object
  *
- * @note Will be renamed to gc_alloc_pinned_noclass() to comply with 
+ * @return The newly allocated object.
+ *
+ * @note Will be renamed to <code>gc_alloc_pinned_noclass()</code> to comply with 
  *       accepted naming conventions.
  */
 GCExport Managed_Object_Handle gc_pinned_malloc_noclass(unsigned size);
@@ -335,45 +318,34 @@
 GCExport Managed_Object_Handle gc_alloc_pinned(unsigned size, Allocation_Handle type, void *thread_pointer);
 
 
-
-
-/*
- * *****
- * *
- * *  Routines to support write barriers.
- * * 
- * *****
+//@}
+/** @name Routines to support write barriers
  */
+//@{
+
 
 /**
- * Returns TRUE if the GC requires write barriers before every store to
- * a field of a reference tpe.
+ * @return <code>TRUE</code> if the GC requires write barriers before every store to
+ *         a field of a reference type.
  */
 GCExport Boolean gc_requires_barriers();
 
-
-
-/*
- * *****
- * *
- * *  Routines to support threads.
- * * 
- * *****
+//@}
+/** @name Routines to support threads
  */
+//@{
+
 
 /**
  * This routine is called during thread startup to set
  * an initial nursery for the thread.
  *
- * @note gc_thread_init and gc_thread_kill assume that
- *           the current thread is the one we are interested in
- *           If we passed in the thread then these things could be
- *           cross inited and cross killed.
+ * @note <code>gc_thread_init</code> and <code>gc_thread_kill</code> assume that
+ *       the current thread is the one we are interested in. If we passed in the 
+ *       thread then these things could be cross inited and cross killed.
  */
 GCExport void gc_thread_init(void *gc_information);
 
-
-
 /**
  * This is called just before the thread is reclaimed.
  */
@@ -389,7 +361,7 @@
  * This function signals VM to obtain thread lock and start thread iteration.
  *
  * \li vm obtains thread lock
- * \li vm repeatedly calls gc_iterate_thread(thread)
+ * \li vm repeatedly calls <code>gc_iterate_thread(thread)</code>
  * \li vm releases thread lock
  *
  * @note Not implemented.
@@ -398,15 +370,15 @@
  
 /**
  * VM calls this method repeatedly to iterate over the list of java threads,
- * initiated earlier by calling vm_iterate_threads()
+ * initiated earlier by calling <code>vm_iterate_threads()</code>.
  *
  * Thread creation and termination is locked during this iteration.
  *
  * gc may do one of the following:
  * 1. store thread handle for later use 
  * 2. enumerate thread right now, while
- * holding thread lock (using vm_suspend_thread(thread) and
- * vm_enumerate_thread_root_set(thread)).
+ *    holding thread lock (using <code>vm_suspend_thread(thread)</code> and
+ *    <code>vm_enumerate_thread_root_set(thread)</code>).
  *
  * @note Not implemented.
  */
@@ -425,13 +397,13 @@
  *
  * GC calls this VM function when it wants a thread
  * to be suspended for stack enumeration or 
- * read/write barrier change
+ * read/write barrier change.
  * 
- * blocks until synchronously call gc_thread_suspended(thread) 
+ * blocks until synchronously call <code>gc_thread_suspended(thread)</code> 
  * or asynchronously delegate enumeration to thread
  * (self-enumeration)
  *
- * @note we need a way to signal that process of thread suspension
+ * @note We need a way to signal that process of thread suspension
  *       is complete.
  *
  * @note Not implemented.
@@ -442,19 +414,19 @@
  * VM calls this GC callback when it's accomplished the requested
  * operation of suspending a thread in gc-safe point
  *
- * may be called synchronously from the same context
- * as vm_suspend_thread() in case of cross-enumeration, or
+ * May be called synchronously from the same context
+ * as <code>vm_suspend_thread()</code> in case of cross-enumeration, or
  * may be called asynchronously from the specified
- * thread context in case of self-enumeration
+ * thread context in case of self-enumeration.
  *
- * after this function completes, 
- * the thread is resumed automatically
+ * After this function completes, 
+ * the thread is resumed automatically.
  *
  * GC is expected to call a limited subset 
  * of GC-VM interface functions from this callback:
- * \li vm_enumerate_thread_root_set(thread)
- * \li vm_install_write_barrier(...)  
- *   (hypothetical, not designed yet)
+ * \li <code>vm_enumerate_thread_root_set(thread)</code>
+ * \li <code>vm_install_write_barrier(...)</code>  
+ *     (hypothetical, not designed yet)
  * \li make a thread stack snapshot for later analysis
  *
  * @note Not implemented.
@@ -463,9 +435,9 @@
 
 /**
  * GC calls this function to command VM to enumerate a thread,
- * which was earlier suspenden using vm_suspend_thread().
+ * which was earlier suspenden using <code>vm_suspend_thread()</code>.
  *
- * In response to this call, VM repeatedly calls gc_add_root_set_entry() to
+ * In response to this call, VM repeatedly calls <code>gc_add_root_set_entry()</code> to
  * enumerate thread stacks and local handles
  *
  * @note Not implemented.
@@ -475,7 +447,7 @@
 /**
  * GC calls this function to command VM to enumerate global slots.
  *
- * during enumeration of global root set, either all threads need 
+ * During enumeration of global root set, either all threads need 
  * to be suspended, or write barrier installed.
  *
  * Apparently some operations should be blocked in VM, like class loading,
@@ -484,25 +456,20 @@
  * this function or introduce new system-wide lock on operations that
  * change the number of global reference slots.
  *
- * this function calls gc_add_root_set_entry() for all global reference
+ * This function calls <code>gc_add_root_set_entry()</code> for all global reference
  * slots.
  *
  * @note Not implemented.
  */
 VMEXPORT void vm_enumerate_global_root_set();
-
-
-/*
- * *****
- * *
- * *  Routines to support the functionality required by the Java language specification.
- * * 
- * *****
+//@}
+/** @name Routines to support the functionality required by the Java language specification
  */
+//@{
 
 /**
  * API for the VM to force a GC, typically in response to a call to 
- * java.lang.Runtime.gc
+ * <code>java.lang.Runtime.gc</code>.
  */
 GCExport void gc_force_gc();
 
@@ -510,26 +477,27 @@
 
 /**
  * API for the VM to determine the current GC heap size, typically in response to a
- * call to java.lang.Runtime.totalMemory
+ * call to <code>java.lang.Runtime.totalMemory</code>.
  */
 GCExport int64 gc_total_memory();
 
 /**
  * API for the VM to determine the maximum GC heap size, typically in response to a
- * call to java.lang.Runtime.maxMemory
+ * call to <code>java.lang.Runtime.maxMemory</code>.
  */
 GCExport int64 gc_max_memory();
 
 
 /**
  * API for the VM to get an approximate view of the free space, 
- * typically in response to a call to java.lang.Runtime.freeMemory
+ * typically in response to a call to <code>java.lang.Runtime.freeMemory</code>.
  */
 GCExport int64 gc_free_memory();
 
 
 /**
- * returns TRUE if the object is pinned.
+ * @return <code>TRUE</code> if the object is pinned.
+ *
  * Routine to support the functionality required by JNI to see if an object is pinned.
  */
 GCExport Boolean gc_is_object_pinned (Managed_Object_Handle obj);
@@ -555,8 +523,8 @@
 
 #else /* #if defined(USE_GC_STATIC) || defined(BUILDING_GC) */
 
-/*
- * the below variables are used in the runtime dynamic linking of
+/**
+ * The below variables are used in the runtime dynamic linking of
  * garbage collector with virtual machine executable.
  */
 
@@ -604,11 +572,11 @@
 
 
 /**
- * granularity of object alignment.
+ * Granularity of object alignment.
  *
  * Objects are aligned on 4 or 8 bytes. If they are aligned on 8 bytes then
  * Arrays will be required to start on the indicated alignement. This means that
- * for 8 byte alignment on the IA32 the header will look like this
+ * for 8 byte alignment on the IA32 the header will look like this:
  *
  * uint32 gc_header_lock_hash
  * VTable *vt
@@ -627,7 +595,7 @@
 #if !defined(USE_GC_STATIC) && !defined(BUILDING_GC)
 
 /*
- * the below variables are used in the runtime dynamic linking of
+ * The below variables are used in the runtime dynamic linking of
  * garbage collector with virtual machine executable.
  */
 
@@ -650,7 +618,7 @@
 
 /* 
  * The variables below are exported by the VM so other DLLs modules
- * may use them. dll_gc.cpp initializes them to the addresses exported
+ * may use them. <code>dll_gc.cpp</code> initializes them to the addresses exported
  * by GC DLL.
  */
 
@@ -661,25 +629,20 @@
 
 #else // USE_GC_STATIC
 
-
-/*
- * *****
- * *
- * *  Routines to support various write barriers.
- * * 
- * *****
+//@}
+/** @name Routines to support various write barriers
  */
-
+//@{
 
 /**
- * Returns TRUE if references within objects and vector elements are to be
- * treated as offsets rather than raw pointers.
+ * @return <code>TRUE</code> if references within objects and vector 
+ *         elements are to be treated as offsets rather than raw pointers.
  */
 GCExport Boolean gc_supports_compressed_references();
 
 /**
  * These interfaces are marked for replacement for the IPF by the following
- * gc_heap_write_mumble interface.
+ * <code>gc_heap_write_mumble</code> interface.
  *
  * @deprecated Will be removed soon.
  */
@@ -695,7 +658,7 @@
 
 
 /**
- * by calling this function VM notifies GC that a heap reference was written to
+ * By calling this function VM notifies GC that a heap reference was written to
  * global slot.
  *
  * There are some global slots that are shared by different threads. Write
@@ -753,8 +716,8 @@
 GCExport int32 gc_get_hashcode (Managed_Object_Handle object);
 
 /**
- *  * Get object hashcode
- *   */
+ * Get object hashcode.
+ */
 GCExport int32 gc_get_hashcode (Managed_Object_Handle p_object);
 
 /**
@@ -765,12 +728,12 @@
 
 /**
  * Iterates all objects in the heap.
- * This function calls vm_iterate_object() for each
+ * This function calls <code>vm_iterate_object()</code> for each
  * iterated object.
  * Used for JVMTI Heap Iteration.
  * Should be called only in stop-the-world setting
  *
- * @see vm_gc.h#vm_iterate_object()
+ * @see <code>vm_gc.h#vm_iterate_object()</code>
  */
 GCExport void gc_iterate_heap();
 
@@ -780,30 +743,28 @@
 GCExport void gc_finalize_on_exit();
 
 
-/*
- * *****
- * *
- * *  Routines to support soft, weak, and phantom reference objects.
- * * 
- * *****
+//@}
+/** @name Routines to support soft, weak, and phantom reference objects
  */
+//@{
+
 
 // XXX move this elsewhere -salikh
 #ifdef JNIEXPORT
 /**
  * reference   - the reference object to register.
  * referent    - the referent of the reference object that is to be
- *                      retrieved with the get method.
+ *               retrieved with the get method.
  *
  * The weak reference code written in Java and the support code provide by the
- * VM must agree on what the layout of a Java.lang.ref.Reference object looks
+ * VM must agree on what the layout of a <code>Java.lang.ref.Reference</code> object looks
  * like and agree that any subclassing will only append fields to the agreed
- * upon layout.  This seems reasonable.
+ * upon layout. This seems reasonable.
  *
  * In addition the support code will have exclusive knowledge and control of a
- * single field (called the_referent) which holds the reference to the target
- * object.  The java code will assume that this field is a read only integer
- * and should not be traced by the gc. The Java.lang.ref.ReferenceQueue layout
+ * single field (called <code>the_referent</code>) which holds the reference to the target
+ * object. The java code will assume that this field is a read only integer
+ * and should not be traced by the gc. The <code>Java.lang.ref.ReferenceQueue</code> layout
  * needs to also be known by the supporting code so that it can move reference
  * objects onto the queues at the appropriate times. The Java code uses normal
  * mechanisms to load the Reference classes and to create a reference.
@@ -811,9 +772,10 @@
  * The constructor code however needs to call the appropriate register function
  * listed below based upon whether we have a soft, weak, or phantom reference.
  * The VM support code will fill in the referent field. The routine
- * gc_get_referent will return the value in this field.  Note that the phantom
- * reference method get will not use the gc_get_referent but instead just
- * return NULL as required by the spec.
+ * <code>gc_get_referent</code> will return the value in this field.
+ *
+ * @note The phantom reference method get will not use the <code>gc_get_referent</code> 
+ *       but instead just return <code>NULL</code> as required by the spec.
  * 
  * @note XXX Why are they in gc_export.h? -salikh
  */
@@ -849,14 +811,14 @@
 GCExport unsigned int gc_time_since_last_gc();
 
 /**
- * @return the base address of the heap.
+ * @return The base address of the heap.
  *
- * API for VM to determine the starting and ending adddresses of the heap
+ * API for VM to determine the starting and ending adddresses of the heap.
  */
 GCExport void *gc_heap_base_address();
 
 /**
- * @return the top address of the heap.
+ * @return The top address of the heap.
  */
 GCExport void *gc_heap_ceiling_address();
 
@@ -870,9 +832,6 @@
 /**
  * \page gc_finalization_and_weak_refs Finalization and weak references design in GC
  *
- * @author Salikh Zakirov
- * @version written on 2005-05-31
- *
  * \section gc_finalization Finalization
  *
  * According to the JVM specification, VM must call non-trivial finalization methods
@@ -884,11 +843,12 @@
  * phantom reference strengh, however, without requiring any particular interaction
  * from them. (In the code we sometimes refer to weak references as <i>short weak
  * references<i>, and call JNI weak global references <i>long weak references</i>.
- * See gc_add_weak_root_set_entry() for more details).
+ *
+ * @sa <code>gc_add_weak_root_set_entry()</code> for more details
  *
  * The requirements described above can be met using following algorithm.
  * \li All weak reference classes can be identified on the stage of class preparation,
- *     when VM calls gc_class_prepared() callback.
+ *     when VM calls <code>gc_class_prepared()</code> callback.
  * \li We start marking with regular (strong) roots, and traverse only strong references.
  *     During the process of marking all objects of the reference classes are collected
  *     to the reference lists. As we traverse only strong references, only strongly reachable
@@ -920,7 +880,7 @@
  * \li Long weak roots are handled in exactly the same way as short weak roots.
  * \li Note, that as the references are cleared, they are also added to the list
  *     of references to be enqueued. This list is later transferred to the VM
- *     using vm_enqueue_reference() function.
+ *     using <code>vm_enqueue_reference()</code> function.
  * \li Weak reference objects require special handling of their referent field,
  *     because it needs to be reported as an updatable slot before compaction.
  *     This is performed as a last step, when we have a guarantee that all
@@ -931,40 +891,37 @@
  * Current implementation of weak references places the following requirements
  * \li All reference objects must have exactly one non-regulur object reference,
  *     and this reference must be at the same offset for references of all types.
- *     GC calls class_is_reference() to find out whether the class represents
+ *     GC calls <code>class_is_reference()</code> to find out whether the class represents
  *     weak reference and finds out the referent offset by calling VM function 
- *     class_get_referent_offset(). Note, that referent offset being constant
+ *     <code>class_get_referent_offset()</code>. Note, that referent offset being constant
  *     for all kinds of references is not enforced by this interface.
- * \li VM must not enqueue references during call of vm_enqueue_reference()
+ * \li VM must not enqueue references during call of <code>vm_enqueue_reference()</code>
  *     because this may lead to deadlocks on reference queue monitors due
- *     to the fact that vm_enqueue_reference() is called during stop-the-world
+ *     to the fact that <code>vm_enqueue_reference()</code> is called during stop-the-world
  *     phase of garbage collection.
  */
 
 
 /**
-\page gc_vm_interface GC-VM interface
-
-@author Salikh Zakirov
-@version 2005-05-31
-
-The interface between garbage collector and virtual machine is
-bidirectional:
-<UL>
-<LI>gc.h contains functions, which GC exports for use in VM.
-<LI>vm_gc.h contains VM functions which are available to GC during its
-operation.
-</UL>
-
-A number of conventions exist, which are not easily expressed as C++ header
-files. These include:
-<UL>
-<LI>Thread local nurseries, see gc_supports_frontier_allocation().
-<LI>Read and Write barrier interface, gc_heap_write_ref() and others.
-</UL>
-
-The conceptual overview of the interface is given in @link guide GC Writers'
-guide @endlink
-*/
+ * \page gc_vm_interface GC-VM interface
+ *
+ * The interface between garbage collector and virtual machine is
+ * bidirectional:
+ * <UL>
+ * <LI>gc.h contains functions, which GC exports for use in VM.
+ * <LI><code>vm_gc.h</code> contains VM functions which are available to GC during its
+ * operation.
+ * </UL>
+ *  
+ * A number of conventions exist, which are not easily expressed as C++ header
+ * files. These include:
+ * <UL>
+ * <LI>Thread local nurseries, see gc_supports_frontier_allocation().
+ * <LI>Read and Write barrier interface, gc_heap_write_ref() and others.
+ * </UL>
+ *
+ * The conceptual overview of the interface is given in @link guide GC Writers'
+ * guide @endlink
+ */
 
 #endif // _OPEN_GC_H

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/hycomp.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/hycomp.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/hycomp.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/hycomp.h Sun Jan 14 10:13:53 2007
@@ -18,36 +18,54 @@
 #if !defined(hycomp_h)
 #define hycomp_h
 
-/*
-USE_PROTOTYPES:       Use full ANSI prototypes.
-CLOCK_PRIMS:          We want the timer/clock prims to be used
-LITTLE_ENDIAN:        This is for the intel machines or other
-                      little endian processors. Defaults to big endian.
-NO_LVALUE_CASTING:    This is for compilers that don't like the left side
-                      of assigns to be cast.  It hacks around to do the
-                      right thing.
-ATOMIC_FLOAT_ACCESS:  So that float operations will work.
-LINKED_USER_PRIMITIVES: Indicates that user primitives are statically linked
-                        with the VM executeable.
-OLD_SPACE_SIZE_DIFF:  The 68k uses a different amount of old space.
-                      This "legitimizes" the change.
-SIMPLE_SIGNAL:        For machines that don't use real signals in C.
-                      (eg: PC, 68k)
-OS_NAME_LOOKUP:       Use nlist to lookup user primitive addresses.
-VMCALL:               Tag for all functions called by the VM.
-VMAPICALL:            Tag for all functions called via the PlatformFunction
-                      callWith: mechanism.
-      
-SYS_FLOAT:  For some math functions where extended types (80 or 96 bits) are returned
-            Most platforms return as a double
-FLOAT_EXTENDED: If defined, the type name for extended precision floats.
-PLATFORM_IS_ASCII: Must be defined if the platform is ASCII
-EXE_EXTENSION_CHAR: the executable has a delimiter that we want to stop at as part of argv[0].
-*/
-/* By default order doubles in the native (i.e. big/little endian) ordering. */
+/**
+ * USE_PROTOTYPES:         Use full ANSI prototypes.
+ *
+ * CLOCK_PRIMS:            We want the timer/clock prims to be used
+ *
+ * LITTLE_ENDIAN:          This is for the intel machines or other
+ *                         little endian processors. Defaults to big endian.
+ *
+ * NO_LVALUE_CASTING:      This is for compilers that don't like the left side
+ *                         of assigns to be cast.  It hacks around to do the
+ *                         right thing.
+ *
+ * ATOMIC_FLOAT_ACCESS:    So that float operations will work.
+ *
+ * LINKED_USER_PRIMITIVES: Indicates that user primitives are statically linked
+ *                         with the VM executeable.
+ *
+ * OLD_SPACE_SIZE_DIFF:    The 68k uses a different amount of old space.
+ *                         This "legitimizes" the change.
+ *
+ * SIMPLE_SIGNAL:          For machines that don't use real signals in C.
+ *                         (eg: PC, 68k)
+ *
+ * OS_NAME_LOOKUP:         Use nlist to lookup user primitive addresses.
+ *
+ * VMCALL:                 Tag for all functions called by the VM.
+ *
+ * VMAPICALL:              Tag for all functions called via the PlatformFunction
+ *                         callWith: mechanism.
+ *      
+ * SYS_FLOAT:              For some math functions where extended types (80 or 96 bits) are returned
+ *                         Most platforms return as a double
+ *
+ * FLOAT_EXTENDED:         If defined, the type name for extended precision floats.
+ *
+ * PLATFORM_IS_ASCII:      Must be defined if the platform is ASCII
+ *
+ * EXE_EXTENSION_CHAR:     the executable has a delimiter that we want to stop at as part of argv[0].
+ *
+ * By default order doubles in the native (that is big/little endian) ordering. 
+ */
+
 #define HY_PLATFORM_DOUBLE_ORDER
 #if defined(LINUX)
-/* NOTE: Linux supports different processors -- do not assume 386 */
+
+/**
+ * @note Linux supports different processors - do not assume 386. 
+ */
 #if defined(LINUXPPC64) || defined(POINTER64)
 #define DATA_TYPES_DEFINED
 typedef unsigned long int UDATA;        /* 64bits */
@@ -78,7 +96,9 @@
 #define DIR_SEPARATOR '/'
 #define DIR_SEPARATOR_STR "/"
 
-/* no priorities on Linux */
+/**
+ * No priorities on Linux 
+ */
 #define HY_PRIORITY_MAP {0,0,0,0,0,0,0,0,0,0,0,0}
 
 #if (defined(LINUXPPC) && !defined(LINUXPPC64))
@@ -89,7 +109,9 @@
 #define GLOBAL_DATA(symbol) ((void*)&(symbol))
 #define GLOBAL_TABLE(symbol) GLOBAL_DATA(symbol)
 
-/* Win32 - Windows 3.1 & NT using Win32 */
+/**
+ * Win32 - Windows 3.1 & NT using Win32 
+ */
 #if defined(WIN32)
 
 typedef __int64 I_64;
@@ -104,9 +126,17 @@
 #define DIR_SEPARATOR '\\'
 #define DIR_SEPARATOR_STR "\\"
 
-/* Modifications for the Alpha running WIN-NT */
+/** 
+ * Modifications for the Alpha running WIN-NT 
+ */
+
 #if defined(_ALPHA_)
-#undef small                    /* defined as char in rpcndr.h */
+#undef small 
+
+/**
+ * Defined as char in rpcndr.h 
+ */
+
 typedef double FLOAT_EXTENDED;
 #endif
 
@@ -130,26 +160,39 @@
 #define VMAPICALL
 #endif
 #define PVMCALL VMCALL *
-/* Provide some reasonable defaults for the VM "types":
-  UDATA     unsigned data, can be used as an integer or pointer storage.
-  IDATA     signed data, can be used as an integer or pointer storage.
-  U_64 / I_64 unsigned/signed 64 bits.
-  U_32 / I_32 unsigned/signed 32 bits.
-  U_16 / I_16 unsigned/signed 16 bits.
-  U_8 / I_8   unsigned/signed 8 bits (bytes -- not to be confused with char)
-  BOOLEAN something that can be zero or non-zero.
-*/
+
+/**
+ * Provide some reasonable defaults for the VM types:
+ * <ul>
+ * <li><code>UDATA</code>        - unsigned data, can be used as an integer or 
+ *                                 pointer storage</li>
+ * <li><code>IDATA</code>        - signed data, can be used as an integer or 
+ *                                 pointer storage</li>
+ * <li><code>U_64 / I_64</code>  - unsigned/signed 64 bits</li>
+ * <li><code>U_32 / I_32</code>  - unsigned/signed 32 bits</li>
+ * <li><code>U_16 / I_16</code>  - unsigned/signed 16 bits</li>
+ * <li><code>U_8 / I_8</code>    - unsigned/signed 8 bits (bytes -- not to be 
+ *                                 confused with char)</li>
+ * <li><code>BOOLEAN</code>      - something that can be zero or non-zero</li>
+ * </ul>
+ */
 #if !defined(DATA_TYPES_DEFINED)
 typedef unsigned int UDATA;
 typedef unsigned int U_32;
 typedef unsigned short U_16;
 typedef unsigned char U_8;
-/* no generic U_64 or I_64 */
+/** 
+ * No generic U_64 or I_64. 
+ */
 typedef int IDATA;
 typedef int I_32;
 typedef short I_16;
 typedef char I_8;
-/* don't typedef BOOLEAN since it's already def'ed on Win32 */
+
+/**
+ * Don't typedef <code>BOOLEAN</code> since it's already def'ed on Win32. 
+ */
+
 #endif
 #ifdef LINUX
 #define BOOLEAN UDATA
@@ -160,12 +203,22 @@
 #endif
 
 #if !defined(HY_DEFAULT_SCHED)
-/* by default, pthreads platforms use the SCHED_OTHER thread scheduling policy */
+
+/**
+ * By default, pthreads platforms use the <code>SCHED_OTHER</code> thread 
+ * scheduling policy. 
+ */
+
 #define HY_DEFAULT_SCHED SCHED_OTHER
 #endif
 
 #if !defined(HY_PRIORITY_MAP)
-/* if no priority map if provided, priorities will be determined algorithmically */
+
+/** 
+ * If no priority map if provided, priorities will be determined 
+ * algorithmically. 
+ */
+
 #endif
 
 #if !defined(FALSE)
@@ -190,17 +243,29 @@
 #define PROTOTYPE(x)  ()
 #define VARARGS
 #endif
-/* Assign the default line delimiter if it was not set */
+
+/** 
+ * Assign the default line delimiter, if it was not set. 
+ */
+
 #if !defined(PLATFORM_LINE_DELIMITER)
 #define PLATFORM_LINE_DELIMITER "\015\012"
 #endif
-/* Set the max path length if it was not set */
+
+/**
+ * Set the max path length, if it was not set. 
+ */
+
 #if !defined(MAX_IMAGE_PATH_LENGTH)
 #define MAX_IMAGE_PATH_LENGTH (2048)
 #endif
 typedef double ESDOUBLE;
 typedef float ESSINGLE;
-/* helpers for U_64s */
+
+/** 
+ * Helpers for U_64s. 
+ */
+
 #define CLEAR_U64(u64)  (u64 = (U_64)0)
 #define LOW_LONG(l) (*((U_32 *) &(l)))
 #define HIGH_LONG(l)  (*(((U_32 *) &(l)) + 1))
@@ -220,7 +285,11 @@
 #define CLASSP(x)   ((Class *) (x))
 #define CLASSPP(x)  ((Class **) (x))
 #define BYTEP(x)    ((BYTE *) (x))
-/* Test - was conflicting with OS2.h */
+
+/**
+ * Test - was conflicting with OS2.h 
+ */
+
 #define ESCHAR(x)   ((CHARACTER) (x))
 #define FLT(x)      ((FLOAT) x)
 #define FLTP(x)     ((FLOAT *) (x))
@@ -262,7 +331,11 @@
 #define LFLT(x)     FLT((x))
 #define LFLTP(x)    FLTP((x))
 #endif
-/* Macros for converting between words and longs and accessing bits */
+
+/**
+ * Macros for converting between words and longs and accessing bits. 
+ */
+
 #define HIGH_WORD(x)  U16(U32((x)) >> 16)
 #define LOW_WORD(x)   U16(U32((x)) & 0xFFFF)
 #define LOW_BIT(o)    (U32((o)) & 1)
@@ -278,24 +351,39 @@
 #define HY_CFUNC
 #define HY_CDATA
 #endif
-/* Macros for tagging functions which read/write the vm thread */
+
+/**
+ * Macros for tagging functions which read/write the vm thread. 
+ */
+
 #define READSVMTHREAD
 #define WRITESVMTHREAD
 #define REQUIRESSTACKFRAME
-/* macro for tagging functions which never return */
+
+/**
+ * Macro for tagging functions, which never return. 
+ */
+
 #if defined(__GNUC__)
-/* on GCC, we can actually pass this information on to the compiler */
+
+/** 
+ * On GCC, we can actually pass this information on to the compiler. 
+ */
+
 #define NORETURN __attribute__((noreturn))
 #else
 #define NORETURN
 #endif
-/* on some systems va_list is an array type.  This is probably in
- * violation of the ANSI C spec, but it's not entirely clear.  Because of this, we end
- * up with an undesired extra level of indirection if we take the address of a
- * va_list argument. 
+
+/**
+ * On some systems <code>va_list</code> is an array type. This is probably in
+ * violation of the ANSI C spec, but it's not entirely clear. Because of this, 
+ * we end up with an undesired extra level of indirection if we take the address 
+ * of a <code>va_list</code> argument. 
  *
- * To get it right ,always use the VA_PTR macro
+ * To get it right, always use the <code>VA_PTR</code> macro.
  */
+
 #if !defined(VA_PTR)
 #define VA_PTR(valist) (&valist)
 #endif
@@ -306,7 +394,11 @@
 #if !defined(TOC_STORE_TOC)
 #define TOC_STORE_TOC(dest,wrappedPointer)
 #endif
-/* Macros for accessing I_64 values */
+
+/**
+ * Macros for accessing I_64 values. 
+ */
+
 #if defined(ATOMIC_LONG_ACCESS)
 #define PTR_LONG_STORE(dstPtr, aLongPtr) ((*U32P(dstPtr) = *U32P(aLongPtr)), (*(U32P(dstPtr)+1) = *(U32P(aLongPtr)+1)))
 #define PTR_LONG_VALUE(dstPtr, aLongPtr) ((*U32P(aLongPtr) = *U32P(dstPtr)), (*(U32P(aLongPtr)+1) = *(U32P(dstPtr)+1)))
@@ -314,11 +406,19 @@
 #define PTR_LONG_STORE(dstPtr, aLongPtr) (*(dstPtr) = *(aLongPtr))
 #define PTR_LONG_VALUE(dstPtr, aLongPtr) (*(aLongPtr) = *(dstPtr))
 #endif
-/* Macro used when declaring tables which require relocations.*/
+
+/** 
+ * Macro used when declaring tables which require relocations.
+ */
+
 #if !defined(HYCONST_TABLE)
 #define HYCONST_TABLE const
 #endif
-/* ANSI qsort is not always available */
+
+/**
+ * ANSI qsort is not always available. 
+ */
+
 #if !defined(HY_SORT)
 #define HY_SORT(base, nmemb, size, compare) qsort((base), (nmemb), (size), (compare))
 #endif

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/hythread_ext.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/hythread_ext.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/hythread_ext.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/hythread_ext.h Sun Jan 14 10:13:53 2007
@@ -1,10 +1,10 @@
 /* 
  * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
+ * contributor license agreements. See the NOTICE file distributed with
  * this work for additional information regarding copyright ownership.
  * The ASF licenses this file to You under the Apache License, Version 2.0
  * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * the License. You may obtain a copy of the License at
  * 
  *     http://www.apache.org/licenses/LICENSE-2.0
  * 
@@ -296,11 +296,12 @@
 int VMCALL hythread_is_daemon(hythread_t thread) ;
 
 
-/**
- * //@}
- * TM Thread states constants. They are compatible with JVMTI.
- * //@{
- */
+ //@}
+ /**
+  * TM Thread states constants. They are compatible with JVMTI.
+  */
+//@{
+
 #define TM_THREAD_STATE_ALIVE JVMTI_THREAD_STATE_ALIVE  // 0x0001 Thread is alive. Zero if thread is new (not started) or terminated.  
 #define TM_THREAD_STATE_TERMINATED JVMTI_THREAD_STATE_TERMINATED // 0x0002Thread has completed execution.  
 #define TM_THREAD_STATE_RUNNABLE JVMTI_THREAD_STATE_RUNNABLE // 0x0004 Thread is runnable.  

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/jthread.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/jthread.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/jthread.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/jthread.h Sun Jan 14 10:13:53 2007
@@ -1,10 +1,10 @@
 /*
  *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
+ *  contributor license agreements. See the NOTICE file distributed with
  *  this work for additional information regarding copyright ownership.
  *  The ASF licenses this file to You under the Apache License, Version 2.0
  *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
+ *  the License. You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
@@ -14,26 +14,26 @@
  *  See the License for the specific language governing permissions and
  *  limitations under the License.
  */
-/**
- * @author Andrey Chernyshev
- * @version $Revision$
- */
+
 
 #ifndef _OPEN_THREAD_GENERIC_H
 #define _OPEN_THREAD_GENERIC_H
 
 /**
- * @file jthread_.h
- * @brief Java threading interface
+ * @file 
+ * Java threading interface
+ *
  * @details
  * Java threading interface - contains functions to work with Java threads. 
  * The generic part od Java thrading interface is mostly targeted to address 
- * the needs of java.lang.Object and java.lang.Thread classes implementations.
- * All functions in this interface start with jthread_* prefix.
- * The implemnentation of this layer provides the mapping of Java thrads onto native/OS threads.
- * 
- * For more detailes see thread manager component documentation located at vm/thread/doc/ThreadManager.htm
+ * the needs of <code>java.lang.Object</code> and <code>java.lang.Thread</code> 
+ * classes implementations.
+ * All functions in this interface start with <code><>jthread_*</code> prefix.
+ * The implemnentation of this layer provides the mapping of Java thrads onto 
+ * native/OS threads.
  * 
+ * For more detailes, see thread manager component documentation located at 
+ * <code>vm/thread/doc/ThreadManager.htm</code>
  */
 
 #include "open/types.h"
@@ -46,7 +46,8 @@
 #endif /* __cplusplus */
 
 
-/** @name Basic manipulation
+/** 
+ * @name Basic manipulation
  */
 //@{
 
@@ -132,15 +133,17 @@
  *
  * @param[in] thread those attribute is set
  * @param[in] name thread name
- * @sa java.lang.Thread.setName()
+ *
+ * @sa <code>java.lang.Thread.setName()</code>
  */
 IDATA jthread_set_name(jthread thread, jstring name);
 
 /**
  * Returns the name for the <code>thread</code>.
  *
- * @param[in] thread those attribute is read
- * @sa java.lang.Thread.getName()
+ * @param[in] - thread those attribute is read
+ *
+ * @sa <code>java.lang.Thread.getName()</code>
  */
 jstring jthread_get_name(jthread thread);
 

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/thread_externals.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/thread_externals.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/thread_externals.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/thread_externals.h Sun Jan 14 10:13:53 2007
@@ -1,9 +1,9 @@
 /* Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
+ * contributor license agreements. See the NOTICE file distributed with
  * this work for additional information regarding copyright ownership.
  * The ASF licenses this file to You under the Apache License, Version 2.0
  * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
+ * the License. You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
@@ -14,10 +14,6 @@
  * limitations under the License.
  */
 
-/* 
- * @author Artem Aliev
- * @version $Revision$
- */
 
 #ifndef OPEN_THREAD_EXTERNALS_H
 #define OPEN_THREAD_EXTERNALS_H
@@ -32,50 +28,50 @@
 
 
 /**
- * Returns the address of the memory chunk in the object which can be used by the 
- * Thread Manager for synchronization purposes.
+ * @param[in] obj - jobject those address needs to be given
  *
- * @param[in] obj jobject those address needs to be given
- * @return 
+ * @return The address of the memory chunk in the object which can be used by the 
+ *         Thread Manager for synchronization purposes.
  */
 VMEXPORT void *vm_object_get_lockword_addr(jobject obj);
 
 /**
- * Returns the size of the memory chunk in the object that can be used by
- * Thread Manager for synchronization purposes. 
+ * @return The size of the memory chunk in the object that can be used by
+ *         Thread Manager for synchronization purposes. 
  *
  * The returned size must be equal for all Java objets and is constant over time. 
- * It should be possible to call this method during initialization time.
- *
- * @return the size 
+ * It should be possible to call this method during initialization time. 
  */
  VMEXPORT size_t vm_object_get_lockword_size();
 
 
 /**
- * Stores a pointer to TM-specific data in the java.lang.Thread object.
+ * Stores a pointer to TM-specific data in the <code>java.lang.Thread</code> object.
  *
  * A typical implementation may store a pointer within a private
  * non-static field of Thread.
  *
- * @param[in] thread a java.lang.Thread object those private field is going to be used for data storage
- * @param[in] data_ptr a pointer to data to be stored
+ * @param[in] thread    - a <code>java.lang.Thread</code> object those private field 
+ *                        is going to be used for data storage
+ * @param[in] data_ptr  - a pointer to data to be stored
  */
 VMEXPORT void vm_jthread_set_tm_data(jthread thread, void *data_ptr);
 
 /**
- * Retrieves TM-specific data from the java.lang.Thread object
+ * Retrieves TM-specific data from the <code>java.lang.Thread</code> object.
  *
- * @param[in] thread a thread 
- * @return TM-specific data previously stored, or NULL if there are none.
+ * @param[in] thread - a thread
+ *
+ * @return TM-specific data previously stored, or <code>NULL</code>,
+ *         if there are none.
  */
 VMEXPORT void *vm_jthread_get_tm_data(jthread thread);
 
 /** 
- * Registrates current thread in VM, so it could execute Java
+ * Registrates current thread in VM, so it could execute Java.
  *
- * @param[in] java_vm current thread will be attached to the specified VM
- * @param[out] p_jni_env will point to JNI environment assocciated with the thread
+ * @param[in] java_vm    - current thread will be attached to the specified VM
+ * @param[out] p_jni_env - will point to JNI environment assocciated with the thread
  */
 VMEXPORT jint vm_attach(JavaVM * java_vm, JNIEnv ** p_jni_env);
 
@@ -85,17 +81,19 @@
 VMEXPORT jint vm_detach(jthread java_thread);
 
 /**
- * creates exception object using given class name and message and throws it
- * using jthread_throw_exception method;
- * @param[in] name char* -name
- * @param[in] message char* -message
- * @return int.
+ * Creates exception object using given class name and message and throws it
+ * using <code>jthread_throw_exception</code> method.
+ *
+ * @param[in] name     - char* name
+ * @param[in] message  - char* message
+ *
+ * @return <code>int</code>
  */
 VMEXPORT IDATA jthread_throw_exception(char* name, char* message);
 
 /**
- * Throws given exception object; Desides whether current thread is unwindable
- * and throws it, raises exception otherwise;
+ * Throws given exception object. Desides whether current thread is unwindable
+ * and throws it, raises exception otherwise.
  */
 VMEXPORT IDATA jthread_throw_exception_object(jobject object);
 
@@ -106,16 +104,18 @@
 VMEXPORT void jvmti_send_wait_monitor_event(jobject obj, jlong timeout);
 
 /**
- * vm_objects_are_equal
- * obj1 jobject
- * obj2 jobject
- * @return int
+ * <code>vm_objects_are_equal<br>
+ * obj1 jobject<br>
+ * obj2 jobject</code>
+ * 
+ * @return <code>int</code>
  */
 VMEXPORT int vm_objects_are_equal(jobject obj1, jobject obj2);
 
 /**
- * ti is enabled
- * @return int
+ * <code>ti</code> is enabled
+ *
+ * @return <code>int</code>
  */
 VMEXPORT int ti_is_enabled();
 
@@ -124,4 +124,5 @@
 #endif
 
 #endif  /* OPEN_THREAD_EXTERNALS_H */
+
 

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/thread_helpers.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/thread_helpers.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/thread_helpers.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/thread_helpers.h Sun Jan 14 10:13:53 2007
@@ -1,6 +1,6 @@
 /*
  *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
+ *  contributor license agreements. See the NOTICE file distributed with
  *  this work for additional information regarding copyright ownership.
  *  The ASF licenses this file to You under the Apache License, Version 2.0
  *  (the "License"); you may not use this file except in compliance with
@@ -14,10 +14,7 @@
  *  See the License for the specific language governing permissions and
  *  limitations under the License.
  */
-/**
- * @author Artem Aliev
- * @version $Revision$
- */
+
 
 #ifndef OPEN_THREAD_HELPERS_H
 #define OPEN_THREAD_HELPERS_H
@@ -26,7 +23,7 @@
  * @file 
  * @brief Provides optimized assambly code generators for common monitor functions.
  *
- * For more detailes see thread manager component documentation located at vm/thread/doc/ThreadManager.htm
+ * @sa Thread manager component documentation located at vm/thread/doc/ThreadManager.htm
  */
 
 #include "open/types.h"

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/ti_thread.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/ti_thread.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/ti_thread.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/ti_thread.h Sun Jan 14 10:13:53 2007
@@ -1,10 +1,10 @@
 /*
  *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
+ *  contributor license agreements. See the NOTICE file distributed with
  *  this work for additional information regarding copyright ownership.
  *  The ASF licenses this file to You under the Apache License, Version 2.0
  *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
+ *  the License. You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
@@ -14,10 +14,7 @@
  *  See the License for the specific language governing permissions and
  *  limitations under the License.
  */
-/**
- * @author Andrey Chernyshev
- * @version $Revision$
- */
+
 
 #ifndef OPEN_THREAD_TI_H
 #define OPEN_THREAD_TI_H
@@ -27,8 +24,9 @@
  * @brief JVMTI support 
  * @details
  * TI part of the Java threading interface.
- * The TI part is mostly targeted to address the needs of JVMTI and java.lang.management classes needs.
- * All functions start with jthread_* prefix.
+ * The TI part is mostly targeted to address the needs of JVMTI and 
+ * <code>java.lang.management</code> classes needs.
+ * All functions start with <code>jthread_*</code> prefix.
  */
 
 #include "jvmti_types.h"
@@ -40,7 +38,7 @@
 #endif /* __cplusplus */
 
 /**
- * JVM TI local storage structure
+ * JVM TI local storage structure.
  *
  * @param[in] thread 
  */

Modified: harmony/enhanced/drlvm/trunk/vm/include/open/types.h
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/include/open/types.h?view=diff&rev=496108&r1=496107&r2=496108
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/include/open/types.h (original)
+++ harmony/enhanced/drlvm/trunk/vm/include/open/types.h Sun Jan 14 10:13:53 2007
@@ -14,10 +14,6 @@
  *  See the License for the specific language governing permissions and
  *  limitations under the License.
  */
-/** 
- * @author Intel, Alexei Fedotov
- * @version $Revision: 1.1.2.1.4.3 $
- */  
 
 #ifndef _VM_TYPES_H_
 #define _VM_TYPES_H_
@@ -25,10 +21,9 @@
 #include "common.h"
 
 #define MAX_UINT32 0xffffffff
-
-//////////////////////////////////////////////////////////////////////////
-// DLL stuff
-
+/**
+ * DLL stuff
+ */
 #if defined(PLATFORM_POSIX) || (defined(USE_STATIC_GC) && defined(BUILDING_GC))
 
 #define VMEXPORT
@@ -52,8 +47,9 @@
 
 #endif // !PLATFORM_POSIX
 
-//////////////////////////////////////////////////////////////////////////
-// Various Numeric Types
+/**
+ * Various Numeric Types
+ */
 
 // Boolean, uint8, int8, uint16, int16, uint32, int32, uint64, int64,
 // POINTER_SIZED_INT
@@ -123,10 +119,12 @@
 
 #endif //!PLATFORM_POSIX
 
-// The integer datatype on the platform that can hold a pointer.
-// ? 02/7/25: addded POINTER_SIZE_SINT, since in some cases
-// a pointer-size integer has to be signed (for example, when specifying LIL offsets)
-#ifdef POINTER64
+/**
+ * The integer datatype on the platform that can hold a pointer.
+ * ? 02/7/25: addded <code>POINTER_SIZE_SINT</code>, since in some cases
+ * a pointer-size integer has to be signed (for example, when specifying LIL offsets)
+ */
+ #ifdef POINTER64
 #define POINTER_SIZE_INT uint64
 #define POINTER_SIZE_SINT int64
 #ifdef PLATFORM_NT
@@ -140,8 +138,9 @@
 #define PI_FMT ""
 #endif // POINTER64
 
-//////////////////////////////////////////////////////////////////////////
-// VM_Data_Type
+/**
+ * <code>VM_Data_Type</code>
+ */
 
 typedef
 enum VM_Data_Type {
@@ -172,8 +171,10 @@
     VM_DATA_TYPE_END     = ')'         // For the iterator
 } VM_Data_Type; //VM_Data_Type
 
-// (? 20030317) These defines are deprecated.
-// Use VM_Data_Type in all new code.
+/**
+ * (? 20030317) These defines are deprecated.
+ * Use <code>VM_Data_Type</code> in all new code.
+ */
 #define Java_Type           VM_Data_Type
 #define JAVA_TYPE_BYTE      VM_DATA_TYPE_INT8
 #define JAVA_TYPE_CHAR      VM_DATA_TYPE_CHAR
@@ -190,12 +191,12 @@
 #define JAVA_TYPE_INVALID   VM_DATA_TYPE_INVALID
 #define JAVA_TYPE_END       VM_DATA_TYPE_END
 
-//////////////////////////////////////////////////////////////////////////
-// Handles for Various VM Structures
-
-// This header file is also used in pure C sources,
-// thus we use struct instead of classes
-
+/**
+ * Handles for Various VM Structures.
+ *
+ * This header file is also used in pure C sources,
+ * thus we use struct instead of classes.
+ */
 typedef struct Class *Class_Handle;
 typedef struct VTable *VTable_Handle;
 typedef struct Field *Field_Handle;
@@ -203,31 +204,37 @@
 typedef struct Method_Signature *Method_Signature_Handle;
 typedef struct TypeDesc *Type_Info_Handle;
 typedef POINTER_SIZE_INT Allocation_Handle;
+typedef POINTER_SIZE_INT Runtime_Type_Handle;
 typedef void* NativeCodePtr;
 typedef struct ClassLoader* ClassLoaderHandle;
 typedef struct ManagedObject* ManagedPointer;
 
-// Fields of these types are not directly accessible from the core VM.
-// typedef struct ManagedObject Java_java_lang_Class;
-// typedef ManagedObject Java_java_lang_System;
+/**
+ * Fields of these types are not directly accessible from the core VM.
+ */
+ typedef struct ManagedObject Java_java_lang_Class;
+typedef ManagedObject Java_java_lang_System;
 typedef struct ManagedObject Java_java_lang_Throwable;
 typedef struct ManagedObject Java_java_lang_Thread;
 typedef struct ManagedObject Java_java_io_FileInputStream;
 typedef struct ManagedObject Java_java_lang_String;
 
 
-// Used for opaques accesses to managed arrays.  This handle points
-// to an array in the managed heap, so handling must be careful to account
-// for the possiblity of a moving GC.
-typedef void *Vector_Handle;
+/**
+ * Used for opaques accesses to managed arrays. This handle points
+ * to an array in the managed heap, so handling must be careful to account
+ * for the possiblity of a moving GC.
+ */
+ typedef void *Vector_Handle;
 
 typedef void *Managed_Object_Handle;
 
 typedef void *GC_Enumeration_Handle;
 
-//For disable warnings in release version.
-//warning type: warning: unused variable <type_of variable> <variable>
+/**
+ * For disable warnings in release version.
+ * warning type: warning: unused variable <type_of variable> <variable>
+ */
 
 
-//////////////////////////////////////////////////////////////////////////
 #endif //!_VM_TYPES_H_