Index: vm/include/open/mainpage.html
===================================================================
--- vm/include/open/mainpage.html (revision 507428)
+++ vm/include/open/mainpage.html (working copy)
@@ -291,324 +291,22 @@
port
port/... .h (40 files)
- @link include/open/compmgr.h @endlink
- @link include/component_manager.h @endlink
- The following table maps the DRLVM component structure described in - DRLVM Developers Guide to the directory structure. Click on component - name to see its description. -
-| Component - | -Prefix - | -Interfaces - | -Header files - | -
| - VM core - | -
- vm
- |
- - VM Common - | -
- @link include/open/vm.h @endlink
- |
-
| - VM_JIT - | -
- @link include/jit_import.h @endlink
+ @link port/include/port_atomic.h @endlink+ @link port/include/port_disasm.h @endlink + @link port/include/port_dso.h @endlink + @link port/include/port_filepath.h @endlink + @link port/include/port_sysinfo.h @endlink + @link port/include/port_timer.h @endlink + @link port/include/port_vmem.h @endlink + |
||
| - VM_EM - | -
-
-
- |
- ||
| - VM_Interpreter - | -
- @link include/interpreter_imports.h @endlink
- |
- ||
| - VM_GC - | -
- @link include/open/vm_gc.h @endlink
- |
- ||
| - VM_Thread - | -
- @link include/open/thread_externals.h @endlink
- |
- ||
| - JNI - | -
-
- @endlink
- |
- ||
| - JVMTI - | -
-
-
- |
- ||
| - Kernel classes - | -@link include/open/vm_kernel_classes.h @endlink |
- ||
| - Execution manager - | -
- em
- |
- - EM Common - | -
-
-
- |
-
| - EM_VM - | -
-
|
- ||
| - EM_JIT - | -
-
- @link include/open/em_profile_access.h @endlink
-
- |
- ||
| - Thread manager - | -
- thread
- |
- - TM_VM - | -
-
-
- |
-
| - TM_GC - | -
-
-
- |
- ||
| - Thread helpers - | -
- @link include/open/thread_helpers.h @endlink
- |
- ||
| - Garbage collector - | -
- gc
- |
- - GC Generic - | -
- @link include/open/gc.h @endlink
- |
-
| - Execution engine - | -
- ee
- |
- - JIT_VM - | -
- @link vmcore/include/jit_export.h @endlink
- |
-
| JIT_EM - | -
-
- @link include/open/ee_em_intf.h @endlink
-
- |
- ||
| - Interpreter - | -
- @link include/interpreter.h
- |
- ||
| Class library support module - | -
- vmi
- |
- VMI - | -
-
- "classlib luni module"/hyvmls.h
- |
-
| - OS portability layer - | -
- port
- |
- - APR extension - | -
- port/... .h (40 files)
- |
-
| Component manager | @@ -618,623 +316,3 @@ |
- The following table maps the DRLVM component structure described in - DRLVM Developers Guide to the directory structure. Click on component - name to see its description. -
-| Component - | -Prefix - | -Interfaces - | -Header files - | -
| - VM core - | -
- vm
- |
- - VM Common - | -
- @link include/open/vm.h @endlink
- |
-
| - VM_JIT - | -
-
- @link include/jit_import.h @endlink
- |
- ||
| - VM_EM - | -
-
-
- |
- ||
| - VM_Interpreter - | -
- @link include/interpreter_imports.h @endlink
- |
- ||
| - VM_GC - | -
- @link include/open/vm_gc.h @endlink
- |
- ||
| - VM_Thread - | -
- @link include/open/thread_externals.h @endlink
- |
- ||
| - JNI - | -
-
- @endlink
- |
- ||
| - JVMTI - | -
-
-
- |
- ||
| - Kernel classes - | -@link include/open/vm_kernel_classes.h @endlink |
- ||
| - Execution manager - | -
- em
- |
- - EM Common - | -
-
-
- |
-
| - EM_VM - | -
-
|
- ||
| - EM_JIT - | -
-
- @link include/open/em_profile_access.h @endlink
-
- |
- ||
| - Thread manager - | -
- thread
- |
- - TM_VM - | -
-
-
- |
-
| - TM_GC - | -
-
-
- |
- ||
| - Thread helpers - | -
- @link include/open/thread_helpers.h @endlink
- |
- ||
| - Garbage collector - | -
- gc
- |
- - GC Generic - | -
- @link include/open/gc.h @endlink
- |
-
| - Execution engine - | -
- ee
- |
- - JIT_VM - | -
- @link vmcore/include/jit_export.h @endlink
- |
-
| JIT_EM - | -
-
- @link include/open/ee_em_intf.h @endlink
-
- |
- ||
| - Interpreter - | -
- @link include/interpreter.h
- |
- ||
| Class library support module - | -
- vmi
- |
- VMI - | -
-
- "classlib luni module"/hyvmls.h
- |
-
| - OS portability layer - | -
- port
- |
- - APR extension - | -
- port/... .h (40 files)
- |
-
| - Component manager - | -
-
|
-
- The following table maps the DRLVM component structure described in - DRLVM Developers Guide to the directory structure. Click on component - name to see its description. -
-| Component - | -Prefix - | -Interfaces - | -Header files - | -
| - VM core - | -
- vm
- |
- - VM Common - | -
- @link include/open/vm.h @endlink
- |
-
| - VM_JIT - | -
-
- @link include/jit_import.h @endlink
- |
- ||
| - VM_EM - | -
-
-
- |
- ||
| - VM_Interpreter - | -
- @link include/interpreter_imports.h @endlink
- |
- ||
| - VM_GC - | -
- @link include/open/vm_gc.h @endlink
- |
- ||
| - VM_Thread - | -
- @link include/open/thread_externals.h @endlink
- |
- ||
| - JNI - | -
-
- @endlink
- |
- ||
| - JVMTI - | -
-
-
- |
- ||
| - Kernel classes - | -@link include/open/vm_kernel_classes.h @endlink |
- ||
| - Execution manager - | -
- em
- |
- - EM Common - | -
-
-
- |
-
| - EM_VM - | -
-
|
- ||
| - EM_JIT - | -
-
- @link include/open/em_profile_access.h @endlink
-
- |
- ||
| - Thread manager - | -
- thread
- |
- - TM_VM - | -
-
-
- |
-
| - TM_GC - | -
-
-
- |
- ||
| - Thread helpers - | -
- @link include/open/thread_helpers.h @endlink
- |
- ||
| - Garbage collector - | -
- gc
- |
- - GC Generic - | -
- @link include/open/gc.h @endlink
- |
-
| - Execution engine - | -
- ee
- |
- - JIT_VM - | -
- @link vmcore/include/jit_export.h @endlink
- |
-
| JIT_EM - | -
-
- @link include/open/ee_em_intf.h @endlink
-
- |
- ||
| - Interpreter - | -
- @link include/interpreter.h
- |
- ||
| Class library support module - | -
- vmi
- |
- VMI - | -
-
- "classlib luni module"/hyvmls.h
- |
-
| - OS portability layer - | -
- port
- |
- - APR extension - | -
- port/... .h (40 files)
- |
-
| - Component manager - | -
-
|
-
APR_SUCCESS if OK, error code otherwise
*/
APR_DECLARE(apr_status_t) port_dso_load_ex(apr_dso_handle_t** handle,
const char* path,
@@ -56,18 +90,25 @@
/**
-* Returns list of directories in which OS searches for libraries.
+* Returns list of directories in which the OS searches for libraries.
+* @param[out] path - pointer to the path list
+* @param pool - storage to allocate the returned buffer
+* @return APR_SUCCESS if OK, error code otherwise
*/
APR_DECLARE(apr_status_t) port_dso_search_path(char** path,
apr_pool_t* pool);
/**
- * Decorate shared library name (.dll <-> lib*.so).
- * @non_apr
+ * Decorates shared library name (.dll <-> lib*.so).
+ * @param dl_name - the name of the shared library
+ * @param pool - storage to allocate the returned handle
+ * @return The platform-specific filename for the library
*/
APR_DECLARE(char *) port_dso_name_decorate(const char* dl_name,
apr_pool_t* pool);
+/** @} */
+
#ifdef __cplusplus
}
#endif
Index: vm/port/include/port_sysinfo.h
===================================================================
--- vm/port/include/port_sysinfo.h (revision 507428)
+++ vm/port/include/port_sysinfo.h (working copy)
@@ -22,6 +22,12 @@
#ifndef _PORT_SYSINFO_H_
#define _PORT_SYSINFO_H_
+/**
+* @file
+* System information routines
+*
+*/
+
#include "open/types.h"
#include "port_general.h"
#include APR_SUCCESS if OK, error code otherwise
*/
APR_DECLARE(apr_status_t) port_executable_name(char** self_name,
apr_pool_t* pool);
@@ -47,29 +61,46 @@
APR_DECLARE(const char *) port_CPU_architecture(void);
/**
-* Returns OS name and version.
+* Provides name and version of the host operating system.
+* @param[out] os_name - pointer to the OS name string
+* @param[out] os_ver - pointer to the OS version string
+* @param pool - a pool to allocate return buffers
+* @return APR_SUCCESS if OK, error code otherwise
*/
APR_DECLARE(apr_status_t) port_OS_name_version(char** os_name, char** os_ver,
apr_pool_t* pool);
/**
-* Returns name of active account.
+* Returns a name of the account, under which the current process is executed.
+* @param[out] account - pointer to the requested name string
+* @param pool - a pool to allocate return buffer
+* @return APR_SUCCESS if OK, error code otherwise
*/
APR_DECLARE(apr_status_t) port_user_name(char** account,
apr_pool_t* pool);
/**
-* Returns home path of active account.
+* Returns home path of the account, under which the process is executed.
+* @param[out] path - pointer to the requested path string
+* @param pool - a pool to allocate return buffer
+* @return APR_SUCCESS if OK, error code otherwise
*/
APR_DECLARE(apr_status_t) port_user_home(char** path,
apr_pool_t* pool);
/**
- * Returns name of current system time zone.
+ * Returns name of current system time zone. Time zone names are defined
+ * in the tz database, see ftp://elsie.nci.nih.gov/pub/.
+ * @param[out] tzname - pointer to the name string
+ * @param pool - a pool to allocate return buffer
+ * @return APR_SUCCESS if OK, error code otherwise
*/
APR_DECLARE(apr_status_t) port_user_timezone(char** tzname,
apr_pool_t* pool);
+/** @} */
+
+
#ifdef __cplusplus
}
#endif
Index: vm/port/include/port_filepath.h
===================================================================
--- vm/port/include/port_filepath.h (revision 507428)
+++ vm/port/include/port_filepath.h (working copy)
@@ -22,17 +22,40 @@
#ifndef _PORT_FILEPATH_H_
#define _PORT_FILEPATH_H_
+/**
+* @file
+* Filepath manipulation routines
+*
+*/
+
#include "port_general.h"
#include APR_SUCCESS if OK, error code otherwise
*/
APR_DECLARE(apr_status_t) port_vmem_reserve(port_vmem_t **block, void **address,
size_t amount,
@@ -63,11 +96,13 @@
size_t pageSize, apr_pool_t *pool);
/**
-* Commits (part of) previously reserved memory region.
-* @param[in,out] address starting address of the region to commit. Returned value
+* Commits (part of) previously reserved memory region. The allocated memory
+* is initialized to zero.
+* @param[in,out] address - starting address of the region to commit. Returned value
* may differ due to page-alignment.
-* @param amount size of the region in bytes
-* @param block descriptor to the reserved virtual memory
+* @param amount - size of the region in bytes
+* @param block - descriptor to the reserved virtual memory
+* @return APR_SUCCESS if OK, error code otherwise
*/
APR_DECLARE(apr_status_t) port_vmem_commit(void **address, size_t amount,
port_vmem_t *block);
@@ -75,6 +110,10 @@
/**
* Decommits the specified region of committed memory. It is safe to
* decommit reserved (but not committed) region.
+* @param address - starting address of the region to decommit
+* @param amount - size of the region in bytes
+* @param block - memory region descriptor
+* @return APR_SUCCESS if OK, error code otherwise
*/
APR_DECLARE(apr_status_t) port_vmem_decommit(void *address, size_t amount,
port_vmem_t *block);
@@ -82,9 +121,10 @@
/**
* Releases previously reserved virtual memory region as a whole.
* If the region was committed, function first decommits it.
+* @param block - memory region descriptor
+* @return APR_SUCCESS if OK, error code otherwise
*/
-APR_DECLARE(apr_status_t) port_vmem_release(/*void *address, size_t amount,*/
- port_vmem_t *block);
+APR_DECLARE(apr_status_t) port_vmem_release(port_vmem_t *block);
/**
* Returns zero-terminated array of supported memory page sizes.
@@ -94,6 +134,7 @@
*/
APR_DECLARE(size_t *) port_vmem_page_sizes();
+/** @} */
#ifdef __cplusplus
}
Index: vm/port/include/port_atomic.h
===================================================================
--- vm/port/include/port_atomic.h (revision 507428)
+++ vm/port/include/port_atomic.h (working copy)
@@ -22,9 +22,20 @@
#ifndef _PORT_ATOMIC_H_
#define _PORT_ATOMIC_H_
+/**
+* @file
+* Atomic operations
+*/
+
#include "open/types.h"
#include "port_general.h"
+/**
+ * @defgroup port_atomic Atomic operations
+ * @ingroup port_apr
+ * @{
+ */
+
#ifdef __cplusplus
extern "C" {
#endif
@@ -42,39 +53,50 @@
* thus they are defined as inlined for most platforms in this file
*/
- #if defined(_IPF_)
+ #if defined(_IPF_) || defined(DOXYGEN)
-
-/**
-* Atomic compare and exchange operation
-* @data[in, out]
-* @value[in] new value
-* @comp[in] value to compare with
-* return old value
+/**
+* Atomic compare and exchange operation on uint8.
+* It compares the current value of the specified data
+* with the comp and if they match, swaps the data
+* with the value.
+* @param[in, out] data - pointer to the value
+* @param[in] value - new value
+* @param[in] comp - value to compare with
+* @return The old value
*/
APR_DECLARE(uint8) port_atomic_cas8(volatile uint8 * data,
uint8 value, uint8 comp);
-/**
-* Atomic compare and exchange operation
-* @data[in, out]
-* @value[in] new value
-* @comp[in] value to compare with
-* return old value
+/**
+* Atomic compare and exchange operation on uint16.
+* It compares the current value of the specified data
+* with the comp and if they match, swaps the data
+* with the value.
+* @param[in, out] data - pointer to the value
+* @param[in] value - new value
+* @param[in] comp - value to compare with
+* @return The old value
*/
APR_DECLARE(uint16) port_atomic_cas16(volatile uint16 * data,
uint16 value, uint16 comp);
-/**
-* Atomic compare and exchange operation
-* @data[in, out]
-* @value[in] new value
-* @comp[in] value to compare with
-* return old value
+/**
+* Atomic compare and exchange operation on uint64.
+* It compares the current value of the specified data
+* with the comp and if they match, swaps the data
+* with the value.
+* @param[in, out] data - pointer to the value
+* @param[in] value - new value
+* @param[in] comp - value to compare with
+* @return The old value
*/
APR_DECLARE(uint64) port_atomic_cas64(volatile uint64 * data,
uint64 value, uint64 comp);
+/** @} */
+
+
#elif defined( WIN32 )
INLINE uint8 port_atomic_cas8(volatile uint8 * data , uint8 value, uint8 comp) {
Index: vm/port/include/port_disasm.h
===================================================================
--- vm/port/include/port_disasm.h (revision 507428)
+++ vm/port/include/port_disasm.h (working copy)
@@ -30,6 +30,13 @@
extern "C" {
#endif
+/**
+ * @defgroup port_disasm Disassembler of machine codes
+ * @ingroup port_apr
+ * @{
+ */
+
+/** */
typedef struct port_disassembler_t port_disassembler_t;
typedef struct port_disasm_info_t {
@@ -95,6 +102,9 @@
unsigned int len,
apr_file_t * thefile);
+/** @} */
+
+
#ifdef __cplusplus
}
#endif
Index: vm/port/include/port_timer.h
===================================================================
--- vm/port/include/port_timer.h (revision 507428)
+++ vm/port/include/port_timer.h (working copy)
@@ -27,18 +27,34 @@
extern "C" {
#endif
+/**
+* @file
+* High resolution timer
+*/
+
+/**
+ * @defgroup port_timer High resolution timer
+ * @ingroup port_apr
+ * @{
+ */
+
/**
- * High resolution timer, in nanoseconds.
+ * High resolution timer, in nanoseconds.
+ * It is not tied to system clocks, rather intended for precise
+ * measuring of elapsed time intervals.
*/
typedef apr_int64_t apr_nanotimer_t;
/**
* Returns the value of the system timer with the best possible accuracy.
- * This value is not tied to the absolute time, but intended for precise
- * measuring of elapsed time intervals.
+ * Difference between two subsequent invocations would produce number of
+ * passed nanoseconds.
*/
APR_DECLARE(apr_nanotimer_t) port_nanotimer();
+/** @} */
+
+
#ifdef __cplusplus
}
#endif
Index: vm/doc/doc.properties
===================================================================
--- vm/doc/doc.properties (revision 507523)
+++ vm/doc/doc.properties (working copy)
@@ -51,7 +51,6 @@
port/include/port_atomic.h \
port/include/port_disasm.h \
port/include/port_dso.h \
-port/include/port_env.h \
port/include/port_filepath.h \
port/include/port_general.h \
port/include/port_malloc.h \
@@ -183,7 +182,6 @@
${jitrino.intf} \
${port.intf} \
${thread.intf} \
-${vmcore_abridged.intf} \
${vmi.intf} \
${vmstart.intf}
@@ -437,12 +435,9 @@
vmcore/src/util/ipf/include/vm_ipf.h \
vmcore/src/util/linux/crash_handler.h \
vmcore/src/util/linux/include/exception_filter.h \
-vmcore/src/util/linux/include/platform.h \
vmcore/src/util/linux/include/platform_lowlevel.h \
vmcore/src/util/linux/include/vm_process.h \
vmcore/src/util/win/include/exception_filter.h \
-vmcore/src/util/win/include/java_lang_thread_nt.h \
-vmcore/src/util/win/include/platform.h \
vmcore/src/util/win/include/platform_lowlevel.h \
vmcore/src/util/win/include/vm_process.h \
vmcore/src/verifier/ver_real.h
Index: vm/doc/vm.cfg
===================================================================
--- vm/doc/vm.cfg (revision 507523)
+++ vm/doc/vm.cfg (working copy)
@@ -938,13 +938,13 @@
# compilation will be performed. Macro expansion can be done in a controlled
# way by setting EXPAND_ONLY_PREDEF to YES.
-MACRO_EXPANSION = NO
+MACRO_EXPANSION = YES
# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
# then the macro expansion is limited to the macros specified with the
# PREDEFINED and EXPAND_AS_PREDEFINED tags.
-EXPAND_ONLY_PREDEF = NO
+EXPAND_ONLY_PREDEF = YES
# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
# in the INCLUDE_PATH (see below) will be search if a #include is found.
@@ -969,6 +969,8 @@
# gcc). The argument of the tag is a list of macros of the form: name
# or name=definition (no spaces). If the definition and the = are
# omitted =1 is assumed.
+PREDEFINED = "APR_DECLARE(x)=x" \
+ DOXYGEN
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
# this tag can be used to specify a list of macro names that should be expanded.