Commit Graph

262 Commits

Author SHA1 Message Date
Niklas Baumstark
3eaceec07e add regression test for fsqrt hang 2016-07-16 15:19:44 +02:00
Nguyen Anh Quynh
0a4ca0d365 regress: make some tests less noisy 2016-07-09 10:50:21 +08:00
Hoang-Vu Dang
9a2a5b15d8 Rename unhandled CPU exception 2016-07-05 11:10:39 -05:00
Hoang-Vu Dang
9cdca5a32b Unhandled interrupt will halt execution 2016-07-04 17:07:57 -05:00
Hoang-Vu Dang
3151451c87 Fix some invalid code in regress 2016-07-04 00:59:34 -05:00
Nguyen Anh Quynh
faef4365cf Merge pull request #583 from petmac/arm_fp_vfp_disabled
Fix incorrect end address passed to emu_start.
2016-06-27 22:17:12 +08:00
Peter Mackay
0e661cb3cb Fix incorrect end address passed to emu_start. 2016-06-21 09:26:27 +01:00
Nguyen Anh Quynh
65bef683d3 regress: more flexible .gitignore 2016-06-16 09:27:47 +08:00
Nguyen Anh Quynh
6193be73b7 tests: more flexible .gitignore for tests/unit/ 2016-06-16 09:14:32 +08:00
Nguyen Anh Quynh
fdcdaa3639 Merge branch 'master' of https://github.com/NUko32/unicorn into NUko32-master 2016-06-16 09:07:33 +08:00
Peter Mackay
d4f0ab7ba8 Add Thumb-2 code to enable FP and VFP. 2016-06-15 23:43:51 +01:00
nuko32
9b46a22cd5 final refactoring for test_hang 2016-06-15 20:52:28 +02:00
nuko32
3bec4b2cf1 refactored test_hang and fixed indentations 2016-06-15 20:44:22 +02:00
jndok
c6db9febe7 added ARM64 hang test 2016-06-15 19:18:51 +02:00
Peter Mackay
5d06e6638e Add arm_fp_vfp_disabled.py test. 2016-06-10 08:19:09 +01:00
Nguyen Anh Quynh
125f77a460 regress: chmod +x vld.py 2016-05-04 08:42:53 +08:00
Nguyen Anh Quynh
8b95cad550 regress: remove vmov.py 2016-05-04 08:41:09 +08:00
mkravchik
1afbee3a12 Merge pull request #3 from mkravchik/vld
Vld
2016-05-03 22:26:00 +03:00
mkravchik
33d105917d Added files via upload 2016-05-03 18:43:39 +03:00
Nguyen Anh Quynh
69cabed00f Merge branch 'asan' of https://github.com/zachriggle/unicorn into zachriggle-asan 2016-04-27 16:30:42 +08:00
Nguyen Anh Quynh
4084a385c2 regress: add mem_64_c.c from issue #523 by Chris Eagle 2016-04-24 22:53:30 +08:00
Nguyen Anh Quynh
df1de25db0 regress: chmod +x write_before_map.py 2016-04-24 18:09:06 +08:00
Tim Blazytko
0e52b913e7 added regression test write_before_map.py 2016-04-24 11:47:04 +02:00
Zach Riggle
93063d089b Add ASAN build target with UNICORN_ASAN or via './make.sh asan' 2016-04-20 16:16:06 -07:00
Nguyen Anh Quynh
cc6cbc5cf7 Merge branch 'memleak' into m2 2016-04-18 12:48:13 +08:00
practicalswift
06a64dc3b0 Add six crash cases (2 * ARM + 4 * M68K)
* 001-bad_condition_code_0xe.c (ARM)
* 002-qemu__fatal__unimplemented_control_register_write_0xffb___0x0.c (M68K)
* 003-qemu__fatal__wdebug_not_implemented.c (M68K)
* 004-segmentation_fault_1.c (ARM)
* 005-qemu__fatal__illegal_instruction__0000___00000404.c (M68K)
* 006-qemu__fatal__illegal_instruction__0421___00040026.c (M68K)

