* src/vm/vm.c (vm_printconfig): Better and correct output.
[cacao.git] / src / vmcore / options.h
index fef61b2478a9bd1538b1a542f189c33f20522546..dd319945c81ad9b7b4b0172543577a0b0f13d5d7 100644 (file)
@@ -1,6 +1,6 @@
-/* src/vm/options.h - define global options extern
+/* src/vmcore/options.h - define global options extern
 
-   Copyright (C) 1996-2005, 2006 R. Grafl, A. Krall, C. Kruegel,
+   Copyright (C) 1996-2005, 2006, 2007 R. Grafl, A. Krall, C. Kruegel,
    C. Oates, R. Obermaisser, M. Platter, M. Probst, S. Ring,
    E. Steiner, C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich,
    J. Wenninger, Institut f. Computersprachen - TU Wien
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   Contact: cacao@cacaojvm.org
-
-   Authors: Christian Thalinger
-
-   Changes:
-
-   $Id: options.h 7246 2007-01-29 18:49:05Z twisti $
+   $Id: options.h 8236 2007-07-27 10:18:17Z twisti $
 
 */
 
 
 
 #include "config.h"
+
+#include <stdint.h>
+
 #include "vm/types.h"
 
 #include "native/jni.h"
+
 #include "vm/global.h"
 
 
@@ -62,6 +60,16 @@ struct opt_struct {
 };
 
 
+typedef struct option_t option_t;
+
+struct option_t {
+       char *name;
+       int   value;
+       int   type;
+       char *doc;
+};
+
+
 /* global variables ***********************************************************/
 
 extern s4    opt_index;
@@ -91,7 +99,7 @@ extern bool opt_verboseclass;
 extern bool opt_verbosegc;
 extern bool opt_verbosejni;
 extern bool opt_verbosecall;
-extern bool opt_verboseexception;
+extern bool opt_verbosethreads;
 
 extern bool showmethods;
 extern bool showconstantpool;
@@ -110,14 +118,7 @@ extern bool opt_showintermediate;
 extern bool opt_showexceptionstubs;
 extern bool opt_shownativestub;
 
-extern bool useinlining;
-extern bool inlinevirtuals;
-extern bool inlineexceptions;
-extern bool inlineparamopt;
-extern bool inlineoutsiders;
-
 extern bool checkbounds;
-extern bool checknull;
 extern bool opt_noieee;
 extern bool checksync;
 #if defined(ENABLE_LOOP)
@@ -134,13 +135,27 @@ extern bool opt_getcompilingtime;
 #if defined(ENABLE_VERIFIER)
 extern bool opt_verify;
 #endif
-extern bool opt_eager;
 
 #if defined(ENABLE_PROFILING)
 extern bool opt_prof;
 extern bool opt_prof_bb;
 #endif
 
+/* inlining options ***********************************************************/
+
+#if defined(ENABLE_INLINING)
+extern bool opt_inlining;
+#if defined(ENABLE_INLINING_DEBUG) || !defined(NDEBUG)
+extern s4 opt_inline_debug_min_size;
+extern s4 opt_inline_debug_max_size;
+extern s4 opt_inline_debug_end_counter;
+extern bool opt_inline_debug_all;
+#endif /* defined(ENABLE_INLINING_DEBUG) || !defined(NDEBUG) */
+#if !defined(NDEBUG)
+extern bool opt_inline_debug_log;
+#endif /* !defined(NDEBUG) */
+#endif /* defined(ENABLE_INLINING) */
+
 
 /* optimization options *******************************************************/
 
@@ -164,10 +179,41 @@ extern s4   opt_static_supers;
 extern bool vm_debug;
 #endif
 
+/* debug output filtering options *********************************************/
+
+#if defined(ENABLE_DEBUG_FILTER)
+extern const char *opt_filter_verbosecall_include;
+extern const char *opt_filter_verbosecall_exclude;
+extern const char *opt_filter_show_method;
+#endif
+
+
+/* -XX options ****************************************************************/
+
+/* NOTE: For better readability keep these alpha-sorted. */
+
+extern int32_t  opt_DebugStackFrameInfo;
+extern int32_t  opt_DebugStackTrace;
+extern int32_t  opt_MaxPermSize;
+extern int32_t  opt_PermSize;
+extern int      opt_PrintConfig;
+extern int32_t  opt_ProfileGCMemoryUsage;
+extern int32_t  opt_ProfileMemoryUsage;
+extern FILE    *opt_ProfileMemoryUsageGNUPlot;
+extern int32_t  opt_ThreadStackSize;
+extern int32_t  opt_TraceExceptions;
+extern int32_t  opt_TraceJavaCalls;
+extern int32_t  opt_TraceJNICalls;
+extern int32_t  opt_TraceJVMCalls;
+#if defined(ENABLE_REPLACEMENT)
+extern int32_t  opt_TraceReplacement;
+#endif
+
 
 /* function prototypes ********************************************************/
 
-s4 options_get(opt_struct *opts, JavaVMInitArgs *vm_args);
+s4   options_get(opt_struct *opts, JavaVMInitArgs *vm_args);
+void options_xx(const char *name);
 
 #endif /* _OPTIONS_H */