comparison graal/com.oracle.graal.lir.amd64/src/com/oracle/graal/lir/amd64/AMD64AddressValue.java @ 19526:8fc336a04d77

Create TYPE fields for LIRInstruction and CompositeValue. Renaming NodeClass#get to NodeClass#create.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Fri, 20 Feb 2015 22:22:55 +0100
parents c0b8d395368b
children 89c729e9e0a4
comparison
equal deleted inserted replaced
19525:35481bcb5882 19526:8fc336a04d77
31 import com.oracle.graal.asm.amd64.AMD64Address.Scale; 31 import com.oracle.graal.asm.amd64.AMD64Address.Scale;
32 import com.oracle.graal.lir.*; 32 import com.oracle.graal.lir.*;
33 import com.oracle.graal.lir.LIRInstruction.OperandFlag; 33 import com.oracle.graal.lir.LIRInstruction.OperandFlag;
34 34
35 public final class AMD64AddressValue extends CompositeValue { 35 public final class AMD64AddressValue extends CompositeValue {
36 public static final CompositeValueClass<AMD64AddressValue> TYPE = CompositeValueClass.create(AMD64AddressValue.class);
36 37
37 private static final long serialVersionUID = -4444600052487578694L; 38 private static final long serialVersionUID = -4444600052487578694L;
38 39
39 @Component({REG, OperandFlag.ILLEGAL}) protected AllocatableValue base; 40 @Component({REG, OperandFlag.ILLEGAL}) protected AllocatableValue base;
40 @Component({REG, OperandFlag.ILLEGAL}) protected AllocatableValue index; 41 @Component({REG, OperandFlag.ILLEGAL}) protected AllocatableValue index;
44 public AMD64AddressValue(LIRKind kind, AllocatableValue base, int displacement) { 45 public AMD64AddressValue(LIRKind kind, AllocatableValue base, int displacement) {
45 this(kind, base, Value.ILLEGAL, Scale.Times1, displacement); 46 this(kind, base, Value.ILLEGAL, Scale.Times1, displacement);
46 } 47 }
47 48
48 public AMD64AddressValue(LIRKind kind, AllocatableValue base, AllocatableValue index, Scale scale, int displacement) { 49 public AMD64AddressValue(LIRKind kind, AllocatableValue base, AllocatableValue index, Scale scale, int displacement) {
49 super(kind); 50 super(TYPE, kind);
50 this.base = base; 51 this.base = base;
51 this.index = index; 52 this.index = index;
52 this.scale = scale; 53 this.scale = scale;
53 this.displacement = displacement; 54 this.displacement = displacement;
54 55