jdk/test/java/lang/invoke/VarHandles/X-VarHandleTestByteArrayView.java.template
changeset 38358 cb99c6d2af1b
parent 37719 add11bc0e6e2
parent 38357 f18eb84a3b96
child 38368 c8eb5d6812c5
equal deleted inserted replaced
38350:da6c6f544dfb 38358:cb99c6d2af1b
   882                     $type$ x = ($type$) vh.get(array, i);
   882                     $type$ x = ($type$) vh.get(array, i);
   883                     assertEquals(x, VALUE_1, "failing compareAndExchangeRelease $type$ value");
   883                     assertEquals(x, VALUE_1, "failing compareAndExchangeRelease $type$ value");
   884                 }
   884                 }
   885 
   885 
   886                 {
   886                 {
   887                     boolean r = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2);
   887                     boolean success = false;
   888                     assertEquals(r, true, "weakCompareAndSet $type$");
   888                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
   889                         success = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2);
       
   890                     }
       
   891                     assertEquals(success, true, "weakCompareAndSet $type$");
   889                     $type$ x = ($type$) vh.get(array, i);
   892                     $type$ x = ($type$) vh.get(array, i);
   890                     assertEquals(x, VALUE_2, "weakCompareAndSet $type$ value");
   893                     assertEquals(x, VALUE_2, "weakCompareAndSet $type$ value");
   891                 }
   894                 }
   892 
   895 
   893                 {
   896                 {
   894                     boolean r = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1);
   897                     boolean success = false;
   895                     assertEquals(r, true, "weakCompareAndSetAcquire $type$");
   898                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
   899                         success = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1);
       
   900                     }
       
   901                     assertEquals(success, true, "weakCompareAndSetAcquire $type$");
   896                     $type$ x = ($type$) vh.get(array, i);
   902                     $type$ x = ($type$) vh.get(array, i);
   897                     assertEquals(x, VALUE_1, "weakCompareAndSetAcquire $type$");
   903                     assertEquals(x, VALUE_1, "weakCompareAndSetAcquire $type$");
   898                 }
   904                 }
   899 
   905 
   900                 {
   906                 {
   901                     boolean r = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2);
   907                     boolean success = false;
   902                     assertEquals(r, true, "weakCompareAndSetRelease $type$");
   908                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
   909                         success = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2);
       
   910                     }
       
   911                     assertEquals(success, true, "weakCompareAndSetRelease $type$");
   903                     $type$ x = ($type$) vh.get(array, i);
   912                     $type$ x = ($type$) vh.get(array, i);
   904                     assertEquals(x, VALUE_2, "weakCompareAndSetRelease $type$");
   913                     assertEquals(x, VALUE_2, "weakCompareAndSetRelease $type$");
   905                 }
   914                 }
   906 
   915 
   907                 {
   916                 {
  1035                     $type$ x = ($type$) vh.get(array, i);
  1044                     $type$ x = ($type$) vh.get(array, i);
  1036                     assertEquals(x, VALUE_1, "failing compareAndExchangeRelease $type$ value");
  1045                     assertEquals(x, VALUE_1, "failing compareAndExchangeRelease $type$ value");
  1037                 }
  1046                 }
  1038 
  1047 
  1039                 {
  1048                 {
  1040                     boolean r = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2);
  1049                     boolean success = false;
  1041                     assertEquals(r, true, "weakCompareAndSet $type$");
  1050                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
  1051                         success = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2);
       
  1052                     }
       
  1053                     assertEquals(success, true, "weakCompareAndSet $type$");
  1042                     $type$ x = ($type$) vh.get(array, i);
  1054                     $type$ x = ($type$) vh.get(array, i);
  1043                     assertEquals(x, VALUE_2, "weakCompareAndSet $type$ value");
  1055                     assertEquals(x, VALUE_2, "weakCompareAndSet $type$ value");
  1044                 }
  1056                 }
  1045 
  1057 
  1046                 {
  1058                 {
  1047                     boolean r = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1);
  1059                     boolean success = false;
  1048                     assertEquals(r, true, "weakCompareAndSetAcquire $type$");
  1060                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
  1061                         success = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1);
       
  1062                     }
       
  1063                     assertEquals(success, true, "weakCompareAndSetAcquire $type$");
  1049                     $type$ x = ($type$) vh.get(array, i);
  1064                     $type$ x = ($type$) vh.get(array, i);
  1050                     assertEquals(x, VALUE_1, "weakCompareAndSetAcquire $type$");
  1065                     assertEquals(x, VALUE_1, "weakCompareAndSetAcquire $type$");
  1051                 }
  1066                 }
  1052 
  1067 
  1053                 {
  1068                 {
  1054                     boolean r = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2);
  1069                     boolean success = false;
  1055                     assertEquals(r, true, "weakCompareAndSetRelease $type$");
  1070                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
  1071                         success = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2);
       
  1072                     }
       
  1073                     assertEquals(success, true, "weakCompareAndSetRelease $type$");
  1056                     $type$ x = ($type$) vh.get(array, i);
  1074                     $type$ x = ($type$) vh.get(array, i);
  1057                     assertEquals(x, VALUE_2, "weakCompareAndSetRelease $type$");
  1075                     assertEquals(x, VALUE_2, "weakCompareAndSetRelease $type$");
  1058                 }
  1076                 }
  1059 
  1077 
  1060                 {
  1078                 {