9cdca5a32b
Unhandled interrupt will halt execution
2016-07-04 17:07:57 -05:00
72ba554738
qemu_thread_join() takes only 1 arg
2016-04-23 10:17:04 +08:00
3a742fb6f6
fix conflicts when merging no-thread to master
2016-04-23 10:06:57 +08:00
9f94191a64
Remove double-free
...
This was previously released at uc_close ../uc.c:286
if (uc->release)
uc->release(uc->tcg_ctx);
Which effectively does:
object_unref(uc, OBJECT(uc->root));
2016-04-20 15:34:55 -07:00
cc6cbc5cf7
Merge branch 'memleak' into m2
2016-04-18 12:48:13 +08:00
47a7bb3c9f
Merge branch 'smaller_nothreads' of https://github.com/cseagle/unicorn into cseagle-smaller_nothreads
2016-04-17 23:37:06 +08:00
acd88856e1
add batched reg access
2016-04-04 20:51:38 -07:00
d5e85cf3f9
more efficient hook removal
2016-03-25 20:25:18 -07:00
f0af8f8282
execute cpus in same thread as uc_emu_start()
...
note: I'm sure this makes some dead code
2016-03-23 22:50:56 -07:00
fb1ebac000
Merge branch 'master' into m1
2016-03-09 15:13:42 +08:00
1087ba9dea
[query] add UC_QUERY_PAGE_SIZE uc_query helper
...
Return the current page size used by the current arch.
Useful to call uc_mem_map() with memory/size aligned.
Signed-off-by: Nicolas PLANEL <nplanel@redhat.com >
2016-03-04 15:54:24 +11:00
871cdb692f
Merge branch 'hook'
2016-02-17 09:37:17 +08:00
b69feb8d0b
Merge branch 'master' into memleak2
2016-02-15 15:52:10 +08:00
5719481e3f
move memory_overlap() around from mem_map() to mem_map_check(). this fixes test_mem_map.c in issue #420
2016-02-11 17:53:51 +08:00
80b0356a86
fix a comment in uc_hook_add() for UC_HOOK_INSN
2016-02-11 09:27:30 +08:00
a7a1dcc661
uc_hook_add(): add begin & end arguments for all hook types. also update Python binding after this change
2016-02-11 08:02:13 +08:00
20b01a6933
fix merge conflict
2016-02-01 12:08:38 +08:00
5a04bcb115
allow to change PC during callback. this solves issue #210
2016-01-28 14:06:17 +08:00
e750a4e97c
when uc_mem_exec() remove EXE permission, quit current TB & continue emulating with TB flushed. this fixes issue in PR #378
2016-01-28 00:56:55 +08:00
48ab148d1c
Merge branch 'hook'
2016-01-26 22:52:29 +08:00
0c2194078e
Merge branch 'hook-refactor' of https://github.com/lunixbochs/unicorn into hook
2016-01-25 20:42:56 +08:00
cee9a7d011
fix missing HOOK_CODE bound check
2016-01-25 03:51:35 -08:00
ec6d4d9ae0
Removed unneeded arm mode check
2016-01-24 22:36:37 +11:00
26d3b1e7d6
Added ppc 32bit mode and added sparc mode checks to bring it in line with other archs
2016-01-24 22:27:33 +11:00
4dbad9aa9b
add new API uc_query() to query internal status of emulator at runtime
2016-01-23 17:14:44 +08:00
2ac1281f82
rework code/block tracing
2016-01-22 19:07:50 -08:00
249e2ac0a0
Merge branch 'hook-refactor' of https://github.com/lunixbochs/unicorn into lunixbochs-hook-refactor
2016-01-23 10:58:37 +08:00
0886ae8ede
rework code/block tracing
2016-01-22 18:42:27 -08:00
93052f6566
refactor to allow multiple hooks for one type
2016-01-22 18:41:43 -08:00
b6e9121f48
use spaces, but not tabs, for indentation
2016-01-23 09:34:02 +08:00
678d645b80
Fix uc_mode usage in source code
2016-01-23 12:29:22 +11:00
e9ba6ed804
Fix uc_mode usage in source code
2016-01-23 12:17:59 +11:00
8763d426c2
Fix uc_mode usage in source code
2016-01-23 12:08:49 +11:00
b7c43108bd
Started fixing uc_mode flag usage
2016-01-23 10:45:58 +11:00
21c614d0af
properly verify ARM mode in uc_open(). see issue #389
2016-01-22 20:46:26 +08:00
3d8f413ce8
new API uc_mem_regions() to retrieve the list of memory regions mapped by uc_mem_map_*()
2016-01-16 16:57:17 +08:00
71ad9310fc
sanity check on arguments of uc_mem_map_ptr()
2016-01-12 00:59:56 +08:00
89eac66bf7
Move sanity checks before uc->memory_map is called.
2016-01-11 18:26:23 +02:00
580bc7b56a
cleanup
2016-01-10 23:10:00 +08:00
036763d6ae
Fix memory leaks as reported by DrMemory and Valgrind.
...
ARM and probably the rest of the arches have significant memory leaks as
they have no release interface.
Additionally, DrMemory does not have 64-bit support and thus I can't
test the 64-bit version under Windows. Under Linux valgrind supports
both 32-bit and 64-bit but there are different macros and code for Linux
and Windows.
2016-01-08 01:42:56 +02:00
7e16f7a50d
disallow mapping memory range that is already mapped. this fixes issue #350
2015-12-30 09:17:47 +08:00
f935469658
mips: handle memory redirect for all APIs. this fixes issue #347
2015-12-28 15:19:30 +08:00
771f9f7c3b
fix conflicts when merging map-ptr branch to master branch
2015-12-17 08:12:02 +08:00
8b79a872d0
Fix segfault introduced in my previous commits.
2015-12-11 22:35:25 +02:00
3c72809373
end address of mapping memory is not inclusive, and can wrap around to 0. fix issue #299
2015-12-12 01:37:13 +08:00
74986cc59a
g_free() can handle NULL pointer
2015-12-11 11:25:35 +08:00
3e57615c76
Fix uc_mem_unmap memory leak and in uc_close.
...
It appears the problem is that we are not calling the memory region
destructor. After modifying memory_unmap to include the destructor call
for the memory region, the memory is freed.
Furthermore in uc_close we must explicitly free any blocks that were not
unmapped by the user to prevent leaks.
This should fix issue 305.
2015-12-11 02:42:31 +02:00
230cbd5330
add permissions to map_ptr api
2015-11-28 11:28:31 -08:00
f4882ae1a2
simplify code by replacing mem_map_start()/mem_map_finish() in uc.c with mem_map()
2015-11-28 18:26:08 +08:00
f57c098056
declare variables at begin of function
2015-11-28 15:56:19 +08:00