comparison graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/replacements/WriteBarrierSnippets.java @ 15018:db4254246f9a

Remove Constant.forObject and Constant.asObject to improve compiler/VM separation
author Christian Wimmer <christian.wimmer@oracle.com>
date Mon, 07 Apr 2014 16:09:17 -0700
parents 9ecd3da04309
children d90e5c22ba55
comparison
equal deleted inserted replaced
15017:ff5660822992 15018:db4254246f9a
38 import com.oracle.graal.nodes.*; 38 import com.oracle.graal.nodes.*;
39 import com.oracle.graal.nodes.HeapAccess.BarrierType; 39 import com.oracle.graal.nodes.HeapAccess.BarrierType;
40 import com.oracle.graal.nodes.extended.*; 40 import com.oracle.graal.nodes.extended.*;
41 import com.oracle.graal.nodes.spi.*; 41 import com.oracle.graal.nodes.spi.*;
42 import com.oracle.graal.phases.*; 42 import com.oracle.graal.phases.*;
43 import com.oracle.graal.phases.util.*;
44 import com.oracle.graal.replacements.*; 43 import com.oracle.graal.replacements.*;
45 import com.oracle.graal.replacements.Snippet.ConstantParameter; 44 import com.oracle.graal.replacements.Snippet.ConstantParameter;
46 import com.oracle.graal.replacements.SnippetTemplate.AbstractTemplates; 45 import com.oracle.graal.replacements.SnippetTemplate.AbstractTemplates;
47 import com.oracle.graal.replacements.SnippetTemplate.Arguments; 46 import com.oracle.graal.replacements.SnippetTemplate.Arguments;
48 import com.oracle.graal.replacements.SnippetTemplate.SnippetInfo; 47 import com.oracle.graal.replacements.SnippetTemplate.SnippetInfo;
332 private final SnippetInfo g1ArrayRangePreWriteBarrier = snippet(WriteBarrierSnippets.class, "g1ArrayRangePreWriteBarrier"); 331 private final SnippetInfo g1ArrayRangePreWriteBarrier = snippet(WriteBarrierSnippets.class, "g1ArrayRangePreWriteBarrier");
333 private final SnippetInfo g1ArrayRangePostWriteBarrier = snippet(WriteBarrierSnippets.class, "g1ArrayRangePostWriteBarrier"); 332 private final SnippetInfo g1ArrayRangePostWriteBarrier = snippet(WriteBarrierSnippets.class, "g1ArrayRangePostWriteBarrier");
334 333
335 private final CompressEncoding oopEncoding; 334 private final CompressEncoding oopEncoding;
336 335
337 public Templates(Providers providers, TargetDescription target, CompressEncoding oopEncoding) { 336 public Templates(HotSpotProviders providers, TargetDescription target, CompressEncoding oopEncoding) {
338 super(providers, target); 337 super(providers, providers.getSnippetReflection(), target);
339 this.oopEncoding = oopEncoding; 338 this.oopEncoding = oopEncoding;
340 } 339 }
341 340
342 public void lower(SerialWriteBarrier writeBarrier, LoweringTool tool) { 341 public void lower(SerialWriteBarrier writeBarrier, LoweringTool tool) {
343 if (writeBarrier.alwaysNull()) { 342 if (writeBarrier.alwaysNull()) {