diff options
author | bryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-05-05 02:56:14 +0000 |
---|---|---|
committer | bryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-05-05 02:56:14 +0000 |
commit | d900301370dd4451acc1f8f0f97fabf624be1168 (patch) | |
tree | cf14a17edadc80507b8cb59cbdf177d63a7452e0 /libjava/java | |
parent | 54f1569b906fb90b8640b74ba6ab6f5394e23d0d (diff) | |
download | ppe42-gcc-d900301370dd4451acc1f8f0f97fabf624be1168.tar.gz ppe42-gcc-d900301370dd4451acc1f8f0f97fabf624be1168.zip |
2000-05-05 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/natClass.cc (isInstance): Use __builtin_expect.
(_Jv_IsAssignableFrom): Ditto.
(_Jv_IsInstanceOf): Ditto.
(_Jv_CheckCast): Ditto.
(_Jv_CheckArrayStore): Ditto.
* java/lang/Class.h (_Jv_InitClass): Ditto.
* java/lang/natObject.cc (_Jv_MonitorEnter): __builtin_expect `false',
not `0'.
(notify): Ditto.
(notifyAll): Ditto.
(wait): Ditto.
(_Jv_MonitorExit): Ditto.
* boehm.cc (_Jv_MarkObj): Ditto.
(_Jv_MarkObj): Ditto.
(_Jv_MarkArray): Ditto.
* prims.cc (_Jv_AllocObject): Ditto.
(_Jv_NewObjectArray): Ditto.
(_Jv_NewPrimArray): Ditto.
(_Jv_Malloc): Ditto.
(_Jv_Realloc): Ditto.
(_Jv_MallocUnchecked): Ditto.
(_Jv_divI): Ditto.
(_Jv_remI): Ditto.
(_Jv_divJ): Ditto.
(_Jv_remJ): Ditto.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@33698 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java')
-rw-r--r-- | libjava/java/lang/Class.h | 2 | ||||
-rw-r--r-- | libjava/java/lang/natClass.cc | 14 | ||||
-rw-r--r-- | libjava/java/lang/natObject.cc | 18 |
3 files changed, 19 insertions, 15 deletions
diff --git a/libjava/java/lang/Class.h b/libjava/java/lang/Class.h index c25398cbb23..d685a1b3293 100644 --- a/libjava/java/lang/Class.h +++ b/libjava/java/lang/Class.h @@ -203,7 +203,7 @@ private: inline friend void _Jv_InitClass (jclass klass) { - if (klass->state != JV_STATE_DONE) + if (__builtin_expect (klass->state != JV_STATE_DONE, false)) klass->initializeClass (); } diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc index 32849927226..93e82103d3a 100644 --- a/libjava/java/lang/natClass.cc +++ b/libjava/java/lang/natClass.cc @@ -622,7 +622,7 @@ java::lang::Class::isAssignableFrom (jclass klass) inline jboolean java::lang::Class::isInstance (jobject obj) { - if (! obj || isPrimitive ()) + if (__builtin_expect (! obj || isPrimitive (), false)) return false; _Jv_InitClass (this); return _Jv_IsAssignableFrom (this, JV_CLASS (obj)); @@ -923,7 +923,7 @@ _Jv_IsAssignableFrom (jclass target, jclass source) { _Jv_IDispatchTable *cl_idt = source->idt; _Jv_IDispatchTable *if_idt = target->idt; - if (if_idt == NULL) + if (__builtin_expect ((if_idt == NULL), false)) return false; // No class implementing TARGET has been loaded. jshort cl_iindex = cl_idt->cls.iindex; if (cl_iindex <= if_idt->iface.ioffsets[0]) @@ -941,13 +941,16 @@ _Jv_IsAssignableFrom (jclass target, jclass source) jboolean _Jv_IsInstanceOf(jobject obj, jclass cl) { - return (obj ? _Jv_IsAssignableFrom (cl, JV_CLASS (obj)) : false); + if (__builtin_expect (!obj, false)) + return false; + return (_Jv_IsAssignableFrom (cl, JV_CLASS (obj))); } void * _Jv_CheckCast (jclass c, jobject obj) { - if (obj != NULL && ! _Jv_IsAssignableFrom(c, JV_CLASS (obj))) + if (__builtin_expect + (obj != NULL && ! _Jv_IsAssignableFrom(c, JV_CLASS (obj)), false)) JvThrow (new java::lang::ClassCastException); return obj; } @@ -960,7 +963,8 @@ _Jv_CheckArrayStore (jobject arr, jobject obj) JvAssert (arr != NULL); jclass elt_class = (JV_CLASS (arr))->getComponentType(); jclass obj_class = JV_CLASS (obj); - if (! _Jv_IsAssignableFrom (elt_class, obj_class)) + if (__builtin_expect + (! _Jv_IsAssignableFrom (elt_class, obj_class), false)) JvThrow (new java::lang::ArrayStoreException); } } diff --git a/libjava/java/lang/natObject.cc b/libjava/java/lang/natObject.cc index 6aed8986d1d..26b3f96844d 100644 --- a/libjava/java/lang/natObject.cc +++ b/libjava/java/lang/natObject.cc @@ -172,10 +172,10 @@ java::lang::Object::sync_init (void) void java::lang::Object::notify (void) { - if (__builtin_expect (INIT_NEEDED (this), 0)) + if (__builtin_expect (INIT_NEEDED (this), false)) sync_init (); _Jv_SyncInfo *si = (_Jv_SyncInfo *) sync_info; - if (__builtin_expect (_Jv_CondNotify (&si->condition, &si->mutex), 0)) + if (__builtin_expect (_Jv_CondNotify (&si->condition, &si->mutex), false)) JvThrow (new IllegalMonitorStateException(JvNewStringLatin1 ("current thread not owner"))); } @@ -183,10 +183,10 @@ java::lang::Object::notify (void) void java::lang::Object::notifyAll (void) { - if (__builtin_expect (INIT_NEEDED (this), 0)) + if (__builtin_expect (INIT_NEEDED (this), false)) sync_init (); _Jv_SyncInfo *si = (_Jv_SyncInfo *) sync_info; - if (__builtin_expect (_Jv_CondNotifyAll (&si->condition, &si->mutex), 0)) + if (__builtin_expect (_Jv_CondNotifyAll (&si->condition, &si->mutex), false)) JvThrow (new IllegalMonitorStateException(JvNewStringLatin1 ("current thread not owner"))); } @@ -194,9 +194,9 @@ java::lang::Object::notifyAll (void) void java::lang::Object::wait (jlong timeout, jint nanos) { - if (__builtin_expect (INIT_NEEDED (this), 0)) + if (__builtin_expect (INIT_NEEDED (this), false)) sync_init (); - if (__builtin_expect (timeout < 0 || nanos < 0 || nanos > 999999, 0)) + if (__builtin_expect (timeout < 0 || nanos < 0 || nanos > 999999, false)) JvThrow (new IllegalArgumentException); _Jv_SyncInfo *si = (_Jv_SyncInfo *) sync_info; switch (_Jv_CondWait (&si->condition, &si->mutex, timeout, nanos)) @@ -226,10 +226,10 @@ jint _Jv_MonitorEnter (jobject obj) { #ifndef HANDLE_SEGV - if (__builtin_expect (! obj, 0)) + if (__builtin_expect (! obj, false)) JvThrow (new java::lang::NullPointerException); #endif - if (__builtin_expect (INIT_NEEDED (obj), 0)) + if (__builtin_expect (INIT_NEEDED (obj), false)) obj->sync_init (); _Jv_SyncInfo *si = (_Jv_SyncInfo *) obj->sync_info; return _Jv_MutexLock (&si->mutex); @@ -241,7 +241,7 @@ _Jv_MonitorExit (jobject obj) JvAssert (obj); JvAssert (! INIT_NEEDED (obj)); _Jv_SyncInfo *si = (_Jv_SyncInfo *) obj->sync_info; - if (__builtin_expect (_Jv_MutexUnlock (&si->mutex), 0)) + if (__builtin_expect (_Jv_MutexUnlock (&si->mutex), false)) JvThrow (new java::lang::IllegalMonitorStateException); return 0; } |