365 *p->bool_field_addr(offset) = (( (jint) contents) & 1);
366 }
367
368 inline jchar oopDesc::char_field(int offset) const {
369 oop p = bs()->read_barrier((oop) this);
370 return (jchar) *p->char_field_addr(offset);
371 }
372 inline void oopDesc::char_field_put(int offset, jchar contents) {
373 oop p = bs()->write_barrier(this);
374 *p->char_field_addr(offset) = (jint) contents;
375 }
376
377 inline jint oopDesc::int_field(int offset) const {
378 oop p = bs()->read_barrier((oop) this);
379 return *p->int_field_addr(offset);
380 }
381 inline void oopDesc::int_field_put(int offset, jint contents) {
382 oop p = bs()->write_barrier(this);
383 *p->int_field_addr(offset) = contents;
384 }
385
386 inline jshort oopDesc::short_field(int offset) const {
387 oop p = bs()->read_barrier((oop) this);
388 return (jshort) *p->short_field_addr(offset);
389 }
390 inline void oopDesc::short_field_put(int offset, jshort contents) {
391 oop p = bs()->write_barrier(this);
392 *p->short_field_addr(offset) = (jint) contents;
393 }
394
395 inline jlong oopDesc::long_field(int offset) const {
396 oop p = bs()->read_barrier((oop) this);
397 return *p->long_field_addr(offset);
398 }
399 inline void oopDesc::long_field_put(int offset, jlong contents) {
400 oop p = bs()->write_barrier(this);
401 *p->long_field_addr(offset) = contents;
402 }
403
404 inline jfloat oopDesc::float_field(int offset) const {
|
365 *p->bool_field_addr(offset) = (( (jint) contents) & 1);
366 }
367
368 inline jchar oopDesc::char_field(int offset) const {
369 oop p = bs()->read_barrier((oop) this);
370 return (jchar) *p->char_field_addr(offset);
371 }
372 inline void oopDesc::char_field_put(int offset, jchar contents) {
373 oop p = bs()->write_barrier(this);
374 *p->char_field_addr(offset) = (jint) contents;
375 }
376
377 inline jint oopDesc::int_field(int offset) const {
378 oop p = bs()->read_barrier((oop) this);
379 return *p->int_field_addr(offset);
380 }
381 inline void oopDesc::int_field_put(int offset, jint contents) {
382 oop p = bs()->write_barrier(this);
383 *p->int_field_addr(offset) = contents;
384 }
385 inline void oopDesc::int_field_put_raw(int offset, jint contents) {
386 *int_field_addr(offset) = contents;
387 }
388
389 inline jshort oopDesc::short_field(int offset) const {
390 oop p = bs()->read_barrier((oop) this);
391 return (jshort) *p->short_field_addr(offset);
392 }
393 inline void oopDesc::short_field_put(int offset, jshort contents) {
394 oop p = bs()->write_barrier(this);
395 *p->short_field_addr(offset) = (jint) contents;
396 }
397
398 inline jlong oopDesc::long_field(int offset) const {
399 oop p = bs()->read_barrier((oop) this);
400 return *p->long_field_addr(offset);
401 }
402 inline void oopDesc::long_field_put(int offset, jlong contents) {
403 oop p = bs()->write_barrier(this);
404 *p->long_field_addr(offset) = contents;
405 }
406
407 inline jfloat oopDesc::float_field(int offset) const {
|