diff --git a/pythonbpf/binary_ops.py b/pythonbpf/binary_ops.py index e0b69f3..eaf2e42 100644 --- a/pythonbpf/binary_ops.py +++ b/pythonbpf/binary_ops.py @@ -8,10 +8,7 @@ logger: Logger = logging.getLogger(__name__) def recursive_dereferencer(var, builder): """dereference until primitive type comes out""" - if var.type == ir.PointerType(ir.PointerType(ir.IntType(64))): - a = builder.load(var) - return recursive_dereferencer(a, builder) - elif var.type == ir.PointerType(ir.IntType(64)): + if isinstance(var.type, ir.PointerType): a = builder.load(var) return recursive_dereferencer(a, builder) elif var.type == ir.IntType(64): diff --git a/pythonbpf/expr_pass.py b/pythonbpf/expr_pass.py index 22c659c..40d0800 100644 --- a/pythonbpf/expr_pass.py +++ b/pythonbpf/expr_pass.py @@ -41,8 +41,7 @@ def _handle_attribute_expr( attr_name = expr.attr if var_name in local_sym_tab: var_ptr, var_type, var_metadata = local_sym_tab[var_name] - logger.info(f"Loading attribute { - attr_name} from variable {var_name}") + logger.info(f"Loading attribute {attr_name} from variable {var_name}") logger.info(f"Variable type: {var_type}, Variable ptr: {var_ptr}") metadata = structs_sym_tab[var_metadata]