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