```
$ ./001-bad_condition_code_0xe # ARM
uc_emu_start(…)
Bad condition code 0xe
Aborted

$ ./002-qemu__fatal__unimplemented_control_register_write_0xffb___0x0 # M68K
uc_emu_start(…)
hook_code(…) called
qemu: fatal: Unimplemented control register write 0xffb = 0x0

Aborted

$ ./003-qemu__fatal__wdebug_not_implemented # M68K
uc_emu_start(…)
qemu: fatal: WDEBUG not implemented
Aborted

$ ./004-segmentation_fault_1 # ARM
uc_emu_start(…)
hook_code(…) called
Segmentation fault

$ ./005-qemu__fatal__illegal_instruction__0000___00000404 # M68K
uc_emu_start(…)
qemu: fatal: Illegal instruction: 0000 @ 00000404
Aborted

$ ./006-qemu__fatal__illegal_instruction__0421___00040026 # M68K
uc_emu_start(…)
hook_code(…) called
qemu: fatal: Illegal instruction: 0421 @ 00040026
Aborted
```
2016-04-09 15:27:20 -04:00
Zach Riggle
67ae30a2fb Add test showing failure to track targets properly when single-stepping.
This issue breaks emulation of conditional instructions on amd64.
2016-04-05 10:06:39 -07:00
Nguyen Anh Quynh
b138393a2b regress: chmod +x translator_buffer.py 2016-04-05 21:40:02 +08:00
Nguyen Anh Quynh
6ee7d22c68 Merge pull request #510 from emdel/master
test case for the dynmaic translator buffer issue
2016-04-05 20:37:52 +07:00
emdel
1120a22b4d test case for the dynmaic translator buffer issue 2016-04-05 06:11:21 -07:00
Nguyen Anh Quynh
1486ccce70 regress: fix all the calls to uc_hook_add() following recent change on this API 2016-04-03 23:32:14 +08:00
Nguyen Anh Quynh
4e07e71e04 regress: chmod +x x86_64_eflags.py 2016-03-31 10:06:33 +08:00
Zach Riggle
8cd23bcead Add test case for unicorn-engine/unicorn#499 2016-03-30 21:25:35 -04:00
Sascha Schirra
09784d85c1 bugfix read_reg -> reg_read 2016-03-27 11:26:57 +02:00
Nguyen Anh Quynh
90cefeb167 regress: adapt all C code to latest change in uc_hook_add() API 2016-03-26 00:33:24 +08:00
Nguyen Anh Quynh
08bd4b3f61 regress chmod +x x86_gdt.py tcg_liveness_analysis_bug_issue-287.py 2016-03-25 11:11:32 +08:00
Sascha Schirra
0c49f83cb5 GDT test added 2016-03-22 20:08:15 +01:00
Nguyen Anh Quynh
ad6bb8c9f8 unit: fix test_hookcounts.c 2016-03-20 01:54:37 +08:00
Nguyen Anh Quynh
0af4baac31 unit: fix warnings in printing uint64_t in test_hookcounts.c 2016-03-17 17:49:22 +08:00
egberts
ac21e74641 Issues #465
Pull Request #466
Added one more test case
Fixed two test case into passing (for a total of 3 passing out of 7)
2016-03-16 11:49:25 -07:00
egberts
ab5ed15044 Issue #465 - Enhanced test for more scenarios; fixed some semantic bugs. 2016-03-16 10:54:20 -07:00
Nguyen Anh Quynh
fb1ebac000 Merge branch 'master' into m1 2016-03-09 15:13:42 +08:00
Nguyen Anh Quynh
9c91a6ec28 fix a typo in tests/regress/LICENSE 2016-03-08 08:55:55 +08:00
Hoang-Vu Dang
9d9056c474 Add a license for regression tests 2016-03-07 12:22:20 -06:00
Nicolas PLANEL
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
mkravchik
90d15b9a57 Added files via upload
VMOV emulation fails on ARM (in Thumb mode)
2016-02-29 14:52:47 +02:00
Nguyen Anh Quynh
aabcb95f01 unit: remove ^M from test_x86_soft_paging.c 2016-02-22 14:02:28 +08:00
Nguyen Anh Quynh
2f28f3f210 unit: make test_x86_soft_paging.c compilable. also update .gitignore for its binary 2016-02-22 14:01:00 +08:00
Ramirez57
2ab2b229ce test case: x86 guest paging
Test case for x86 paging using virtual addresses mapped by Unicorn, as well as unmapped.

