1d517d4e09
Add double_alloc in alloc_mem
2025-10-10 12:28:45 +05:30
047f361ea9
Allocate twice for map lookups
2025-10-10 06:09:46 +05:30
489244a015
Add store_through_chain
2025-10-10 02:56:11 +05:30
8bab07ed72
Remove recursive_dereferencer
2025-10-10 00:13:35 +05:30
1253f51ff3
Use deref_to_val instead of recursive_dereferencer in get_operand value
2025-10-09 23:11:06 +05:30
23afb0bd33
Add deref_to_val to deref into final value and return the chain as well in binops
2025-10-09 21:47:28 +05:30
d7bfe86524
Add handle_variable_assignment to assign_pass
2025-10-09 03:09:10 +05:30
84ed27f222
Add handle_variable_assignment stub and boilerplate in handle_assign
2025-10-08 22:55:03 +05:30
6008d9841f
Change loglevel of multi-assignment warning in handle_assign
2025-10-08 22:45:09 +05:30
32dc8e6636
Merge pull request #21 from pythonbpf/globals
...
Adds support for globals
SO......
*I'm not merging this because it's complete, but because I don't want it to diverge from master too much.
*Stuff I still need to complete:
-> Structs and eval expressions in these globals.
-> handling the global keyword.
-> assigning back to the global and reading from inside a function.
-> Basically, `global` keyword in Python is used to write only and reading can be done directly without declaring as global as a direct assign without global declaration is going to diverge from Python.
-> The above logic is going to be supported by `global_sym_tab` generated using the new order of passes that we are doing.
-> This needs to be fixed and done ASAP to avoid conflicts. so yes, im gonna do it soon.
2025-10-08 14:48:37 +05:30
6362a5e665
Fix expr imports
2025-10-08 07:24:14 +05:30
d38d73d5c6
Move handle_comparator to type_normalization
2025-10-08 07:20:04 +05:30
0a6571726a
Move convert_to_bool to type_normalization
2025-10-08 07:14:42 +05:30
e62557bd1d
Seperate type_normalization from expr_pass
2025-10-08 06:59:32 +05:30
ee90ee9392
Fix type_deducer import in expr
2025-10-08 06:50:53 +05:30
5f9eaff59c
Fix expr imports
2025-10-08 06:49:34 +05:30
b86341ce7a
Rework dir structure for expr
2025-10-08 06:45:52 +05:30
4857739eec
cleanup handle_cond in functions_pass
2025-10-08 06:42:34 +05:30
95d63d969e
Add _handle_or_or in expr_pass
2025-10-08 06:24:57 +05:30
1f96bab944
Add _handle_and_op in expr_pass
2025-10-08 06:24:13 +05:30
f98491f3bd
Add handle_and and handle_or handling stub in eval_expr
2025-10-08 06:14:32 +05:30
98f262ae22
Add BoolOp handling stub in eval_expr
2025-10-08 06:11:59 +05:30
d2ff53052c
Add support for is and is not keywords
2025-10-08 06:04:29 +05:30
6b59980874
Add null checks for pointer derefs to avoid map_value_or_null verifier errors
2025-10-08 05:53:12 +05:30
3f9604a370
Add _deref_to_depth in expr_pass
2025-10-08 03:12:17 +05:30
480afd1341
Move _get_base_type to _get_base_type_and_depth
2025-10-08 03:02:31 +05:30
ab71275566
Add _get_base_type to expr_pass
2025-10-08 03:00:52 +05:30
2d850f457f
Add _normalize_types to handle mismatched ints, move type_mismatch test to passing
2025-10-08 02:22:41 +05:30
caa5d92c32
Fix struct_access in eval_expr, move struct_access conditional test to passing
2025-10-07 13:35:31 +05:30
a574527891
Add support for unary op 'not' in eval_expr, move not test to passing
2025-10-07 04:49:45 +05:30
fb63dbd698
Move conditional logic to eval_expr, add _conver_to_bool, add passing bool test
2025-10-07 03:11:23 +05:30
4f433d00cc
Add Boolean return support
2025-10-06 23:04:45 +05:30
6cf5115ea9
Eval LHS and RHS in _handle_compare
2025-10-06 22:38:43 +05:30
f11a43010d
Add _handle_cond to expr_pass
2025-10-06 22:33:03 +05:30
d1055e4d41
Reduce a condition from handle_cond
2025-10-06 22:20:54 +05:30
5066cd4cfe
Use named args for eval_expr call in handle_return
2025-10-06 05:11:33 +05:30
0bfb3855b6
Remove dead code from _handle_ctypes_call
2025-10-06 05:10:22 +05:30
2f0dd20f1e
Add false case for _handle_xdp in return_utils
2025-10-06 05:09:03 +05:30
abef68c274
Remove redundant TODO from return_utils
2025-10-06 05:04:06 +05:30
9aff614ff5
Remove unnecessary parts from return_utils
2025-10-06 05:02:02 +05:30
b75dc82f90
Remove clutter from handle_return
2025-10-06 04:44:55 +05:30
f53ca3bd5b
Add ctypes in eval_expr
2025-10-06 04:43:04 +05:30
02885af1ca
Add binops to eval_expr
2025-10-06 03:36:44 +05:30
e6e2a69506
Add _is_xdp_name
2025-10-06 03:02:08 +05:30
e4e92710c0
Move XDP pass above general return handling
2025-10-06 02:58:57 +05:30
f08bc9976c
Add _handle_wrapped_return
2025-10-06 02:22:43 +05:30
23183da2e1
Add _handle_variable_return
2025-10-06 00:05:23 +05:30
c6fef1693e
Add _handle_binop_return
2025-10-06 00:03:34 +05:30
192e03aa98
Add _handle_typed_constant_return
2025-10-05 23:59:04 +05:30
6f02b61527
Add _handle_xdp_return
2025-10-05 23:54:06 +05:30