}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.s, unsigned char, s, l, src_ui);
- bt_bitfield_read(target.c, unsigned short, s, l, &readval_ui);
+ bt_bitfield_write(target.c, unsigned char, s, l, src_ui);
+ bt_bitfield_read(target.s, unsigned short, s, l, &readval_ui);
if (check_result(src_ui, readval_ui, target.c, unsigned short,
s, l, UNSIGNED_INT_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.i, unsigned char, s, l, src_ui);
- bt_bitfield_read(target.c, unsigned int, s, l, &readval_ui);
+ bt_bitfield_write(target.c, unsigned char, s, l, src_ui);
+ bt_bitfield_read(target.i, unsigned int, s, l, &readval_ui);
if (check_result(src_ui, readval_ui, target.c, unsigned int,
s, l, UNSIGNED_INT_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.l, unsigned char, s, l, src_ui);
- bt_bitfield_read(target.c, unsigned long, s, l, &readval_ui);
+ bt_bitfield_write(target.c, unsigned char, s, l, src_ui);
+ bt_bitfield_read(target.l, unsigned long, s, l, &readval_ui);
if (check_result(src_ui, readval_ui, target.c, unsigned long,
s, l, UNSIGNED_INT_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.ll, unsigned char, s, l, src_ui);
- bt_bitfield_read(target.c, unsigned long long, s, l, &readval_ui);
+ bt_bitfield_write(target.c, unsigned char, s, l, src_ui);
+ bt_bitfield_read(target.ll, unsigned long long, s, l, &readval_ui);
if (check_result(src_ui, readval_ui, target.c, unsigned long long,
s, l, UNSIGNED_INT_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.s, unsigned char, s, l, src_ull);
- bt_bitfield_read(target.c, unsigned short, s, l, &readval_ull);
+ bt_bitfield_write(target.c, unsigned char, s, l, src_ull);
+ bt_bitfield_read(target.s, unsigned short, s, l, &readval_ull);
if (check_result(src_ull, readval_ull, target.c, unsigned short,
s, l, UNSIGNED_LONG_LONG_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.i, unsigned char, s, l, src_ull);
- bt_bitfield_read(target.c, unsigned int, s, l, &readval_ull);
+ bt_bitfield_write(target.c, unsigned char, s, l, src_ull);
+ bt_bitfield_read(target.i, unsigned int, s, l, &readval_ull);
if (check_result(src_ull, readval_ull, target.c, unsigned int,
s, l, UNSIGNED_LONG_LONG_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.l, unsigned char, s, l, src_ull);
- bt_bitfield_read(target.c, unsigned long, s, l, &readval_ull);
+ bt_bitfield_write(target.c, unsigned char, s, l, src_ull);
+ bt_bitfield_read(target.l, unsigned long, s, l, &readval_ull);
if (check_result(src_ull, readval_ull, target.c, unsigned long,
s, l, UNSIGNED_LONG_LONG_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.ll, unsigned char, s, l, src_ull);
- bt_bitfield_read(target.c, unsigned long long, s, l, &readval_ull);
+ bt_bitfield_write(target.c, unsigned char, s, l, src_ull);
+ bt_bitfield_read(target.ll, unsigned long long, s, l, &readval_ull);
if (check_result(src_ull, readval_ull, target.c, unsigned long long,
s, l, UNSIGNED_LONG_LONG_READ_TEST_DESC_FMT_STR)) {
return;
long long readval;
unsigned int s, l;
- if (src_i & 0x80000000U)
+ if (!src_i)
+ nrbits_i = 0; /* The number of bits needed to represent 0 is 0. */
+ else if (src_i & 0x80000000U)
nrbits_i = fls_u32(~src_i) + 1; /* Find least significant bit conveying sign */
else
nrbits_i = fls_u32(src_i) + 1; /* Keep sign at 0 */
}
pass(SIGNED_INT_WRITE_TEST_DESC_FMT_STR, src_i);
- if (src_ll & 0x8000000000000000ULL)
+ if (!src_ll)
+ nrbits_ll = 0; /* The number of bits needed to represent 0 is 0. */
+ else if (src_ll & 0x8000000000000000ULL)
nrbits_ll = fls_u64(~src_ll) + 1; /* Find least significant bit conveying sign */
else
nrbits_ll = fls_u64(src_ll) + 1; /* Keep sign at 0 */
long long readval_ll;
unsigned int s, l;
- if (src_i & 0x80000000U)
+ if (!src_i)
+ nrbits_i = 0; /* The number of bits needed to represent 0 is 0. */
+ else if (src_i & 0x80000000U)
nrbits_i = fls_u32(~src_i) + 1; /* Find least significant bit conveying sign */
else
nrbits_i = fls_u32(src_i) + 1; /* Keep sign at 0 */
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.s, signed char, s, l, src_i);
- bt_bitfield_read(target.c, short, s, l, &readval_i);
+ bt_bitfield_write(target.c, signed char, s, l, src_i);
+ bt_bitfield_read(target.s, short, s, l, &readval_i);
if (check_result(src_i, readval_i, target.c, short,
s, l, SIGNED_INT_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.i, signed char, s, l, src_i);
- bt_bitfield_read(target.c, int, s, l, &readval_i);
+ bt_bitfield_write(target.c, signed char, s, l, src_i);
+ bt_bitfield_read(target.i, int, s, l, &readval_i);
if (check_result(src_i, readval_i, target.c, int,
s, l, SIGNED_INT_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.l, signed char, s, l, src_i);
- bt_bitfield_read(target.c, long, s, l, &readval_i);
+ bt_bitfield_write(target.c, signed char, s, l, src_i);
+ bt_bitfield_read(target.l, long, s, l, &readval_i);
if (check_result(src_i, readval_i, target.c, long,
s, l, SIGNED_INT_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.ll, signed char, s, l, src_i);
- bt_bitfield_read(target.c, long long, s, l, &readval_i);
+ bt_bitfield_write(target.c, signed char, s, l, src_i);
+ bt_bitfield_read(target.ll, long long, s, l, &readval_i);
if (check_result(src_i, readval_i, target.c, long long,
s, l, SIGNED_INT_READ_TEST_DESC_FMT_STR)) {
return;
}
pass(SIGNED_INT_READ_TEST_DESC_FMT_STR, src_i);
+ if (!src_ll)
+ nrbits_ll = 0; /* The number of bits needed to represent 0 is 0. */
if (src_ll & 0x8000000000000000ULL)
nrbits_ll = fls_u64(~src_ll) + 1; /* Find least significant bit conveying sign */
else
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.s, signed char, s, l, src_ll);
- bt_bitfield_read(target.c, short, s, l, &readval_ll);
+ bt_bitfield_write(target.c, signed char, s, l, src_ll);
+ bt_bitfield_read(target.s, short, s, l, &readval_ll);
if (check_result(src_ll, readval_ll, target.c, short,
s, l, SIGNED_LONG_LONG_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.i, signed char, s, l, src_ll);
- bt_bitfield_read(target.c, int, s, l, &readval_ll);
+ bt_bitfield_write(target.c, signed char, s, l, src_ll);
+ bt_bitfield_read(target.i, int, s, l, &readval_ll);
if (check_result(src_ll, readval_ll, target.c, int,
s, l, SIGNED_LONG_LONG_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.l, signed char, s, l, src_ll);
- bt_bitfield_read(target.c, long, s, l, &readval_ll);
+ bt_bitfield_write(target.c, signed char, s, l, src_ll);
+ bt_bitfield_read(target.l, long, s, l, &readval_ll);
if (check_result(src_ll, readval_ll, target.c, long,
s, l, SIGNED_LONG_LONG_READ_TEST_DESC_FMT_STR)) {
return;
}
init_byte_array(target.c, TEST_LEN, 0xFF);
- bt_bitfield_write(target.ll, signed char, s, l, src_ll);
- bt_bitfield_read(target.c, long long, s, l, &readval_ll);
+ bt_bitfield_write(target.c, signed char, s, l, src_ll);
+ bt_bitfield_read(target.ll, long long, s, l, &readval_ll);
if (check_result(src_ll, readval_ll, target.c, long long,
s, l, SIGNED_LONG_LONG_READ_TEST_DESC_FMT_STR)) {
return;