Attempting to read/write from virtual address ranges unmapped by Unicorn wrongly causes protection faults, even when the virtual address points to read/write regions of Unicorn memory.
2016-02-22 00:03:14 -05:00
emdel
f010219a0f zf set to 1 2016-02-18 06:29:59 -08:00
emdel
0383db9d27 Added assert 2016-02-18 06:26:01 -08:00
Nguyen Anh Quynh
6e5a3a6d5b regress: chmod +x jumping.py 2016-02-18 21:58:48 +08:00
emdel
de5a887ed2 testcase to set ZF and modify eflags 2016-02-17 13:56:20 -08:00
Nguyen Anh Quynh
871cdb692f Merge branch 'hook' 2016-02-17 09:37:17 +08:00
Nguyen Anh Quynh
b69feb8d0b Merge branch 'master' into memleak2 2016-02-15 15:52:10 +08:00
coco
bfbe91834e two more testcases 2016-02-11 15:02:14 +01:00
Nguyen Anh Quynh
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
Nguyen Anh Quynh
6478a24404 Merge branch 'gdt_idt' of https://github.com/cseagle/unicorn into cseagle-gdt_idt 2016-02-06 17:31:42 +08:00
Chris Eagle
49b9f4f8da uc_x86_mmr type available in qemu/target-i386/unicorn.c 2016-02-04 19:09:41 -08:00
Nguyen Anh Quynh
07e8f2f60d Merge pull request #423 from lunixbochs/master
add regress for #421
2016-02-05 09:45:01 +08:00
Ryan Hileman
bcfa41c90d add regress for #421 2016-02-05 02:35:17 +01:00
Nguyen Anh Quynh
9b6d1bf324 regress: fix compilation warning for mem_fuzz.c 2016-02-05 08:54:52 +08:00
Nguyen Anh Quynh
a5d9daaef4 Merge branch 'mem_fuzzing' of https://github.com/eqv/unicorn into eqv-mem_fuzzing 2016-02-05 08:49:18 +08:00
Chris Eagle
59f7bf3be7 file perms 2016-02-04 16:48:27 -08:00
Chris Eagle
e59382e030 updated gdtr/idtr/ldtr/tr read/write code 2016-02-04 16:44:52 -08:00
coco
1e13777c91 added memory fuzzer and 2 resulting testcases 2016-02-04 19:57:20 +01:00
Chris Eagle
9977054a15 add support for setting gdtr, idtr, ldtr, and tr programatically 2016-02-03 09:22:29 -08:00
Nguyen Anh Quynh
101f14285a chmod +x arm_init_input_crash.py 2016-02-03 09:20:15 +08:00
McLovi9
ac806d3bfb Create arm_init_input_crash.py 2016-02-02 20:36:36 +01:00
Nguyen Anh Quynh
20b01a6933 fix merge conflict 2016-02-01 12:08:38 +08:00
Nguyen Anh Quynh
e42aba760f fix a typo in test_tb_x86.c 2016-01-31 14:07:35 +08:00
Nguyen Anh Quynh
32b9deca04 unit: use UC_HOOK_MEM_VALID for test_tb_x86.c 2016-01-31 13:14:11 +08:00
Nguyen Anh Quynh
1fb5416f4a unit: simplify test_tb_x86.c 2016-01-31 13:06:42 +08:00
Nguyen Anh Quynh
a5020c69bb Merge pull request #408 from egberts/master
Pull Request for Issue #364: Invalidating Translation Cache after self-modifying code
2016-01-31 10:37:04 +08:00
steve
fc22a359e2 Issue #364 - Move RIP/PC closer next to the offending self-modifying code
which modified the 2nd next instruction (imul) in which that escaped
our wonderful ability to invalidate the
instruction translation cache in which we badly need to pick up the
self-modification being made.
2016-01-30 19:30:17 -05:00
Nguyen Anh Quynh
5a04bcb115 allow to change PC during callback. this solves issue #210 2016-01-28 14:06:17 +08:00
Nguyen Anh Quynh
48ab148d1c Merge branch 'hook' 2016-01-26 22:52:29 +08:00
xorstream
7973f6b4c9 Added mode endian flags for sparc tests and fixed mode in sparc_jump_to_zero.c 2016-01-25 13:50:26 +11:00
xorstream
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
Nguyen Anh Quynh
249e2ac0a0 Merge branch 'hook-refactor' of https://github.com/lunixbochs/unicorn into lunixbochs-hook-refactor 2016-01-23 10:58:37 +08:00
Nguyen Anh Quynh
d79925f477 sparc: add SPARC32 mode (= UC_MODE_32) 2016-01-23 10:48:18 +08:00
Ryan Hileman
33180b5afa add test for multiple basic block hooks 2016-01-22 18:42:14 -08:00
Nguyen Anh Quynh
5c6c67bb3a regress: fix Sparc mode for sparc_reg.py 2016-01-23 10:17:42 +08:00
xorstream
8763d426c2 Fix uc_mode usage in source code 2016-01-23 12:08:49 +11:00
Nguyen Anh Quynh
840eb54f05 Revert "arm64: fix the access to tcg_op_defs[] in arm64 backend (issue #387)"
This reverts commit 3000ca6abf.
2016-01-22 11:33:36 +08:00
Nguyen Anh Quynh
3000ca6abf arm64: fix the access to tcg_op_defs[] in arm64 backend (issue #387) 2016-01-22 11:33:28 +08:00
Nguyen Anh Quynh
6f0a01293d unit: fix some compilation warnings in test_tb_x86.c 2016-01-17 10:06:00 +08:00
steve
f0dac63b69 In response to issue #364, a unit test case has been created
for exercising proper flushing of the instruction translation cache.
2016-01-16 18:05:32 -05:00
Nguyen Anh Quynh
d0125eb8bf regress: add invalid_write.py to test issue #371 2016-01-13 11:35:09 +08:00
Nguyen Anh Quynh
7de48f2f75 regress: add emu_clear_errors to .gitignore 2016-01-12 01:02:45 +08:00
Nguyen Anh Quynh
e1fe63ae13 regress: fix compilation warnings for emu_clear_errors.c 2016-01-12 00:37:15 +08:00
Nguyen Anh Quynh
fa430b4ad4 Merge branch 'test/issue-351' of https://github.com/williballenthin/unicorn into williballenthin-test/issue-351 2016-01-12 00:22:33 +08:00
Willi Ballenthin
a9d4b4cfa7 add test case in C demonstrating issue 351 2016-01-11 09:57:13 -05:00
Nguyen Anh Quynh
f4a5273ce7 Merge pull request #365 from williballenthin/test/issue-351
add test case demonstrating issue 351
2016-01-11 16:13:52 +08:00
Ryan Hileman
b6db70808d add regress for #366 2016-01-10 23:51:11 -08:00
Willi Ballenthin
b2b1d0be01 add test case demonstrating issue 351 2016-01-10 23:56:34 -05:00
Nguyen Anh Quynh
2a269acac1 regress: add memleak_xxx.c to test memleak issue 2016-01-10 23:56:14 +08:00
Nguyen Anh Quynh
ec4a47fc19 regress: fix 1 more compilation warning on printf format 2016-01-10 23:55:19 +08:00
Nguyen Anh Quynh
32bca0bd02 regress: fix some compilation warnings on printf format 2016-01-10 23:45:02 +08:00
farmdve
264c4c1b54 Add some fixes to the tests.
My mem_nofree test fails on the latest code as apparently my address and
sizes overlap each other.

The mem_unmap test failed as the invalid memory hook case was incorrect.
2016-01-05 18:02:54 +02:00