hotspot/test/compiler/jvmci/code/SimpleDebugInfoTest.java
changeset 35604 7b6aa6e00062
parent 35137 c8f8f6de68a7
child 36508 5f9eee6b383b
equal deleted inserted replaced
35603:152856fa06e1 35604:7b6aa6e00062
   215 
   215 
   216     @Test
   216     @Test
   217     public void testConstObject() {
   217     public void testConstObject() {
   218         ResolvedJavaType type = metaAccess.lookupJavaType(objectOnStack());
   218         ResolvedJavaType type = metaAccess.lookupJavaType(objectOnStack());
   219         DebugInfoCompiler compiler = (asm, values) -> {
   219         DebugInfoCompiler compiler = (asm, values) -> {
   220             values[0] = type.getJavaClass();
   220             values[0] = constantReflection.asJavaClass(type);
   221             return null;
   221             return null;
   222         };
   222         };
   223         testObjectOnStack(compiler);
   223         testObjectOnStack(compiler);
   224         testObjectInLocal(compiler);
   224         testObjectInLocal(compiler);
   225     }
   225     }
   226 
   226 
   227     @Test
   227     @Test
   228     public void testRegObject() {
   228     public void testRegObject() {
   229         ResolvedJavaType type = metaAccess.lookupJavaType(objectOnStack());
   229         ResolvedJavaType type = metaAccess.lookupJavaType(objectOnStack());
   230         DebugInfoCompiler compiler = (asm, values) -> {
   230         DebugInfoCompiler compiler = (asm, values) -> {
   231             Register reg = asm.emitLoadPointer((HotSpotConstant) type.getJavaClass());
   231             Register reg = asm.emitLoadPointer((HotSpotConstant) constantReflection.asJavaClass(type));
   232             values[0] = reg.asValue(target.getLIRKind(JavaKind.Object));
   232             values[0] = reg.asValue(target.getLIRKind(JavaKind.Object));
   233             return null;
   233             return null;
   234         };
   234         };
   235         testObjectOnStack(compiler);
   235         testObjectOnStack(compiler);
   236         testObjectInLocal(compiler);
   236         testObjectInLocal(compiler);
   238 
   238 
   239     @Test
   239     @Test
   240     public void testStackObject() {
   240     public void testStackObject() {
   241         ResolvedJavaType type = metaAccess.lookupJavaType(objectOnStack());
   241         ResolvedJavaType type = metaAccess.lookupJavaType(objectOnStack());
   242         DebugInfoCompiler compiler = (asm, values) -> {
   242         DebugInfoCompiler compiler = (asm, values) -> {
   243             Register reg = asm.emitLoadPointer((HotSpotConstant) type.getJavaClass());
   243             Register reg = asm.emitLoadPointer((HotSpotConstant) constantReflection.asJavaClass(type));
   244             values[0] = asm.emitPointerToStack(reg);
   244             values[0] = asm.emitPointerToStack(reg);
   245             return null;
   245             return null;
   246         };
   246         };
   247         testObjectOnStack(compiler);
   247         testObjectOnStack(compiler);
   248         testObjectInLocal(compiler);
   248         testObjectInLocal(compiler);
   251     @Test
   251     @Test
   252     public void testRegNarrowObject() {
   252     public void testRegNarrowObject() {
   253         Assume.assumeTrue(HotSpotVMConfig.config().useCompressedOops);
   253         Assume.assumeTrue(HotSpotVMConfig.config().useCompressedOops);
   254         ResolvedJavaType type = metaAccess.lookupJavaType(objectOnStack());
   254         ResolvedJavaType type = metaAccess.lookupJavaType(objectOnStack());
   255         DebugInfoCompiler compiler = (asm, values) -> {
   255         DebugInfoCompiler compiler = (asm, values) -> {
   256             HotSpotConstant wide = (HotSpotConstant) type.getJavaClass();
   256             HotSpotConstant wide = (HotSpotConstant) constantReflection.asJavaClass(type);
   257             Register reg = asm.emitLoadPointer((HotSpotConstant) wide.compress());
   257             Register reg = asm.emitLoadPointer((HotSpotConstant) wide.compress());
   258             values[0] = reg.asValue(asm.narrowOopKind);
   258             values[0] = reg.asValue(asm.narrowOopKind);
   259             return null;
   259             return null;
   260         };
   260         };
   261         testObjectOnStack(compiler);
   261         testObjectOnStack(compiler);
   265     @Test
   265     @Test
   266     public void testStackNarrowObject() {
   266     public void testStackNarrowObject() {
   267         Assume.assumeTrue(HotSpotVMConfig.config().useCompressedOops);
   267         Assume.assumeTrue(HotSpotVMConfig.config().useCompressedOops);
   268         ResolvedJavaType type = metaAccess.lookupJavaType(objectOnStack());
   268         ResolvedJavaType type = metaAccess.lookupJavaType(objectOnStack());
   269         DebugInfoCompiler compiler = (asm, values) -> {
   269         DebugInfoCompiler compiler = (asm, values) -> {
   270             HotSpotConstant wide = (HotSpotConstant) type.getJavaClass();
   270             HotSpotConstant wide = (HotSpotConstant) constantReflection.asJavaClass(type);
   271             Register reg = asm.emitLoadPointer((HotSpotConstant) wide.compress());
   271             Register reg = asm.emitLoadPointer((HotSpotConstant) wide.compress());
   272             values[0] = asm.emitNarrowPointerToStack(reg);
   272             values[0] = asm.emitNarrowPointerToStack(reg);
   273             return null;
   273             return null;
   274         };
   274         };
   275         testObjectOnStack(compiler);
   275         testObjectOnStack(compiler);