jdk/test/java/lang/invoke/VarHandles/VarHandleTestByteArrayAsDouble.java
changeset 38358 cb99c6d2af1b
parent 37719 add11bc0e6e2
parent 38357 f18eb84a3b96
child 38368 c8eb5d6812c5
equal deleted inserted replaced
38350:da6c6f544dfb 38358:cb99c6d2af1b
   698                     double x = (double) vh.get(array, i);
   698                     double x = (double) vh.get(array, i);
   699                     assertEquals(x, VALUE_1, "failing compareAndExchangeRelease double value");
   699                     assertEquals(x, VALUE_1, "failing compareAndExchangeRelease double value");
   700                 }
   700                 }
   701 
   701 
   702                 {
   702                 {
   703                     boolean r = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2);
   703                     boolean success = false;
   704                     assertEquals(r, true, "weakCompareAndSet double");
   704                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
   705                         success = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2);
       
   706                     }
       
   707                     assertEquals(success, true, "weakCompareAndSet double");
   705                     double x = (double) vh.get(array, i);
   708                     double x = (double) vh.get(array, i);
   706                     assertEquals(x, VALUE_2, "weakCompareAndSet double value");
   709                     assertEquals(x, VALUE_2, "weakCompareAndSet double value");
   707                 }
   710                 }
   708 
   711 
   709                 {
   712                 {
   710                     boolean r = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1);
   713                     boolean success = false;
   711                     assertEquals(r, true, "weakCompareAndSetAcquire double");
   714                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
   715                         success = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1);
       
   716                     }
       
   717                     assertEquals(success, true, "weakCompareAndSetAcquire double");
   712                     double x = (double) vh.get(array, i);
   718                     double x = (double) vh.get(array, i);
   713                     assertEquals(x, VALUE_1, "weakCompareAndSetAcquire double");
   719                     assertEquals(x, VALUE_1, "weakCompareAndSetAcquire double");
   714                 }
   720                 }
   715 
   721 
   716                 {
   722                 {
   717                     boolean r = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2);
   723                     boolean success = false;
   718                     assertEquals(r, true, "weakCompareAndSetRelease double");
   724                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
   725                         success = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2);
       
   726                     }
       
   727                     assertEquals(success, true, "weakCompareAndSetRelease double");
   719                     double x = (double) vh.get(array, i);
   728                     double x = (double) vh.get(array, i);
   720                     assertEquals(x, VALUE_2, "weakCompareAndSetRelease double");
   729                     assertEquals(x, VALUE_2, "weakCompareAndSetRelease double");
   721                 }
   730                 }
   722 
   731 
   723                 {
   732                 {
   838                     double x = (double) vh.get(array, i);
   847                     double x = (double) vh.get(array, i);
   839                     assertEquals(x, VALUE_1, "failing compareAndExchangeRelease double value");
   848                     assertEquals(x, VALUE_1, "failing compareAndExchangeRelease double value");
   840                 }
   849                 }
   841 
   850 
   842                 {
   851                 {
   843                     boolean r = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2);
   852                     boolean success = false;
   844                     assertEquals(r, true, "weakCompareAndSet double");
   853                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
   854                         success = vh.weakCompareAndSet(array, i, VALUE_1, VALUE_2);
       
   855                     }
       
   856                     assertEquals(success, true, "weakCompareAndSet double");
   845                     double x = (double) vh.get(array, i);
   857                     double x = (double) vh.get(array, i);
   846                     assertEquals(x, VALUE_2, "weakCompareAndSet double value");
   858                     assertEquals(x, VALUE_2, "weakCompareAndSet double value");
   847                 }
   859                 }
   848 
   860 
   849                 {
   861                 {
   850                     boolean r = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1);
   862                     boolean success = false;
   851                     assertEquals(r, true, "weakCompareAndSetAcquire double");
   863                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
   864                         success = vh.weakCompareAndSetAcquire(array, i, VALUE_2, VALUE_1);
       
   865                     }
       
   866                     assertEquals(success, true, "weakCompareAndSetAcquire double");
   852                     double x = (double) vh.get(array, i);
   867                     double x = (double) vh.get(array, i);
   853                     assertEquals(x, VALUE_1, "weakCompareAndSetAcquire double");
   868                     assertEquals(x, VALUE_1, "weakCompareAndSetAcquire double");
   854                 }
   869                 }
   855 
   870 
   856                 {
   871                 {
   857                     boolean r = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2);
   872                     boolean success = false;
   858                     assertEquals(r, true, "weakCompareAndSetRelease double");
   873                     for (int c = 0; c < WEAK_ATTEMPTS && !success; c++) {
       
   874                         success = vh.weakCompareAndSetRelease(array, i, VALUE_1, VALUE_2);
       
   875                     }
       
   876                     assertEquals(success, true, "weakCompareAndSetRelease double");
   859                     double x = (double) vh.get(array, i);
   877                     double x = (double) vh.get(array, i);
   860                     assertEquals(x, VALUE_2, "weakCompareAndSetRelease double");
   878                     assertEquals(x, VALUE_2, "weakCompareAndSetRelease double");
   861                 }
   879                 }
   862 
   880 
   863                 {
   881                 {