* include/jvm.h (gcj::verifyClasses): Declare.
* link.cc (gcj::verbose_class_flag): Moved.
* prims.cc (gcj::verifyClasses): Define here.
(gcj::verbose_class_flag): Move definition here.
(_Jv_Linker::wait_for_state): Don't call verify_class
if gcj::verifyClasses is not set.
* gij.cc (main): Set gcj::verifyClasses when '-noverify' is given.
2005-05-12 Aaron Luchko <aluchko@redhat.com>
* gij.cc (main): Recognize '-verify', '-noverify', and
'-verifyremote'
2005-05-12 Aaron Luchko <aluchko@redhat.com>
* gcj.texi: Add '-verify', '-noverify', and '-verifyremote'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@99646
138bc75d-0d04-0410-961f-
82ee72b054a4
+2005-05-12 Aaron Luchko <aluchko@redhat.com>
+
+ * gcj.texi: Add '-verify', '-noverify', and '-verifyremote'.
+
2005-05-11 Tom Tromey <tromey@redhat.com>
* gcj.texi (Code Generation): Document -fbootstrap-classes.
@item -mx=@var{number}
Equivalent to @code{-Xmx}.
+@item -noverify
+Do not verify compliance of bytecode with the VM specification. In addition,
+this option disables type verification which is otherwise performed on BC-ABI
+compiled code.
+
@item -X
@itemx -X@var{argument}
Supplying @code{-X} by itself will cause @code{gij} to list all the
compatibility with existing application launch scripts:
@code{-client}, @code{-server}, @code{-hotspot}, @code{-jrockit},
@code{-agentlib}, @code{-agentpath}, @code{-debug}, @code{-d32},
-@code{-d64}, @code{-javaagent} and @code{-noclassgc}.
+@code{-d64}, @code{-javaagent}, @code{-noclassgc}, @code{-verify},
+and @code{-verifyremote}.
@c man end
+2005-05-12 Bryce McKinlay <mckinlay@redhat.com>
+
+ * include/jvm.h (gcj::verifyClasses): Declare.
+ * link.cc (gcj::verbose_class_flag): Moved.
+ * prims.cc (gcj::verifyClasses): Define here.
+ (gcj::verbose_class_flag): Move definition here.
+ (_Jv_Linker::wait_for_state): Don't call verify_class
+ if gcj::verifyClasses is not set.
+ * gij.cc (main): Set gcj::verifyClasses when '-noverify' is given.
+
+2005-05-12 Aaron Luchko <aluchko@redhat.com>
+
+ * gij.cc (main): Recognize '-verify', '-noverify', and
+ '-verifyremote'
+
2005-05-12 Kaz Kojima <kkojima@gcc.gnu.org>
* configure.host: Set IEEESPEC to -mieee for sh*-*-*.
nonstandard_opts_help ();
else if (! strncmp (arg, "-X", 2))
add_option (vm_args, arg, NULL);
+ // Obsolete options recognized for backwards-compatibility.
+ else if (! strcmp (arg, "-verify")
+ || ! strcmp (arg, "-verifyremote"))
+ continue;
+ else if (! strcmp (arg, "-noverify"))
+ {
+ gcj::verifyClasses = false;
+ }
else
{
fprintf (stderr, "gij: unrecognized option -- `%s'\n", argv[i]);
/* Print out class names as they are initialized. */
extern bool verbose_class_flag;
+
+ /* When true, enable the bytecode verifier and BC-ABI verification. */
+ extern bool verifyClasses;
}
// This class handles all aspects of class preparation and linking.
using namespace gcj;
-// When true, print debugging information about class loading.
-bool gcj::verbose_class_flag;
-
typedef unsigned int uaddr __attribute__ ((mode (pointer)));
template<typename T>
if (state >= JV_STATE_LINKED && klass->state < JV_STATE_LINKED)
{
- verify_class (klass);
+ if (gcj::verifyClasses)
+ verify_class (klass);
ensure_class_linked (klass);
link_exception_table (klass);
_Jv_Utf8Const *finit_name;
bool runtimeInitialized = false;
+
+ // When true, print debugging information about class loading.
+ bool verbose_class_flag;
+
+ // When true, enable the bytecode verifier and BC-ABI type verification.
+ bool verifyClasses = true;
}
// We accept all non-standard options accepted by Sun's java command,