# define SIDE_TYPE_FLOAT_WORD_ORDER_HOST SIDE_TYPE_BYTE_ORDER_BE
#endif
-typedef enum side_visitor_status (*side_visitor)(
+typedef enum side_visitor_status (*side_visitor_func)(
const struct side_tracer_visitor_ctx *tracer_ctx,
void *app_ctx);
-typedef enum side_visitor_status (*side_dynamic_struct_visitor)(
+typedef enum side_visitor_status (*side_dynamic_struct_visitor_func)(
const struct side_tracer_dynamic_struct_visitor_ctx *tracer_ctx,
void *app_ctx);
struct side_type_float {
const struct side_attr *attr;
uint32_t nr_attr;
- uint32_t byte_order; /* enum side_type_label_byte_order */
uint16_t float_size_bits; /* bits */
+ uint8_t byte_order; /* enum side_type_label_byte_order */
} SIDE_PACKED;
struct side_enum_mapping {
struct side_type_vla_visitor {
const struct side_type *elem_type;
- side_visitor visitor;
+ side_visitor_func visitor;
const struct side_attr *attr;
uint32_t nr_attr;
} SIDE_PACKED;
struct side_dynamic_struct_visitor {
void *app_ctx;
- side_dynamic_struct_visitor visitor;
+ side_dynamic_struct_visitor_func visitor;
const struct side_attr *attr;
uint32_t nr_attr;
} SIDE_PACKED;
struct side_dynamic_vla_visitor {
void *app_ctx;
- side_visitor visitor;
+ side_visitor_func visitor;
const struct side_attr *attr;
uint32_t nr_attr;
} SIDE_PACKED;
.side_float = { \
.attr = _attr, \
.nr_attr = SIDE_ARRAY_SIZE(SIDE_PARAM(_attr)), \
- .byte_order = _byte_order, \
.float_size_bits = _float_size_bits, \
+ .byte_order = _byte_order, \
}, \
}, \
}
#define _side_type_struct_define(_fields, _attr) \
{ \
- .nr_fields = SIDE_ARRAY_SIZE(SIDE_PARAM(_fields)), \
- .nr_attr = SIDE_ARRAY_SIZE(SIDE_PARAM(_attr)), \
.fields = _fields, \
.attr = _attr, \
+ .nr_fields = SIDE_ARRAY_SIZE(SIDE_PARAM(_fields)), \
+ .nr_attr = SIDE_ARRAY_SIZE(SIDE_PARAM(_attr)), \
}
#define side_define_struct(_identifier, _fields, _attr) \
.type = { \
.attr = _attr, \
.nr_attr = SIDE_ARRAY_SIZE(SIDE_PARAM(_attr)), \
- .byte_order = _byte_order, \
.float_size_bits = _float_size_bits, \
+ .byte_order = _byte_order, \
}, \
.value = { \
_field = (_val), \
void print_attributes(const char *prefix_str, const char *separator,
const struct side_attr *attr, uint32_t nr_attr)
{
- int i;
+ uint32_t i;
if (!nr_attr)
return;
{
const struct side_enum_mappings *mappings = type_desc->u.side_enum.mappings;
const struct side_type *elem_type = type_desc->u.side_enum.elem_type;
- int i, print_count = 0;
+ uint32_t i, print_count = 0;
int64_t value;
if (elem_type->type != item->type) {
{
const struct side_type *elem_type = type_desc->u.side_enum_bitmap.elem_type;
const struct side_enum_bitmap_mappings *side_enum_mappings = type_desc->u.side_enum_bitmap.mappings;
- int i, print_count = 0;
- uint32_t stride_bit, nr_items;
+ uint32_t i, print_count = 0, stride_bit, nr_items;
bool reverse_byte_order = false;
const struct side_arg *array_item;
}
if (type_desc->type == SIDE_TYPE_ENUM || type_desc->type == SIDE_TYPE_ENUM_BITMAP)
- type = type_desc->type;
+ type = (enum side_type_label) type_desc->type;
else
- type = item->type;
+ type = (enum side_type_label) item->type;
printf("{ ");
switch (type) {
void tracer_print_struct(const struct side_type *type_desc, const struct side_arg_vec *side_arg_vec)
{
const struct side_arg *sav = side_arg_vec->sav;
- uint32_t side_sav_len = side_arg_vec->len;
- int i;
+ uint32_t i, side_sav_len = side_arg_vec->len;
if (type_desc->u.side_struct->nr_fields != side_sav_len) {
fprintf(stderr, "ERROR: number of fields mismatch between description and arguments of structure\n");
void tracer_print_sg_struct(const struct side_type_sg *type_sg, const void *_ptr)
{
char *ptr = (char *) _ptr;
- int i;
+ uint32_t i;
memcpy(&ptr, ptr + type_sg->offset, sizeof(ptr));
print_attributes("attr", ":", type_sg->u.side_struct->attr, type_sg->u.side_struct->nr_attr);
void tracer_print_array(const struct side_type *type_desc, const struct side_arg_vec *side_arg_vec)
{
const struct side_arg *sav = side_arg_vec->sav;
- uint32_t side_sav_len = side_arg_vec->len;
- int i;
+ uint32_t i, side_sav_len = side_arg_vec->len;
if (type_desc->u.side_array.length != side_sav_len) {
fprintf(stderr, "ERROR: length mismatch between description and arguments of array\n");
void tracer_print_vla(const struct side_type *type_desc, const struct side_arg_vec *side_arg_vec)
{
const struct side_arg *sav = side_arg_vec->sav;
- uint32_t side_sav_len = side_arg_vec->len;
- int i;
+ uint32_t i, side_sav_len = side_arg_vec->len;
print_attributes("attr", ":", type_desc->u.side_vla.attr, type_desc->u.side_vla.nr_attr);
printf("%s", type_desc->u.side_vla.nr_attr ? ", " : "");
enum side_visitor_status tracer_write_elem_cb(const struct side_tracer_visitor_ctx *tracer_ctx,
const struct side_arg *elem)
{
- struct tracer_visitor_priv *tracer_priv = tracer_ctx->priv;
+ struct tracer_visitor_priv *tracer_priv = (struct tracer_visitor_priv *) tracer_ctx->priv;
printf("%s", tracer_priv->i++ ? ", " : "");
tracer_print_type(tracer_priv->elem_type, elem);
void tracer_print_array_fixint(const struct side_type *type_desc, const struct side_arg *item)
{
const struct side_type *elem_type = type_desc->u.side_array.elem_type;
- uint32_t side_sav_len = type_desc->u.side_array.length;
+ uint32_t i, side_sav_len = type_desc->u.side_array.length;
void *p = item->u.side_static.side_array_fixint;
enum side_type_label side_type;
- int i;
print_attributes("attr", ":", type_desc->u.side_array.attr, type_desc->u.side_array.nr_attr);
printf("%s", type_desc->u.side_array.nr_attr ? ", " : "");
default:
goto type_error;
}
- side_type = elem_type->type;
+ side_type = (enum side_type_label) elem_type->type;
printf("[ ");
for (i = 0; i < side_sav_len; i++) {
void tracer_print_vla_fixint(const struct side_type *type_desc, const struct side_arg *item)
{
const struct side_type *elem_type = type_desc->u.side_vla.elem_type;
- uint32_t side_sav_len = item->u.side_static.side_vla_fixint.length;
+ uint32_t i, side_sav_len = item->u.side_static.side_vla_fixint.length;
void *p = item->u.side_static.side_vla_fixint.p;
enum side_type_label side_type;
- int i;
print_attributes("attr", ":", type_desc->u.side_vla.attr, type_desc->u.side_vla.nr_attr);
printf("%s", type_desc->u.side_vla.nr_attr ? ", " : "");
default:
goto type_error;
}
- side_type = elem_type->type;
+ side_type = (enum side_type_label) elem_type->type;
printf("[ ");
for (i = 0; i < side_sav_len; i++) {
void tracer_print_dynamic_struct(const struct side_arg_dynamic_struct *dynamic_struct)
{
const struct side_arg_dynamic_field *fields = dynamic_struct->fields;
- uint32_t len = dynamic_struct->len;
- int i;
+ uint32_t i, len = dynamic_struct->len;
print_attributes("attr", "::", dynamic_struct->attr, dynamic_struct->nr_attr);
printf("%s", dynamic_struct->nr_attr ? ", " : "");
const struct side_tracer_dynamic_struct_visitor_ctx *tracer_ctx,
const struct side_arg_dynamic_field *dynamic_field)
{
- struct tracer_dynamic_struct_visitor_priv *tracer_priv = tracer_ctx->priv;
+ struct tracer_dynamic_struct_visitor_priv *tracer_priv =
+ (struct tracer_dynamic_struct_visitor_priv *) tracer_ctx->priv;
printf("%s", tracer_priv->i++ ? ", " : "");
printf("%s:: ", dynamic_field->field_name);
void tracer_print_dynamic_vla(const struct side_arg_dynamic_vla *vla)
{
const struct side_arg *sav = vla->sav;
- uint32_t side_sav_len = vla->len;
- int i;
+ uint32_t i, side_sav_len = vla->len;
print_attributes("attr", "::", vla->attr, vla->nr_attr);
printf("%s", vla->nr_attr ? ", " : "");
const struct side_tracer_visitor_ctx *tracer_ctx,
const struct side_arg *elem)
{
- struct tracer_dynamic_vla_visitor_priv *tracer_priv = tracer_ctx->priv;
+ struct tracer_dynamic_vla_visitor_priv *tracer_priv =
+ (struct tracer_dynamic_vla_visitor_priv *) tracer_ctx->priv;
printf("%s", tracer_priv->i++ ? ", " : "");
tracer_print_dynamic(elem);
static
void tracer_print_static_fields(const struct side_event_description *desc,
const struct side_arg_vec *side_arg_vec,
- int *nr_items)
+ uint32_t *nr_items)
{
const struct side_arg *sav = side_arg_vec->sav;
- uint32_t side_sav_len = side_arg_vec->len;
- int i;
+ uint32_t i, side_sav_len = side_arg_vec->len;
printf("provider: %s, event: %s", desc->provider_name, desc->event_name);
if (desc->nr_fields != side_sav_len) {
const struct side_arg_vec *side_arg_vec,
void *priv __attribute__((unused)))
{
- int nr_fields = 0;
+ uint32_t nr_fields = 0;
tracer_print_static_fields(desc, side_arg_vec, &nr_fields);
printf("\n");
const struct side_arg_dynamic_struct *var_struct,
void *priv __attribute__((unused)))
{
- uint32_t var_struct_len = var_struct->len;
- int nr_fields = 0, i;
+ uint32_t nr_fields = 0, i, var_struct_len = var_struct->len;
tracer_print_static_fields(desc, side_arg_vec, &nr_fields);