1 /* |
1 /* |
2 * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2005, 2016, 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. |
329 true /* do_load */, false /* patch */, NULL); |
329 true /* do_load */, false /* patch */, NULL); |
330 __ move(value.result(), array_addr, null_check_info); |
330 __ move(value.result(), array_addr, null_check_info); |
331 // Seems to be a precise |
331 // Seems to be a precise |
332 post_barrier(LIR_OprFact::address(array_addr), value.result()); |
332 post_barrier(LIR_OprFact::address(array_addr), value.result()); |
333 } else { |
333 } else { |
334 __ move(value.result(), array_addr, null_check_info); |
334 LIR_Opr result = maybe_mask_boolean(x, array.result(), value.result(), null_check_info); |
|
335 __ move(result, array_addr, null_check_info); |
335 } |
336 } |
336 } |
337 } |
337 |
338 |
338 |
339 |
339 void LIRGenerator::do_MonitorEnter(MonitorEnter* x) { |
340 void LIRGenerator::do_MonitorEnter(MonitorEnter* x) { |