Redhpm
3671fc24d6
Merge pull request #1544 from Redhpm/pin_pyparsing
...
pin pyparsing because 3.3.3 is bugged
2026-09-21 16:04:26 +02:00
redhpm
4638af8bda
pin pyparsing because 3.3.3 is bugged
2026-09-21 15:44:00 +02:00
Redhpm
3e4c8c48d9
Merge pull request #1509 from PerfectLaugh/master
...
AArch64 IR instruction fix for `rbit` instruction and `ctr_el0` register
2026-09-21 09:52:57 +02:00
Redhpm
123b697dfd
Merge pull request #1543 from Redhpm/fix_pushf
...
fix pushf[dq] sem - do not copy vm and rf flags
2026-09-19 21:16:55 +02:00
redhpm
86eb7be2e5
fix pushf[dq] sem - do not copy vm and rf flags
2026-09-19 21:14:45 +02:00
Redhpm
315c96a25f
Merge pull request #1538 from kStor2poche/fix-negative-segment-offsets-on-<64bits-systems
...
Fix negative segment offsets on <64bits systems
2026-09-19 12:49:16 +02:00
Redhpm
0836d80016
Merge pull request #1537 from kStor2poche/allow-simplifying-consecutive-exprmem-and-exprslice
...
Allow simplifying the following expr: {@n[id], @m[id][n:m]} with m>n
2026-09-19 12:48:23 +02:00
kStor2poche
37e14f2db9
Add unit tests
2026-09-19 11:17:13 +02:00
kStor2poche
46337e766b
No need for the comment as it has actually been tested
2026-09-19 10:19:39 +02:00
Redhpm
5dfc81d5ed
Merge pull request #1540 from kStor2poche/some-bits-from-elf.h-and-a-typo-fix
...
Some bits from elf.h and a typo fix
2026-09-16 15:42:43 +02:00
Redhpm
570fb73737
Merge pull request #1534 from BlueBottleGG/fix-state-eq
...
Fix: State.__eq__ calls undefined function
This cleans old function calls that remained here.
2026-09-16 14:58:05 +02:00
kStor2poche
7818597551
Allow simplifying the following expr: {@n[id], @m[id][n:m]} with m>n
2026-09-11 16:06:11 +02:00
kStor2poche
3d853c305d
Fix negative segment offsets on <64bits systems
2026-09-11 16:05:06 +02:00
kStor2poche
b1e4d2811e
Some bits from elf.h and a typo fix
2026-09-11 16:03:56 +02:00
serpilliere
1dc5fa9031
Merge pull request #1519 from fkil/master
...
adjust to removed APIs in ast module for python >=3.14
2026-08-24 10:57:49 +02:00
Johannes
c58442c4ba
Fix State.__eq__ calling non-existent function edges() on UnionFind.
2026-08-19 01:09:11 +02:00
serpilliere
599d6e1361
Merge pull request #1531 from mrexodia/modern-python
...
Modernize Python project and GitHub Actions for linux/windows/macos
2026-08-10 12:03:51 +02:00
serpilliere
45fb836108
Merge pull request #1530 from mrexodia/weakref
...
expression: weak-reference the singleton intern table to bound memory
2026-08-10 12:00:32 +02:00
Duncan Ogilvie
71df018677
Modernize Python project and GitHub Actions for linux/windows/macos
2026-05-31 15:56:18 +02:00
Duncan Ogilvie
6b764babeb
expression: weak-reference the singleton intern table to bound memory
...
Expr.args2expr (the singleton intern cache) held a STRONG reference to every
expression ever created, so it grew without bound on long analyses (symbolic
execution of obfuscated code created millions of transient expressions that were
never freed -> tens of GB, swapping).
Make Expr instances weak-referenceable (add __weakref__ to Expr.__slots__) and
change args2expr / canon_exprs to weakref.WeakValueDictionary / WeakSet, so
transient expressions are garbage-collected once unreferenced while live ones
(still held elsewhere) stay interned -- singleton identity and value equality are
preserved. Subclasses now declare only their own slots (base slots, incl.
__weakref__, are inherited; the previous `Expr.__slots__ + [...]` redeclared base
slots, which both wasted memory and is disallowed for __weakref__).
Measured: a long symbolic-execution analysis dropped from ~13GB (and climbing) to
~155MB peak with no change in results.
2026-05-31 02:47:30 +02:00
serpilliere
24a64bb30a
Merge pull request #1524 from w4kfu/x86_imp
...
[arch/x86] add blendps/mpsadbw/pblendw/pmaxsb/pminsb/pmovsxbq/pmovsxb…
2026-03-26 12:27:54 +01:00
w4kfu
a314ac9969
[arch/x86] add blendps/mpsadbw/pblendw/pmaxsb/pminsb/pmovsxbq/pmovsxbw instructions support
2026-03-25 12:40:17 +01:00
Samuel Chevet
4b4837f6e6
Merge pull request #1523 from w4kfu/fix_ci
...
Fix ci
2026-03-20 18:38:07 +01:00
serpilliere
3255fe547b
Merge pull request #1522 from w4kfu/x86_fix_and_instr_add
...
X86 fix and instr add
2026-03-20 18:35:31 +01:00
w4kfu
11d5c1f90f
[arch/x86] add pclmulqdq/pminsd instructions support
2026-03-20 14:26:30 +01:00
w4kfu
ff0259866c
[arch/x86] add packusdw instructions support
2026-03-20 13:55:05 +01:00
w4kfu
ff24b44fdf
[arch/x86] add (some) pmovsx familly instructions support
2026-03-20 13:53:18 +01:00
w4kfu
3ca7226793
[arch/x86] add pmaxsd instructions support
2026-03-20 13:48:44 +01:00
w4kfu
247577f776
[arch/x86] add ptest instructions support
2026-03-20 13:45:10 +01:00
w4kfu
b03beb7d4c
[arch/x86] add phminposuw instructions support
2026-03-20 13:42:47 +01:00
w4kfu
8ca9855c53
[arch/x86] add pmuldq instructions support
2026-03-20 13:37:27 +01:00
w4kfu
06d2920cd2
[arch/x86] add psign instructions support
2026-03-20 11:43:55 +01:00
w4kfu
03c888bc6f
[arch/x86] fix pextrq disassembly
2026-03-20 09:06:35 +01:00
Fabian Kilger
f7050ec94c
adjust to removed APIs in ast module for python >=3.14
...
ast.Num and ast.Str were deprecated with python 3.8 and are now
removed with python3.14.
This commit replaces uses of these APIs using ast.Constant.
Consequentely, the behavior for python versions <3.8 will break
2026-01-30 09:17:31 +01:00
PerfectLaugh
a8a7c88f17
feat(aarch64): add rbit instruction for ir
...
rbit: Reverse bits in register
2025-02-27 16:31:05 -05:00
PerfectLaugh
42b203798d
fix(aarch64): wrong op2 for ctr_el0
...
op2 for ctr_el0 should be 0b11 instead of 0b00
https://developer.arm.com/documentation/ddi0601/2024-12/AArch64-Registers/CTR-EL0--Cache-Type-Register
2025-02-27 16:30:12 -05:00
serpilliere
2a15c60712
Merge pull request #1506 from serpilliere/updt_llvm_ci
...
Fix distutils
2025-01-26 15:51:44 +01:00
Fabrice Desclaux
d9fb6d58c7
Update setup & tests
2025-01-26 13:17:14 +01:00
serpilliere
0164999126
Merge pull request #1505 from serpilliere/fix_xdot_output
...
Fix xdot output
2025-01-24 09:19:48 +01:00
Fabrice Desclaux
e46b1fc255
Fix xdot output
...
Signed-off-by: Fabrice Desclaux <[email protected] >
2025-01-24 08:36:24 +01:00
serpilliere
cbc722eed8
Merge pull request #1487 from psyirius/fix-ida-bs-get-u8
...
Fix: `bin_stream::get_u8` method returning bytes
2024-08-20 17:20:08 +02:00
serpilliere
243e4f0c54
Merge pull request #1496 from AeonLucid/fix/aarch64_immhi_page
...
Fix typo in aarch64_immhi_page decode
2024-08-20 17:12:43 +02:00
serpilliere
7ffe28628a
Merge pull request #1502 from W0ni/fix_expression_division
...
fix expression division
2024-08-20 17:11:44 +02:00
woni
0dfc550534
fix expression division and add test
2024-08-19 20:55:10 +02:00
serpilliere
c8aafe1654
Merge pull request #1501 from greenozon/master
...
Fixes #1500
2024-08-19 11:07:28 +02:00
Alex
1cd118a01b
Fixes #1500
2024-08-13 22:43:04 +03:00
serpilliere
bece47a799
Merge pull request #1497 from greenozon/master
...
Fix compilation for FreeBSD OS
2024-08-10 11:35:38 +02:00
AeonLucid
360981951c
Add regression test for aarch64_immhi_page
2024-08-10 00:29:57 +02:00
Alex
0928ae3b8e
Fix compilation for FreeBSD OS
2024-08-04 12:42:47 +03:00
AeonLucid
ed931ea271
Fix typo in aarch64_immhi_page decode
2024-08-03 04:16:26 +02:00