< prev index next >

test/jdk/java/foreign/TestHeapAlignment.java

Print this page
*** 21,12 ***
   * questions.
   */
  
  /*
   * @test
-  * @enablePreview
-  * @requires jdk.foreign.linker != "UNSUPPORTED"
   * @run testng/othervm --enable-native-access=ALL-UNNAMED TestHeapAlignment
   */
  
  import java.lang.foreign.AddressLayout;
  import java.lang.foreign.MemoryLayout;
--- 21,10 ---

*** 43,15 ***
  
  public class TestHeapAlignment {
  
      @Test(dataProvider = "layouts")
      public void testHeapAlignment(MemorySegment segment, int align, Object val, Object arr, ValueLayout layout, Function<Object, MemorySegment> segmentFactory) {
!         assertAligned(align, layout, () -> layout.varHandle().get(segment));
!         assertAligned(align, layout, () -> layout.varHandle().set(segment, val));
          MemoryLayout seq = MemoryLayout.sequenceLayout(10, layout);
!         assertAligned(align, layout, () -> seq.varHandle(MemoryLayout.PathElement.sequenceElement()).get(segment, 0L));
!         assertAligned(align, layout, () -> seq.varHandle(MemoryLayout.PathElement.sequenceElement()).set(segment, 0L, val));
          assertAligned(align, layout, () -> segment.spliterator(layout));
          if (arr != null) {
              assertAligned(align, layout, () -> MemorySegment.copy(arr, 0, segment, layout, 0, 1));
              assertAligned(align, layout, () -> MemorySegment.copy(segment, layout, 0, arr, 0, 1));
              assertAligned(align, layout, () -> {
--- 41,15 ---
  
  public class TestHeapAlignment {
  
      @Test(dataProvider = "layouts")
      public void testHeapAlignment(MemorySegment segment, int align, Object val, Object arr, ValueLayout layout, Function<Object, MemorySegment> segmentFactory) {
!         assertAligned(align, layout, () -> layout.varHandle().get(segment, 0L));
!         assertAligned(align, layout, () -> layout.varHandle().set(segment, 0L, val));
          MemoryLayout seq = MemoryLayout.sequenceLayout(10, layout);
!         assertAligned(align, layout, () -> seq.varHandle(MemoryLayout.PathElement.sequenceElement()).get(segment, 0L, 0L));
!         assertAligned(align, layout, () -> seq.varHandle(MemoryLayout.PathElement.sequenceElement()).set(segment, 0L, 0L, val));
          assertAligned(align, layout, () -> segment.spliterator(layout));
          if (arr != null) {
              assertAligned(align, layout, () -> MemorySegment.copy(arr, 0, segment, layout, 0, 1));
              assertAligned(align, layout, () -> MemorySegment.copy(segment, layout, 0, arr, 0, 1));
              assertAligned(align, layout, () -> {
< prev index next >