1.1 --- a/src/share/vm/classfile/javaClasses.hpp Tue Jan 30 11:22:58 2018 -0800 1.2 +++ b/src/share/vm/classfile/javaClasses.hpp Mon Jan 22 14:27:46 2018 -0500 1.3 @@ -1,5 +1,5 @@ 1.4 /* 1.5 - * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved. 1.6 + * Copyright (c) 1997, 2018, Oracle and/or its affiliates. All rights reserved. 1.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.8 * 1.9 * This code is free software; you can redistribute it and/or modify it 1.10 @@ -929,6 +929,12 @@ 1.11 static HeapWord* discovered_addr(oop ref) { 1.12 return ref->obj_field_addr<HeapWord>(discovered_offset); 1.13 } 1.14 + static inline oop queue(oop ref) { 1.15 + return ref->obj_field(queue_offset); 1.16 + } 1.17 + static inline void set_queue(oop ref, oop value) { 1.18 + return ref->obj_field_put(queue_offset, value); 1.19 + } 1.20 // Accessors for statics 1.21 static oop pending_list_lock(); 1.22 static oop pending_list(); 1.23 @@ -962,6 +968,20 @@ 1.24 }; 1.25 1.26 1.27 +// Interface to java.lang.ref.ReferenceQueue objects 1.28 + 1.29 +class java_lang_ref_ReferenceQueue: public AllStatic { 1.30 +public: 1.31 + static int static_NULL_queue_offset; 1.32 + static int static_ENQUEUED_queue_offset; 1.33 + 1.34 + // Accessors 1.35 + static oop NULL_queue(); 1.36 + static oop ENQUEUED_queue(); 1.37 + 1.38 + static void compute_offsets(); 1.39 +}; 1.40 + 1.41 // Interface to java.lang.invoke.MethodHandle objects 1.42 1.43 class MethodHandleEntry;