diff options
author | Anthony Green <green@cygnus.com> | 2000-04-09 01:26:20 +0000 |
---|---|---|
committer | Anthony Green <green@gcc.gnu.org> | 2000-04-09 01:26:20 +0000 |
commit | 3bd835f73ff668e5214eb8be402781d594ea93dc (patch) | |
tree | 61ee1a3348651b269368dca39f7c6b51b8237bf5 /libjava/java | |
parent | 6308dae99ae845156f9782713bee1edf84ab7af6 (diff) | |
download | gcc-3bd835f73ff668e5214eb8be402781d594ea93dc.zip gcc-3bd835f73ff668e5214eb8be402781d594ea93dc.tar.gz gcc-3bd835f73ff668e5214eb8be402781d594ea93dc.tar.bz2 |
natObject.cc (_Jv_MonitorEnter): Only perform null check when we have to.
2000-04-08 Anthony Green <green@redhat.com>
* java/lang/natObject.cc (_Jv_MonitorEnter): Only perform null
check when we have to.
* gcj/array.h: Mark elements(JArray<T>& x) and elements(JArray<T>*
x) as `inline'.
* java/util/StringTokenizer.java: Minor optimization. Eliminates
one method call.
* java/util/Vector.java (VectorEnumeration.nextElement): Manually
inline hasMoreElements.
From-SVN: r33033
Diffstat (limited to 'libjava/java')
-rw-r--r-- | libjava/java/lang/natObject.cc | 3 | ||||
-rw-r--r-- | libjava/java/util/StringTokenizer.java | 2 | ||||
-rw-r--r-- | libjava/java/util/Vector.java | 2 |
3 files changed, 5 insertions, 2 deletions
diff --git a/libjava/java/lang/natObject.cc b/libjava/java/lang/natObject.cc index 25b2966..99e7ac5 100644 --- a/libjava/java/lang/natObject.cc +++ b/libjava/java/lang/natObject.cc @@ -18,6 +18,7 @@ details. */ #include <jvm.h> #include <java/lang/Object.h> #include <java-threads.h> +#include <java-signal.h> #include <java/lang/CloneNotSupportedException.h> #include <java/lang/IllegalArgumentException.h> #include <java/lang/IllegalMonitorStateException.h> @@ -224,8 +225,10 @@ _Jv_InitializeSyncMutex (void) jint _Jv_MonitorEnter (jobject obj) { +#ifndef HANDLE_SEGV if (! obj) JvThrow (new java::lang::NullPointerException); +#endif if (INIT_NEEDED (obj)) obj->sync_init (); _Jv_SyncInfo *si = (_Jv_SyncInfo *) obj->sync_info; diff --git a/libjava/java/util/StringTokenizer.java b/libjava/java/util/StringTokenizer.java index b55c8f7..1686a03 100644 --- a/libjava/java/util/StringTokenizer.java +++ b/libjava/java/util/StringTokenizer.java @@ -180,6 +180,6 @@ public class StringTokenizer implements Enumeration // more readable this way, so we'll take the hit on efficiency. private boolean isDelimiter(char ch) { - return delimiters.indexOf(ch) >= 0; + return delimiters.indexOf(ch, 0) >= 0; } } diff --git a/libjava/java/util/Vector.java b/libjava/java/util/Vector.java index 737c5b4..d980680 100644 --- a/libjava/java/util/Vector.java +++ b/libjava/java/util/Vector.java @@ -38,7 +38,7 @@ class VectorEnumeration implements Enumeration public Object nextElement() { - if (!hasMoreElements()) + if (! (enumIndex < enumVec.size())) throw new NoSuchElementException(); return enumVec.elementData[enumIndex++]; |