Mercurial > hg > graal-jvmci-8
comparison src/share/vm/c1/c1_LIRGenerator.cpp @ 14726:92aa6797d639
Backed out merge changeset: b51e29501f30
Backed out merge revision to its first parent (8f483e200405)
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Mon, 24 Mar 2014 21:30:43 +0100 |
parents | b51e29501f30 |
children |
comparison
equal
deleted
inserted
replaced
14719:0bdd0d157040 | 14726:92aa6797d639 |
---|---|
1732 true /* do_load*/, | 1732 true /* do_load*/, |
1733 needs_patching, | 1733 needs_patching, |
1734 (info ? new CodeEmitInfo(info) : NULL)); | 1734 (info ? new CodeEmitInfo(info) : NULL)); |
1735 } | 1735 } |
1736 | 1736 |
1737 bool needs_atomic_access = is_volatile || AlwaysAtomicAccesses; | 1737 if (is_volatile && !needs_patching) { |
1738 if (needs_atomic_access && !needs_patching) { | |
1739 volatile_field_store(value.result(), address, info); | 1738 volatile_field_store(value.result(), address, info); |
1740 } else { | 1739 } else { |
1741 LIR_PatchCode patch_code = needs_patching ? lir_patch_normal : lir_patch_none; | 1740 LIR_PatchCode patch_code = needs_patching ? lir_patch_normal : lir_patch_none; |
1742 __ store(value.result(), address, info, patch_code); | 1741 __ store(value.result(), address, info, patch_code); |
1743 } | 1742 } |
1806 address = new LIR_Address(object.result(), PATCHED_ADDR, field_type); | 1805 address = new LIR_Address(object.result(), PATCHED_ADDR, field_type); |
1807 } else { | 1806 } else { |
1808 address = generate_address(object.result(), x->offset(), field_type); | 1807 address = generate_address(object.result(), x->offset(), field_type); |
1809 } | 1808 } |
1810 | 1809 |
1811 bool needs_atomic_access = is_volatile || AlwaysAtomicAccesses; | 1810 if (is_volatile && !needs_patching) { |
1812 if (needs_atomic_access && !needs_patching) { | |
1813 volatile_field_load(address, reg, info); | 1811 volatile_field_load(address, reg, info); |
1814 } else { | 1812 } else { |
1815 LIR_PatchCode patch_code = needs_patching ? lir_patch_normal : lir_patch_none; | 1813 LIR_PatchCode patch_code = needs_patching ? lir_patch_normal : lir_patch_none; |
1816 __ load(address, reg, info, patch_code); | 1814 __ load(address, reg, info, patch_code); |
1817 } | 1815 } |