Mercurial > hg > jdk9-shenandoah > hotspot
changeset 9455:2cb85c37fb07
Little C2 write barrier fix: only make memory dependency when write barrier is actually new.
author | rkennke |
---|---|
date | Thu, 20 Aug 2015 17:57:41 +0200 |
parents | 1538d2529fb8 |
children | cb4719896b2f |
files | src/share/vm/opto/graphKit.cpp |
diffstat | 1 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/vm/opto/graphKit.cpp Thu Aug 20 17:52:14 2015 +0200 +++ b/src/share/vm/opto/graphKit.cpp Thu Aug 20 17:57:41 2015 +0200 @@ -4458,9 +4458,11 @@ } const TypePtr* adr_type = obj_type->is_ptr()->add_offset(-8); ShenandoahWriteBarrierNode* wb = new ShenandoahWriteBarrierNode(NULL, memory(adr_type), obj); - Node* proj = _gvn.transform(new ShenandoahWBMemProjNode(wb)); - set_memory(proj, adr_type); Node* n = _gvn.transform(wb); + if (wb == n) { + Node* proj = _gvn.transform(new ShenandoahWBMemProjNode(wb)); + set_memory(proj, adr_type); + } record_for_igvn(n); return n;