16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24
25 package org.graalvm.compiler.lir;
26
27 import jdk.vm.ci.code.RegisterValue;
28 import jdk.vm.ci.code.StackSlot;
29 import jdk.vm.ci.meta.AllocatableValue;
30 import jdk.vm.ci.meta.ValueKind;
31
32 /**
33 * Represents a value that is yet to be bound to a machine location (such as a {@link RegisterValue}
34 * or {@link StackSlot}) by a register allocator.
35 */
36 public final class Variable extends AllocatableValue {
37
38 /**
39 * The identifier of the variable. This is a non-zero index in a contiguous 0-based name space.
40 */
41 public final int index;
42
43 private String name;
44
45 /**
46 * Creates a new variable.
47 *
48 * @param kind
49 * @param index
50 */
51 public Variable(ValueKind<?> kind, int index) {
52 super(kind);
53 assert index >= 0;
54 this.index = index;
55 }
56
|
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24
25 package org.graalvm.compiler.lir;
26
27 import jdk.vm.ci.code.RegisterValue;
28 import jdk.vm.ci.code.StackSlot;
29 import jdk.vm.ci.meta.AllocatableValue;
30 import jdk.vm.ci.meta.ValueKind;
31
32 /**
33 * Represents a value that is yet to be bound to a machine location (such as a {@link RegisterValue}
34 * or {@link StackSlot}) by a register allocator.
35 */
36 public class Variable extends AllocatableValue {
37
38 /**
39 * The identifier of the variable. This is a non-zero index in a contiguous 0-based name space.
40 */
41 public final int index;
42
43 private String name;
44
45 /**
46 * Creates a new variable.
47 *
48 * @param kind
49 * @param index
50 */
51 public Variable(ValueKind<?> kind, int index) {
52 super(kind);
53 assert index >= 0;
54 this.index = index;
55 }
56
|