equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 1998, 2016, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1998, 2017, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
280 // Competing writers must acquire exclusive access via a lock. |
280 // Competing writers must acquire exclusive access via a lock. |
281 // A losing writer waits on the lock until the winner writes f1 and leaves |
281 // A losing writer waits on the lock until the winner writes f1 and leaves |
282 // the lock, so that when the losing writer returns, he can use the linked |
282 // the lock, so that when the losing writer returns, he can use the linked |
283 // cache entry. |
283 // cache entry. |
284 |
284 |
285 objArrayHandle resolved_references = cpool->resolved_references(); |
285 objArrayHandle resolved_references(Thread::current(), cpool->resolved_references()); |
286 // Use the resolved_references() lock for this cpCache entry. |
286 // Use the resolved_references() lock for this cpCache entry. |
287 // resolved_references are created for all classes with Invokedynamic, MethodHandle |
287 // resolved_references are created for all classes with Invokedynamic, MethodHandle |
288 // or MethodType constant pool cache entries. |
288 // or MethodType constant pool cache entries. |
289 assert(resolved_references() != NULL, |
289 assert(resolved_references() != NULL, |
290 "a resolved_references array should have been created for this class"); |
290 "a resolved_references array should have been created for this class"); |