Search in sources :

Example 1 with GenericValueMap

use of org.graalvm.compiler.lir.util.GenericValueMap in project graal by oracle.

the class GenericValueMapTest method run0.

@Test
public void run0() {
    RegisterCategory cat = new RegisterCategory("regs");
    RegisterValue reg = new Register(0, 0, "reg0", cat).asValue();
    Variable var = new Variable(LIRKind.value(DummyKind.Long), 0);
    Object obj0 = new Object();
    Object obj1 = new Object();
    GenericValueMap<Object> map = new GenericValueMap<>();
    assertNull(map.get(reg));
    assertNull(map.get(var));
    map.put(reg, obj0);
    map.put(var, obj1);
    assertEquals(obj0, map.get(reg));
    assertEquals(obj1, map.get(var));
    map.remove(reg);
    map.remove(var);
    assertNull(map.get(reg));
    assertNull(map.get(var));
    map.put(reg, obj0);
    map.put(var, obj1);
    map.put(var, obj0);
    map.put(reg, obj1);
    assertEquals(obj1, map.get(reg));
    assertEquals(obj0, map.get(var));
    map.put(reg, null);
    map.put(var, null);
    assertNull(map.get(reg));
    assertNull(map.get(var));
}
Also used : RegisterValue(jdk.vm.ci.code.RegisterValue) RegisterCategory(jdk.vm.ci.code.Register.RegisterCategory) Variable(org.graalvm.compiler.lir.Variable) Register(jdk.vm.ci.code.Register) GenericValueMap(org.graalvm.compiler.lir.util.GenericValueMap) Test(org.junit.Test)

Aggregations

Register (jdk.vm.ci.code.Register)1 RegisterCategory (jdk.vm.ci.code.Register.RegisterCategory)1 RegisterValue (jdk.vm.ci.code.RegisterValue)1 Variable (org.graalvm.compiler.lir.Variable)1 GenericValueMap (org.graalvm.compiler.lir.util.GenericValueMap)1 Test (org.junit.Test)1