Commit Graph

  • 09ba749b46 Merge pull request #52 from pythonbpf/vmlinux-ir-gen varunrmallya 2025-10-14 02:37:43 +05:30
  • a03d3e5d4c format chore varun-r-mallya 2025-10-14 02:36:04 +05:30
  • e1f9ac6ba0 add dependency tree functionality varun-r-mallya 2025-10-14 02:35:49 +05:30
  • 18d62d605a Add hello_world BCC example Pragyansh Chaturvedi 2025-10-13 20:11:27 +05:30
  • 27ab3aaf1e Cleanup codegen.py Pragyansh Chaturvedi 2025-10-13 19:17:33 +05:30
  • b34f7dd68a format chore varun-r-mallya 2025-10-13 19:11:59 +05:30
  • 69d8669e44 Merge pull request #28 from pythonbpf/vmlinux-working varunrmallya 2025-10-13 19:08:41 +05:30
  • d4f5a9c36e fix static typing errors varun-r-mallya 2025-10-13 19:07:06 +05:30
  • b2a57edf11 Simplify maps_pass Pragyansh Chaturvedi 2025-10-13 19:01:01 +05:30
  • 20ec307288 format chore varun-r-mallya 2025-10-13 19:00:59 +05:30
  • 0b4c6264a8 complete dependency tree readiness resolution varun-r-mallya 2025-10-13 19:00:28 +05:30
  • 6345fcdeff Remove unused is_helper_call from allocation_pass Pragyansh Chaturvedi 2025-10-13 18:38:07 +05:30
  • 6b41f1fb84 Move print logic to helper/printk_emitter.py Pragyansh Chaturvedi 2025-10-13 18:32:51 +05:30
  • 74d8014ade Move HelperHandlerRegistry to helper_registry.py Pragyansh Chaturvedi 2025-10-13 18:21:50 +05:30
  • 5d0a888542 Remove deadcode and seperate modules for pythonbpf.functions Pragyansh Chaturvedi 2025-10-13 04:41:46 +05:30
  • 0042280ff1 Rename public API and remove deadcode in return_utils Pragyansh Chaturvedi 2025-10-13 04:23:58 +05:30
  • 7a67041ea3 Move CallHandlerRegistry to expr/call_registry.py, annotate eval_expr Pragyansh Chaturvedi 2025-10-13 04:16:22 +05:30
  • 45e6ce5e5c Move deref_to_depth to expr/ir_ops.py Pragyansh Chaturvedi 2025-10-13 04:01:27 +05:30
  • c5f0a2806f Make printk_emiiter return True to prevent bogus logger warnings in eval_expr Pragyansh Chaturvedi 2025-10-13 02:39:46 +05:30
  • b0ea93a786 Merge pull request #50 from pythonbpf/dep_inv Pragyansh Chaturvedi 2025-10-13 02:32:18 +05:30
  • fc058c4341 Use dependency inversion to remove handler delayed import in eval_expr Pragyansh Chaturvedi 2025-10-13 02:28:00 +05:30
  • 158cc42e1e Move binop handling logic to expr_pass, remove delayed imports of get_operand_value Pragyansh Chaturvedi 2025-10-13 00:36:42 +05:30
  • 2a1eabc10d Fix regression in struct_perf_output Pragyansh Chaturvedi 2025-10-13 00:00:43 +05:30
  • e5741562f6 add full confidence import parsing varun-r-mallya 2025-10-12 23:56:38 +05:30
  • 93634a4769 format chore varun-r-mallya 2025-10-12 23:47:46 +05:30
  • 9b8462f1ed add bitfield size resolution varun-r-mallya 2025-10-12 23:44:50 +05:30
  • 785182787c make semantics work other than field diffs varun-r-mallya 2025-10-12 23:16:00 +05:30
  • 80396c78a6 recursive parsing fix without ctypes in recursed type varun-r-mallya 2025-10-12 20:59:18 +05:30
  • 31645f0316 Merge pull request #40 from pythonbpf/refactor_assign Pragyansh Chaturvedi 2025-10-12 12:19:51 +05:30
  • e0ad1bfb0f Move bulk of allocation logic to allocation_pass refactor_assign Pragyansh Chaturvedi 2025-10-12 12:14:46 +05:30
  • 69bee5fee9 Seperate LocalSymbol from functions Pragyansh Chaturvedi 2025-10-12 12:10:09 +05:30
  • 2f1aaa4834 Fix typos Pragyansh Chaturvedi 2025-10-12 11:41:01 +05:30
  • 0f6971bcc2 Refactor allocate_mem Pragyansh Chaturvedi 2025-10-12 11:34:40 +05:30
  • 08c0ccf0ac Pass map_sym_tab to handle_struct_field_assign Pragyansh Chaturvedi 2025-10-12 10:37:20 +05:30
  • 64e44d0d58 Use handle_struct_field_assignment in handle_assign Pragyansh Chaturvedi 2025-10-12 10:30:46 +05:30
  • 3ad1b73c5a Add handle_struct_field_assignment to assign_pass Pragyansh Chaturvedi 2025-10-12 10:19:52 +05:30
  • 105c5a7bd0 Cleanup handle_assign Pragyansh Chaturvedi 2025-10-12 10:12:45 +05:30
  • 933d2a5c77 Fix comprehensive assignment test Pragyansh Chaturvedi 2025-10-12 09:47:57 +05:30
  • b93f704eb8 Tweak the comprehensive assignment test Pragyansh Chaturvedi 2025-10-12 09:46:16 +05:30
  • fa82dc7ebd Add comprehensive passing test for assignment Pragyansh Chaturvedi 2025-10-12 09:39:33 +05:30
  • e8026a13bf Allow helpers to be called within themselves Pragyansh Chaturvedi 2025-10-12 09:30:37 +05:30
  • a3b4d09652 Fix errorstring in _handle_unary_op Pragyansh Chaturvedi 2025-10-12 09:13:04 +05:30
  • 4e33fd4a32 Add negation UnaryOp Pragyansh Chaturvedi 2025-10-12 09:11:56 +05:30
  • 2cf68f6473 Allow map-based helpers to be used as helper args / within binops which are helper args Pragyansh Chaturvedi 2025-10-12 07:57:55 +05:30
  • d66e6a6aff Allow struct members as helper args Pragyansh Chaturvedi 2025-10-12 06:00:50 +05:30
  • cd74e896cf Allow binops as args to helpers accepting int* Pragyansh Chaturvedi 2025-10-12 04:20:46 +05:30
  • 207f714027 Use scratch space to store consts passed to helpers Pragyansh Chaturvedi 2025-10-12 04:17:37 +05:30
  • 8774277000 try to separate out ast node from vmlinux type varun-r-mallya 2025-10-12 01:59:14 +05:30
  • 5dcf670f49 Add ScratchPoolManager and it's singleton Pragyansh Chaturvedi 2025-10-12 01:47:11 +05:30
  • 8743ea17f3 one recursion issue solved varun-r-mallya 2025-10-12 01:33:23 +05:30
  • 6bce29b90f Allocate scratch space for temp vars at the end of allocate_mem Pragyansh Chaturvedi 2025-10-12 00:37:57 +05:30
  • 321415fa28 Add update_max_temps_for_stmt in allocate_mem Pragyansh Chaturvedi 2025-10-12 00:33:07 +05:30
  • 8776d7607f Add count_temps_in_call to call scratch space needed in a helper call Pragyansh Chaturvedi 2025-10-12 00:17:10 +05:30
  • f8844104a6 add support for single depth pointer resolution varun-r-mallya 2025-10-11 23:18:51 +05:30
  • 3343bedd11 add extra fields to Field datatype varun-r-mallya 2025-10-11 22:28:23 +05:30
  • 8b7b1c08a5 Add struct_and_helper_binops passing test for assignments Pragyansh Chaturvedi 2025-10-11 22:03:32 +05:30
  • 75d3ad4fe2 format chore varun-r-mallya 2025-10-11 22:00:25 +05:30
  • abbf17748d format chore varun-r-mallya 2025-10-11 21:33:39 +05:30
  • 7c559840f0 add ctype subclass identifier varun-r-mallya 2025-10-11 20:02:20 +05:30
  • 06773c895f add error message varun-r-mallya 2025-10-11 19:05:21 +05:30
  • 1e3d775865 handle non-complex types along with recursion varun-r-mallya 2025-10-11 19:04:11 +05:30
  • 168e26268e add recursive addition algorithm with mixing of ast node type and type node which is not right. varun-r-mallya 2025-10-11 18:55:56 +05:30
  • 2cf7b28793 extract fields from the class varun-r-mallya 2025-10-11 18:26:13 +05:30
  • d24d59c2ba fix structure for IR generation separation. varun-r-mallya 2025-10-11 18:11:46 +05:30
  • f190a33e21 init IR generation file and clarify purpose varun-r-mallya 2025-10-11 17:52:22 +05:30
  • eb636ef731 add dependency handler class varun-r-mallya 2025-10-11 17:49:40 +05:30
  • 2ae3aade60 static type checks varun-r-mallya 2025-10-11 17:11:01 +05:30
  • f227fe9310 add dependency_node format and also cache results of symbol loader. varun-r-mallya 2025-10-11 17:09:52 +05:30
  • 7940d02bc7 add symbol resolution to import detection varun-r-mallya 2025-10-11 16:44:05 +05:30
  • 2483ef2840 separate vmlinux class handler varun-r-mallya 2025-10-11 04:19:26 +05:30
  • 68e9693f9a add import parser varun-r-mallya 2025-10-11 01:01:31 +05:30
  • c9bbe1ffd8 Call eval_expr properly within get_operand_value Pragyansh Chaturvedi 2025-10-11 03:21:09 +05:30
  • 91a3fe140d Remove unnecessary return artifacts from get_operand_value Pragyansh Chaturvedi 2025-10-11 03:06:24 +05:30
  • c2c17741e5 Remove store_through_chain Pragyansh Chaturvedi 2025-10-11 03:04:26 +05:30
  • cac88d1560 Allow different int widths in binops Pragyansh Chaturvedi 2025-10-11 02:44:08 +05:30
  • 317575644f Interpret bools as ints in binops Pragyansh Chaturvedi 2025-10-11 00:18:11 +05:30
  • a756f5e4b7 Add passing helper test for assignment Pragyansh Chaturvedi 2025-10-10 23:55:12 +05:30
  • e4575a6b1e Merge branch 'master' into vmlinux-working varunrmallya 2025-10-10 22:55:51 +05:30
  • 3ec3ab30fe add vmlinux processor to codegen pipeline varun-r-mallya 2025-10-10 22:53:05 +05:30
  • 7fb3ecff48 initialise tbaa generation and vmlinux recursive importer modules varun-r-mallya 2025-10-10 18:23:22 +05:30
  • ec59dad025 Refactor hist() calls to use dot notation Pragyansh Chaturvedi 2025-10-10 20:45:07 +05:30
  • 28b7b1620c remove todos and move to projects on github. varun-r-mallya 2025-10-08 22:27:51 +05:30
  • 9f8e240a38 add patch for Kernel 6.14 BTF varun-r-mallya 2025-10-08 21:47:02 +05:30
  • e6c05ab494 Update TODO.md Pragyansh Chaturvedi 2025-10-08 21:40:14 +05:30
  • 8aa9cf7119 Add failing oneline IfExpr conditional test Pragyansh Chaturvedi 2025-10-08 21:36:08 +05:30
  • 9683e3799f format chore varun-r-mallya 2025-10-08 14:31:37 +05:30
  • 200d293750 add global symbol table populate function varun-r-mallya 2025-10-05 14:02:46 +05:30
  • ed196caebf add global symbol table populate function varun-r-mallya 2025-10-05 14:02:46 +05:30
  • a049796b81 add failing test varun-r-mallya 2025-10-05 00:55:22 +05:30
  • 384fc9dd40 changer order of passes varun-r-mallya 2025-10-04 08:17:16 +05:30
  • 5f2df57e64 update globals test and todos. varun-r-mallya 2025-10-04 06:36:26 +05:30
  • 130d8a9edc format chore varun-r-mallya 2025-10-04 06:33:09 +05:30
  • 40ae3d825a fix broken IR generation logic for globals varun-r-mallya 2025-10-04 06:32:25 +05:30
  • 484624104e fix broken IR generation logic for globals varun-r-mallya 2025-10-03 22:55:40 +05:30
  • e7c4bdb150 add global support with broken generation function varun-r-mallya 2025-10-03 22:20:04 +05:30
  • 7210366e7d add global failing test varun-r-mallya 2025-10-03 21:25:58 +05:30
  • 435bf27176 Add compile to tests/failing_tests/conditionals/helper_cond.py Pragyansh Chaturvedi 2025-10-08 07:26:41 +05:30
  • 1ba27ac7cf Remove completed short term goal from TODO.md Pragyansh Chaturvedi 2025-10-08 07:25:14 +05:30
  • e4ddec3a02 Fix expr imports Pragyansh Chaturvedi 2025-10-08 07:24:14 +05:30
  • bc7b5c97d1 Move handle_comparator to type_normalization Pragyansh Chaturvedi 2025-10-08 07:20:04 +05:30