* ========== Copyright Header Begin ==========================================
* OpenSPARC T2 Processor File: rstf_convert.h
* Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES.
* The above named program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
* License version 2 as published by the Free Software Foundation.
* The above named program is distributed in the hope that it will be
* useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
* You should have received a copy of the GNU General Public
* License along with this work; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
* ========== Copyright Header End ============================================
static void l2b(rstf_uint8T
*t
)
uint8_t bytes
[sizeof(rstf_protoT
)/sizeof(uint8_t)], b
;
t
->arr8
[1] = (b
<< 7) | ((b
& 2) << 5) | ((b
& 4) << 3) |
((b
& 8) << 1) | ((b
& 0x10) >> 1) | ((b
& 0x20) >> 3) |
((b
& 0x40) >> 5) | (b
>> 7);
t
->arr8
[2] = (bytes
[3] << 2) | (bytes
[2] & 3);
t
->arr8
[3] = (bytes
[3] & 0xc0);
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint16_t *)(&t
->arr8
[4]) = byteswap16(*(uint16_t *)(&t
->arr8
[4]));
*(uint16_t *)(&t
->arr8
[6]) = byteswap16(*(uint16_t *)(&t
->arr8
[6]));
*(uint16_t *)(&t
->arr8
[i
]) = byteswap16(*(uint16_t *)(&t
->arr8
[i
]));
t
->arr8
[1] = (b
<< 7) | ((b
& 2) << 5);
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
t
->arr8
[4] = (t
->arr8
[4] >> 2) | (t
->arr8
[4] << 6);
t
->arr8
[5] = (t
->arr8
[5] << 4);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
t
->arr8
[1] = (t
->arr8
[1] << 7) | (t
->arr8
[1] >> 4);
t
->arr8
[2] = (bytes
[3] << 2) | (bytes
[2] >> 6);
t
->arr8
[3] = (bytes
[2] << 2) | (bytes
[3] >> 6);
*(uint16_t *)(&t
->arr8
[4]) = byteswap16(*(uint16_t *)(&t
->arr8
[4]));
t
->arr8
[6] = (bytes
[7] << 4) | (bytes
[6] >> 4);
t
->arr8
[7] = (bytes
[6] << 4) | (bytes
[7] >> 4);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[2] = (bytes
[3] << 2) | (bytes
[2] & 3);
t
->arr8
[3] = (bytes
[3] & 0xc0);
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
t
->arr8
[1] = (t
->arr8
[1] << 7) | (t
->arr8
[1] >> 1);
t
->arr8
[6] = bytes
[7] << 5;
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
*(uint16_t *)(&t
->arr8
[6]) = byteswap16(*(uint16_t *)(&t
->arr8
[6]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
*(uint32_t *)(&t
->arr8
[8]) = byteswap32(*(uint32_t *)(&t
->arr8
[8]));
*(uint32_t *)(&t
->arr8
[12]) = byteswap32(*(uint32_t *)(&t
->arr8
[12]));
*(uint32_t *)(&t
->arr8
[16]) = byteswap32(*(uint32_t *)(&t
->arr8
[16]));
*(uint32_t *)(&t
->arr8
[20]) = byteswap32(*(uint32_t *)(&t
->arr8
[20]));
t
->arr8
[1] = t
->arr8
[1] >> 7;
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint16_t *)(&t
->arr8
[6]) = byteswap16(*(uint16_t *)(&t
->arr8
[6]));
t
->arr8
[9] = t
->arr8
[9] << 6;
*(uint16_t *)(&t
->arr8
[16]) = byteswap16(*(uint16_t *)(&t
->arr8
[16]));
*(uint16_t *)(&t
->arr8
[18]) = byteswap16(*(uint16_t *)(&t
->arr8
[18]));
*(uint16_t *)(&t
->arr8
[20]) = byteswap16(*(uint16_t *)(&t
->arr8
[20]));
*(uint16_t *)(&t
->arr8
[22]) = byteswap16(*(uint16_t *)(&t
->arr8
[22]));
t
->arr8
[1] = (t
->arr8
[1] << 7) | (t
->arr8
[1] >> 1);
t
->arr8
[2] = (bytes
[3] << 5);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (t
->arr8
[1] << 7) | (t
->arr8
[1] >> 1);
t
->arr8
[2] = (t
->arr8
[2] << 5);
*(uint16_t *)(&t
->arr8
[4]) = byteswap16(*(uint16_t *)(&t
->arr8
[4]));
*(uint16_t *)(&t
->arr8
[6]) = byteswap16(*(uint16_t *)(&t
->arr8
[6]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (t
->arr8
[1] << 7) | (t
->arr8
[1] >> 1);
t
->arr8
[4] = (t
->arr8
[4] << 6);
t
->arr8
[5] = t
->arr8
[6] = t
->arr8
[7] = 0;
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (t
->arr8
[1] >> 7);
*(uint16_t *)(&t
->arr8
[4]) = byteswap16(*(uint16_t *)(&t
->arr8
[4]));
t
->arr8
[1] = (t
->arr8
[1] << 7);
*(uint16_t *)(&t
->arr8
[4]) = byteswap16(*(uint16_t *)(&t
->arr8
[4]));
*(uint16_t *)(&t
->arr8
[6]) = byteswap16(*(uint16_t *)(&t
->arr8
[6]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (b
<< 7) | ((b
&2) << 5) | ((b
&4) << 3) | (b
>> 6);
if (t
->arr8
[1] & 0x80) { /* ismemval128 */
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
t
->arr8
[3] = (t
->arr8
[3] >> 4);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (b
<< 7) | ((b
&2) << 5) | ((b
&4) << 3) | ((b
&8) << 1) |
t
->arr8
[2] = (bytes
[3] << 2) | (bytes
[2] >> 6);
t
->arr8
[3] = (bytes
[2] << 2) | (bytes
[3] >> 6);
t
->arr8
[4] = (bytes
[7] << 7) | ((bytes
[7]&2) << 5) | (bytes
[5] & 0x3f);
t
->arr8
[6] = (bytes
[7] & 0xfc);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint16_t *)(&t
->arr8
[16]) = byteswap16(*(uint16_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (t
->arr8
[1] >> 7);
t
->arr8
[2] = (bytes
[2] >> 6);
t
->arr8
[3] = (bytes
[2] << 2) | (bytes
[3] >> 6);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
case RFS_SECTION_HEADER_T
:
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
t
->arr8
[1] = (bytes
[1] << 6) | (bytes
[2] >> 2);
t
->arr8
[2] = (bytes
[2] << 6) | (bytes
[1] >> 2);
switch (t
->arr8
[2] & 0x3f) {
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
t
->arr8
[5] = (t
->arr8
[5] << 7) | ((t
->arr8
[5] & 0x3e) << 1);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (bytes
[2] << 6) | (bytes
[3] >> 2);
t
->arr8
[2] = (bytes
[3] << 6) | ((bytes
[2] & 4) << 3);
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (b
<< 7) | ((b
&2) << 5) | ((b
&4) << 3) | ((b
&8) << 1) |
t
->arr8
[2] = (bytes
[2] << 6) | (bytes
[3] >> 2);
t
->arr8
[3] = (bytes
[3] << 6);
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
static void b2l(rstf_uint8T
*t
)
uint8_t bytes
[sizeof(rstf_protoT
)/sizeof(uint8_t)], b
;
t
->arr8
[1] = (b
<< 7) | ((b
& 2) << 5) | ((b
& 4) << 3) |
((b
& 8) << 1) | ((b
& 0x10) >> 1) | ((b
& 0x20) >> 3) |
((b
& 0x40) >> 5) | (b
>> 7);
bytes
[2] = (t
->arr8
[2] & 3);
bytes
[3] = (t
->arr8
[3] & 0xc0) | (t
->arr8
[2] >> 2);
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint16_t *)(&t
->arr8
[4]) = byteswap16(*(uint16_t *)(&t
->arr8
[4]));
*(uint16_t *)(&t
->arr8
[6]) = byteswap16(*(uint16_t *)(&t
->arr8
[6]));
*(uint16_t *)(&t
->arr8
[i
]) = byteswap16(*(uint16_t *)(&t
->arr8
[i
]));
t
->arr8
[1] = (b
>> 7) | ((b
& 0x40) >> 5);
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
t
->arr8
[4] = (t
->arr8
[4] >> 6) | (t
->arr8
[4] << 2);
t
->arr8
[5] = (t
->arr8
[5] >> 4);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
t
->arr8
[1] = (t
->arr8
[1] >> 7) | (t
->arr8
[1] << 4);
bytes
[2] = (t
->arr8
[2] << 6) | (t
->arr8
[3] >> 2);
bytes
[3] = (t
->arr8
[3] << 6) | (t
->arr8
[2] >> 2);
*(uint16_t *)(&t
->arr8
[4]) = byteswap16(*(uint16_t *)(&t
->arr8
[4]));
bytes
[6] = (t
->arr8
[6] << 4) | (t
->arr8
[7] >> 4);
bytes
[7] = (t
->arr8
[7] << 4) | (t
->arr8
[6] >> 4);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
bytes
[2] = (t
->arr8
[2] & 3);
bytes
[3] = (t
->arr8
[3] & 0xc0) | (t
->arr8
[2] >> 2);
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
t
->arr8
[1] = (t
->arr8
[1] >> 7) | (t
->arr8
[1] << 1);
bytes
[7] = t
->arr8
[6] >> 5;
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
*(uint16_t *)(&t
->arr8
[6]) = byteswap16(*(uint16_t *)(&t
->arr8
[6]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
*(uint32_t *)(&t
->arr8
[8]) = byteswap32(*(uint32_t *)(&t
->arr8
[8]));
*(uint32_t *)(&t
->arr8
[12]) = byteswap32(*(uint32_t *)(&t
->arr8
[12]));
*(uint32_t *)(&t
->arr8
[16]) = byteswap32(*(uint32_t *)(&t
->arr8
[16]));
*(uint32_t *)(&t
->arr8
[20]) = byteswap32(*(uint32_t *)(&t
->arr8
[20]));
t
->arr8
[1] = t
->arr8
[1] << 7;
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint16_t *)(&t
->arr8
[6]) = byteswap16(*(uint16_t *)(&t
->arr8
[6]));
t
->arr8
[9] = t
->arr8
[9] >> 6;
*(uint16_t *)(&t
->arr8
[16]) = byteswap16(*(uint16_t *)(&t
->arr8
[16]));
*(uint16_t *)(&t
->arr8
[18]) = byteswap16(*(uint16_t *)(&t
->arr8
[18]));
*(uint16_t *)(&t
->arr8
[20]) = byteswap16(*(uint16_t *)(&t
->arr8
[20]));
*(uint16_t *)(&t
->arr8
[22]) = byteswap16(*(uint16_t *)(&t
->arr8
[22]));
t
->arr8
[1] = (t
->arr8
[1] >> 7) | (t
->arr8
[1] << 1);
bytes
[3] = t
->arr8
[2] >> 5;
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (t
->arr8
[1] >> 7) | (t
->arr8
[1] << 1);
t
->arr8
[2] = (t
->arr8
[2] >> 5);
*(uint16_t *)(&t
->arr8
[4]) = byteswap16(*(uint16_t *)(&t
->arr8
[4]));
*(uint16_t *)(&t
->arr8
[6]) = byteswap16(*(uint16_t *)(&t
->arr8
[6]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (t
->arr8
[1] >> 7) | (t
->arr8
[1] << 1);
t
->arr8
[4] = (t
->arr8
[4] >> 6);
t
->arr8
[5] = t
->arr8
[6] = t
->arr8
[7] = 0;
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (t
->arr8
[1] << 7);
*(uint16_t *)(&t
->arr8
[4]) = byteswap16(*(uint16_t *)(&t
->arr8
[4]));
t
->arr8
[1] = (t
->arr8
[1] >> 7);
*(uint16_t *)(&t
->arr8
[4]) = byteswap16(*(uint16_t *)(&t
->arr8
[4]));
*(uint16_t *)(&t
->arr8
[6]) = byteswap16(*(uint16_t *)(&t
->arr8
[6]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (b
>> 7) | ((b
&0x40) >> 5) | ((b
&0x20) >> 3) | (b
<< 6);
if (b
& 0x80) { /* ismemval128 */
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
t
->arr8
[3] = (t
->arr8
[3] << 4);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (b
>> 7) | ((b
&0x40) >> 5) | ((b
&0x20) >> 3) |
((b
&0x10) >> 1) | (b
<< 4);
bytes
[2] = (t
->arr8
[3] >> 2) | (t
->arr8
[2] << 6);
bytes
[3] = (t
->arr8
[2] >> 2) | (t
->arr8
[3] << 6);
bytes
[7] = (b
>> 7) | ((b
&0x40) >> 5) | (t
->arr8
[6] & 0xfc);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
*(uint16_t *)(&t
->arr8
[2]) = byteswap16(*(uint16_t *)(&t
->arr8
[2]));
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint16_t *)(&t
->arr8
[16]) = byteswap16(*(uint16_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (t
->arr8
[1] << 7);
bytes
[2] = (t
->arr8
[2] << 6) | (t
->arr8
[3] >> 2);
bytes
[3] = (t
->arr8
[3] << 6);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
case RFS_SECTION_HEADER_T
:
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
bytes
[1] = (t
->arr8
[2] << 2) | (t
->arr8
[1] >> 6);
bytes
[2] = (t
->arr8
[1] << 2) | (t
->arr8
[2] >> 6);
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
t
->arr8
[5] = (b
>> 7) | ((b
&0x7c) >> 1);
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
bytes
[3] = (t
->arr8
[2] >> 6) | (t
->arr8
[1] << 2);
bytes
[2] = (t
->arr8
[1] >> 6) | ((t
->arr8
[2] & 0x20) >> 3);
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));
t
->arr8
[1] = (b
>> 7) | ((b
&0x40) >> 5) | ((b
&0x20) >> 3) |
((b
&0x10) >> 1) | ((b
&8) << 1);
bytes
[2] = (t
->arr8
[2] >> 6);
bytes
[3] = (t
->arr8
[2] << 2) | (t
->arr8
[3] >> 6);
*(uint32_t *)(&t
->arr8
[4]) = byteswap32(*(uint32_t *)(&t
->arr8
[4]));
*(uint64_t *)(&t
->arr8
[8]) = byteswap64(*(uint64_t *)(&t
->arr8
[8]));
*(uint64_t *)(&t
->arr8
[16]) = byteswap64(*(uint64_t *)(&t
->arr8
[16]));