equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1997, 2018, 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. |
105 NativeMovConstReg* method_holder = nativeMovConstReg_at(stub); |
105 NativeMovConstReg* method_holder = nativeMovConstReg_at(stub); |
106 NativeJump* jump = nativeJump_at(method_holder->next_instruction_address()); |
106 NativeJump* jump = nativeJump_at(method_holder->next_instruction_address()); |
107 |
107 |
108 #ifdef ASSERT |
108 #ifdef ASSERT |
109 // read the value once |
109 // read the value once |
110 intptr_t data = method_holder->data(); |
110 volatile intptr_t data = method_holder->data(); |
111 address destination = jump->jump_destination(); |
111 volatile address destination = jump->jump_destination(); |
112 assert(data == 0 || data == (intptr_t)callee(), |
112 assert(data == 0 || data == (intptr_t)callee(), |
113 "a) MT-unsafe modification of inline cache"); |
113 "a) MT-unsafe modification of inline cache"); |
114 assert(destination == (address)-1 || destination == entry, |
114 assert(destination == (address)-1 || destination == entry, |
115 "b) MT-unsafe modification of inline cache"); |
115 "b) MT-unsafe modification of inline cache"); |
116 #endif |
116 #endif |