Mercurial > hg > graal-compiler
comparison graal/com.oracle.jvmci.code/src/com/oracle/jvmci/code/ReferenceMap.java @ 21730:b9f9b8af17ff
Simplify interface to reference map
author | Tom Rodriguez <tom.rodriguez@oracle.com> |
---|---|
date | Wed, 03 Jun 2015 19:57:38 -0700 |
parents | 48c1ebd24120 |
children |
comparison
equal
deleted
inserted
replaced
21729:e7f5ddef438d | 21730:b9f9b8af17ff |
---|---|
20 * or visit www.oracle.com if you need additional information or have any | 20 * or visit www.oracle.com if you need additional information or have any |
21 * questions. | 21 * questions. |
22 */ | 22 */ |
23 package com.oracle.jvmci.code; | 23 package com.oracle.jvmci.code; |
24 | 24 |
25 import com.oracle.jvmci.meta.LIRKind; | 25 import com.oracle.jvmci.meta.*; |
26 import com.oracle.jvmci.code.CodeUtil.RefMapFormatter; | |
27 | 26 |
28 public abstract class ReferenceMap implements Cloneable { | 27 public abstract class ReferenceMap { |
29 | 28 |
30 public abstract void setRegister(int idx, LIRKind kind); | 29 /** |
30 * Empty out the reference map. | |
31 */ | |
32 public abstract void reset(); | |
31 | 33 |
32 public abstract void setStackSlot(int offset, LIRKind kind); | 34 /** |
35 * Add {@code value} to the current set of reference values. | |
36 * | |
37 * @param v | |
38 */ | |
39 public abstract void addLiveValue(Value v); | |
33 | 40 |
34 public abstract boolean hasRegisterRefMap(); | 41 /** |
35 | 42 * Perform any final encoding needed before use. |
36 public abstract boolean hasFrameRefMap(); | 43 */ |
37 | 44 public abstract void finish(); |
38 public abstract void appendRegisterMap(StringBuilder sb, RefMapFormatter formatterArg); | |
39 | |
40 public abstract void appendFrameMap(StringBuilder sb, RefMapFormatter formatterArg); | |
41 } | 45 } |