From ae4cd5ccc67d2ed2f7f2d2c490f447c2d9d48bf7 Mon Sep 17 00:00:00 2001 From: Bill Schmidt Date: Tue, 22 Jun 2021 13:57:28 -0500 Subject: [PATCH] Publish the PVIPR Errara; corrections to PVIPR 2.0 draft Signed-off-by: Bill Schmidt --- Intrinsics_Reference/ch_vec_reference.xml | 304 +++++++++++----------- pvipr-errata-1.0/bk_main.xml | 4 +- pvipr-errata-1.0/pom.xml | 8 +- 3 files changed, 157 insertions(+), 159 deletions(-) diff --git a/Intrinsics_Reference/ch_vec_reference.xml b/Intrinsics_Reference/ch_vec_reference.xml index 71cc3e4..c7866b9 100644 --- a/Intrinsics_Reference/ch_vec_reference.xml +++ b/Intrinsics_Reference/ch_vec_reference.xml @@ -1630,6 +1630,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpeqsp. vec_all_eq + + setbc + vec_all_eq + Supported type signatures for vec_all_eq @@ -1964,8 +1968,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm r,u,25,1 + setbc r,24 @@ -1987,8 +1990,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm r,u,25,1 + setbc r,24 @@ -2010,8 +2012,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm r,u,25,1 + setbc r,24 @@ -2152,6 +2153,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpgesp. vec_all_ge + + setbc + vec_all_ge +
Supported type signatures for vec_all_ge @@ -2378,8 +2383,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtsq. t,b,a - mfocrf u,2 - rlwinm r,u,27,1 + setbc r,26 @@ -2401,8 +2405,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtuq. t,b,a - mfocrf u,2 - rlwinm r,u,27,1 + setbc r,26 @@ -2543,6 +2546,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpgtsp. vec_all_gt + + setbc + vec_all_gt +
Supported type signatures for vec_all_gt @@ -2767,8 +2774,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtsq. t,a,b - mfocrf u,2 - rlwinm r,u,25,1 + setbc r,24 @@ -2790,8 +2796,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtuq. t,a,b - mfocrf u,2 - rlwinm r,u,25,1 + setbc r,24 @@ -3020,6 +3025,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpgesp. vec_all_le + + setbc. + vec_all_le +
Supported type signatures for vec_all_le @@ -3244,8 +3253,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtsq. t,a,b - mfocrf u,2 - rlwinm r,u,27,1 + setbc r,26 @@ -3267,8 +3275,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtuq. t,a,b - mfocrf u,2 - rlwinm r,u,27,1 + setbc r,26 @@ -3408,6 +3415,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpgtsp. vec_all_lt + + setbc + vec_all_lt +
Supported type signatures for vec_all_lt @@ -3632,8 +3643,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtsq. t,b,a - mfocrf u,2 - rlwinm r,u,25,1 + setbc r,24 @@ -3655,8 +3665,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtuq. t,b,a - mfocrf u,2 - rlwinm r,u,25,1 + setbc r,24 @@ -3873,6 +3882,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpeqsp. vec_all_ne + + setbc + vec_all_ne +
Supported type signatures for vec_all_ne @@ -4209,8 +4222,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm r,u,27,1 + setbc r,26 @@ -4232,8 +4244,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm r,u,27,1 + setbc r,26 @@ -4255,8 +4266,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm r,u,27,1 + setbc r,26 @@ -5570,6 +5580,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpeqsp. vec_any_eq + + setbcr + vec_any_eq +
Supported type signatures for vec_any_eq @@ -5932,10 +5946,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm v,u,27,1 - cntlzw w,v - srwi r,w,5 + setbcr r,26 @@ -5957,10 +5968,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm v,u,27,1 - cntlzw w,v - srwi r,w,5 + setbcr r,26 @@ -5982,10 +5990,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm v,u,27,1 - cntlzw w,v - srwi r,w,5 + setbcr r,26 @@ -6137,6 +6142,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpgesp. vec_any_ge + + setbcr + vec_any_ge +
Supported type signatures for vec_any_ge @@ -6473,10 +6482,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtsq. t,b,a - mfocrf u,2 - rlwinm v,u,25,1 - cntlzw w,v - srwi r,w,5 + setbcr r,24 @@ -6498,10 +6504,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtuq. t,b,a - mfocrf u,2 - rlwinm v,u,25,1 - cntlzw w,v - srwi r,w,5 + setbcr r,24 @@ -6653,6 +6656,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpgtsp. vec_any_gt + + setbcr + vec_any_gt +
Supported type signatures for vec_any_gt @@ -6893,10 +6900,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtsq. t,a,b - mfocrf u,2 - rlwinm v,u,27,1 - cntlzw w,v - srwi r,w,5 + setbcr r,26 @@ -6918,10 +6922,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtuq. t,a,b - mfocrf u,2 - rlwinm v,u,27,1 - cntlzw w,v - srwi r,w,5 + setbcr r,26 @@ -7073,6 +7074,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpgesp. vec_any_le + + setbcr + vec_any_le +
Supported type signatures for vec_any_le @@ -7361,10 +7366,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtsq. t,a,b - mfocrf u,2 - rlwinm v,u,25,1 - cntlzw w,v - srwi r,w,5 + setbcr 3,24 @@ -7386,10 +7388,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtuq. t,a,b - mfocrf u,2 - rlwinm v,u,25,1 - cntlzw w,v - srwi r,w,5 + setbcr 3,24 @@ -7540,6 +7539,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpgtsp. vec_any_lt + + setbcr + vec_any_lt +
Supported type signatures for vec_any_lt @@ -7782,10 +7785,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtsq. t,b,a - mfocrf u,2 - rlwinm v,u,27,1 - cntlzw w,v - srwi r,w,5 + setbcr r,26 @@ -7807,10 +7807,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpgtuq. t,b,a - mfocrf u,2 - rlwinm v,u,27,1 - cntlzw w,v - srwi r,w,5 + setbcr r,26 @@ -8049,6 +8046,10 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvcmpeqsp. vec_any_ne + + setbcr + vec_any_ne +
Supported type signatures for vec_any_ne @@ -8411,10 +8412,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm v,u,25,1 - cntlzw w,v - srwi r,w,5 + setbcr r,24 @@ -8436,10 +8434,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm v,u,25,1 - cntlzw w,v - srwi r,w,5 + setbcr r,24 @@ -8461,10 +8456,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vcmpequq. t,a,b - mfocrf u,2 - rlwinm v,u,25,1 - cntlzw w,v - srwi r,w,5 + setbcr r,24 @@ -22497,7 +22489,9 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> result vector. Endian considerations: - None. + The mask argument of the underlying instructions is specified in + big-endian order. For correct bi-endian semantics, the mask + must be reversed by the compiler for little-endian targets. Notes: See the descriptions of xxgenpcvbm et al. in the @@ -22525,15 +22519,20 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xxgenpcvdm vec_genpcvm + + xxpermdi + vec_genpcvm +
Supported type signatures for vec_genpcvm - - - - - - + + + + + + + @@ -22553,7 +22552,12 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> - Example Implementation + Example LE Implementation + + + + + Example BE Implementation @@ -22576,7 +22580,14 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> + xxswapd t,a + xxgenpcvbm r,t,b + + + + xxgenpcvbm r,a,b + @@ -22595,7 +22606,14 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> + xxswapd t,a + xxgenpcvhm r,t,b + + + + xxgenpcvhm r,a,b + @@ -22614,7 +22632,14 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> + xxswapd t,a + xxgenpcvwm r,t,b + + + + xxgenpcvwm r,a,b + @@ -22633,7 +22658,14 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> + xxswapd t,a + xxgenpcvdm r,t,b + + + + xxgenpcvdm r,a,b + @@ -44349,11 +44381,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vec_stril_p - mfocrf - vec_stril_p - - - rlwinm + setbc vec_stril_p @@ -44405,15 +44433,13 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vstribr. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 vstribl. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 @@ -44430,15 +44456,13 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vstribr. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 vstribl. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 @@ -44455,15 +44479,13 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vstrihr. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 vstrihl. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 @@ -44480,15 +44502,13 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vstrihr. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 vstrihl. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 @@ -44726,11 +44746,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vec_strir_p - mfocrf - vec_strir_p - - - rlwinm + setbc vec_strir_p @@ -44782,15 +44798,13 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vstribl. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 vstribr. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 @@ -44807,15 +44821,13 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vstribl. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 vstribr. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 @@ -44832,15 +44844,13 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vstrihl. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 vstrihr. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 @@ -44857,15 +44867,13 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vstrihl. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 vstrihr. t,a - mfocrf u,2 - rlwinm r,u,26,1 + setbc r,26 @@ -46749,11 +46757,11 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> -
- vec_ternary_logic +
+ vec_ternarylogic Vector Ternary Logic - r = vec_ternary_logic (a, b, c, d) + r = vec_ternarylogic (a, b, c, d) Purpose: @@ -46793,11 +46801,11 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xxeval - vec_ternary_logic + vec_ternarylogic
- Supported type signatures for vec_ternary_logic + Supported type signatures for vec_ternarylogic @@ -47155,11 +47163,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vec_test_lsbb_all_ones - mfocrf - vec_test_lsbb_all_ones - - - rlwinm + setbc vec_test_lsbb_all_ones @@ -47205,8 +47209,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvtlsbb t,a - mfocrf u,mask - rlwinm r,u,bit,1 + setbc r,t.0 @@ -47256,11 +47259,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> vec_test_lsbb_all_zeros - mfocrf - vec_test_lsbb_all_zeros - - - rlwinm + setbc vec_test_lsbb_all_zeros @@ -47306,8 +47305,7 @@ xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="VIPR.vec-ref"> xvtlsbb t,a - mfocrf u,mask - rlwinm r,u,bit,1 + setbc r,t.2 diff --git a/pvipr-errata-1.0/bk_main.xml b/pvipr-errata-1.0/bk_main.xml index 833e3de..3bd7486 100644 --- a/pvipr-errata-1.0/bk_main.xml +++ b/pvipr-errata-1.0/bk_main.xml @@ -82,11 +82,11 @@ - 2021-04-07 + 2021-06-09 - Initial draft + Revision 1.0 diff --git a/pvipr-errata-1.0/pom.xml b/pvipr-errata-1.0/pom.xml index aef864c..e3e7322 100644 --- a/pvipr-errata-1.0/pom.xml +++ b/pvipr-errata-1.0/pom.xml @@ -112,9 +112,9 @@ other Foundation members or the public The appropriate starting security for a new document is "workgroupConfidential". --> - workgroupConfidential + - + public - draft + - + published