diff --git a/specification/bk_main.xml b/specification/bk_main.xml index 23586c9..e1f6468 100644 --- a/specification/bk_main.xml +++ b/specification/bk_main.xml @@ -94,7 +94,7 @@ - 2018-12-19 + 2018-12-20 diff --git a/specification/ch_3.xml b/specification/ch_3.xml index 28de7c9..dd99fac 100644 --- a/specification/ch_3.xml +++ b/specification/ch_3.xml @@ -2606,9 +2606,9 @@ my_func: Denotes the higher adjusted value: bits 32–47 of the - indicated value, compensating for #hi( ) being treated as a + indicated value, compensating for #lo( ) being treated as a signed number. That is: - #highera(x) = ((x + 0x80000000) >> 32) & + #highera(x) = ((x + 0x8000) >> 32) & 0xffff @@ -2629,9 +2629,9 @@ my_func: Denotes the highest adjusted value: bits 48–63 of the - indicated value, compensating for #higher( ) being treated as a + indicated value, compensating for #lo( ) being treated as a signed number. That is: - #highesta(x) = (x + 0x800000000000) >> 48 + #highesta(x) = (x + 0x8000) >> 48 @@ -2662,6 +2662,34 @@ my_func: + + + #hi30(value) + + + + Denotes bits 34-63 of the indicated 64-bit value. That is: + + + #hi30(x) = x >> 34 + + + + + + #ha30(value) + + + + Denotes bits 34-63 of the indicated 64-bit value, + compensating for #lo34( ) being treated as a signed + number. That is: + + + #ha30(x) = (x + 0x200000000) >> 34 + + + #higher34(value) @@ -2669,7 +2697,7 @@ my_func: Denotes bits 34–49 of the indicated value. That is: - (#higher34(x) = x >> 34) & 0xffff + #higher34(x) = (x >> 34) & 0xffff @@ -4677,7 +4705,7 @@ my_func: - R_PPC64_D34_HIGHER34 + R_PPC64_D34_HI30 130 @@ -4686,12 +4714,12 @@ my_func: prefix34 - #higher34(S + A) + #hi30(S + A) - R_PPC64_D34_HIGHERA34 + R_PPC64_D34_HA30 131 @@ -4700,7 +4728,7 @@ my_func: prefix34 - #highera34(S + A) + #ha30(S + A)