14 Commits

Author SHA1 Message Date
Duncan Ogilvie 48d7999bf1 Add function.optimize 2026-05-13 18:16:55 +02:00
Duncan Ogilvie 723641ee50 Add high-level API for (named) metadata 2026-05-13 16:58:02 +02:00
Duncan Ogilvie 2c832090ee Add JIT/optimize/intrinsic/object support 2026-05-13 01:58:02 +02:00
Duncan Ogilvie 57074d321c Consistently use Python properties where appropriate 2026-05-12 17:55:29 +02:00
Duncan Ogilvie cfe7e4ee6b Fix bug in transform example 2026-05-12 01:49:51 +02:00
Duncan Ogilvie 1aa11847c7 Refresh public examples 2026-05-12 01:49:51 +02:00
Duncan Ogilvie affa8258d6 Improve API design 2026-02-16 12:50:51 +01:00
Duncan Ogilvie 5b4132a6ef Better documentation for .operands 2026-02-16 03:31:07 +01:00
expend20 654bb90daa Add transformation API primitives and improve type ergonomics
Make ctx.types.ptr a property (address space 0) instead of a method call,
  with addrspace_ptr(n) for non-default address spaces. Add split_basic_block,
  instruction_clone, and set_called_operand to support IR transformation
  workflows. Improve get_operand bounds checking to report index and count
  instead of segfaulting. Add LibXml2 workaround for LLVM 21 on Windows.

  New regression tests for operand bounds and split_basic_block. Update all
  existing tests, examples, and docs to use the new ptr property syntax.
  Fix test_type_crash.py to use function_type instead of type (pointer)
2026-02-15 18:55:25 +01:00
Duncan Ogilvie 7cec92243c Do a bit of API cleanup 2026-02-13 00:41:09 +01:00
Duncan Ogilvie d2e949c291 Start porting some examples manually 2026-02-05 22:34:42 +01:00
Duncan Ogilvie d3d0ecb2f5 Add example of use_vs_user.py 2025-12-25 02:56:41 +01:00
Duncan Ogilvie 9fc23c8a3d More API refactoring 2025-12-21 12:47:56 +01:00
Duncan Ogilvie 9eb8014b9f Add some example tools to test the API 2025-12-21 03:54:58 +01:00