143 Commits

Author SHA1 Message Date
nemerle
db39014e1b A few more skeleton things for planner 2016-05-09 16:05:15 +02:00
nemerle
3376818a17 fix previous commit
Support simple character deletion operations in StructuredTextTarget.h
to support opcode suffix modification.
2016-05-09 11:53:03 +02:00
nemerle
72ca6bbb70 disassembler: more instructions output into structuredtext 2016-05-09 11:35:30 +02:00
nemerle
888de8d35e More tabs replaced with spaces 2016-05-06 15:57:15 +02:00
nemerle
59c199837c Replace some tabs with spaces 2016-05-06 15:04:45 +02:00
nemerle
152625d67d Extend responsibilities of FunctionViewWidget
Reduced IDcc interface functionality.

Fix a few bugs/warnings discovered by coverity.

Emit functionUpdate signal from project when function object internal
fields change.
2016-05-06 14:40:33 +02:00
nemerle
292e4041e1 Initialize some class attributes. 2016-05-06 00:26:52 +02:00
nemerle
36d95946b3 Show JMP targets 2016-05-05 23:55:39 +02:00
nemerle
4cc3b41e64 Use QTextDocument instead of html to build text display
Continued work on rendering disassembly level text.
2016-05-05 16:06:06 +02:00
nemerle
6ade935e37 Function's command queue implemented, flow control scanning starts to
work.
2016-05-05 14:28:25 +02:00
nemerle
c8fd3a01df Add AutomatedPlanner skeleton class 2016-05-04 14:22:28 +02:00
nemerle
29353111ac A few missing returns 2016-05-04 09:54:38 +02:00
nemerle
4dc321650f Add skeletal functions for ICODE -> StructuredText 2016-05-04 00:57:59 +02:00
nemerle
0521206de5 WIP: More GUI work, use shared_ptr to store Function references. 2016-05-03 13:59:14 +02:00
nemerle
60a4fefe95 Fix command queue stepping.
Also add instanceDescription to Command class to allow for more verbose command information reporting
2016-05-01 18:45:22 +02:00
nemerle
0391f67109 Per-Function flag to prevent decompilation/disassembly
For now it just sets PROC_ISLIB flag
2016-05-01 18:42:28 +02:00
nemerle
d22624a99b Missing include 2016-05-01 14:55:06 +02:00
nemerle
95acbaa7fa GUI work. 2016-04-29 15:51:02 +02:00
nemerle
2452984864 Convert more of Frontend processing to command lists. 2016-04-29 12:23:12 +02:00
nemerle
4682bda8d8 if CFG is missing Project::createFunction should create one 2016-04-29 12:22:42 +02:00
nemerle
4a6d97c1b1 Prepare CMakeLists for UI work 2016-04-29 12:21:33 +02:00
nemerle
3d5a907b30 Move Function closer to LLVM interface ( FunctionType etc. )
A few more places are using Commands.
2016-04-28 16:25:58 +02:00
nemerle
0684062130 Fix full_regression.sh mkdir 2016-04-28 13:13:35 +02:00
nemerle
62d8633113 Implementation 2016-04-26 16:18:23 +02:00
nemerle
b2be1cf2da Simplify: SetupLibCheck does not depend on PROG or Project classes.
It also does not exit the program when ".sig" loader fails.

Use QString to build signature filename.
2016-04-26 13:42:41 +02:00
nemerle
94e3016a5b Fix SetCurFunc_by_Name implementation 2016-04-26 13:36:57 +02:00
nemerle
145a50369e Fix: Jump labels were printed incorrectly. 2016-04-26 13:35:20 +02:00
Vladimir Kryvian
d77927c608 Added new line for "removeRegFromLong not supproted" message in icode.h. 2016-04-26 10:06:00 +02:00
Vladimir Kryvian
3bb72987a6 Fixed double import with correct one in makedsig. 2016-04-26 10:05:10 +02:00
nemerle
c782892db4 Prevent the use of msvc's min/max macros 2016-04-26 09:26:28 +02:00
nemerle
a944ea5da8 Implement some of the methods in DccImpl 2016-04-26 09:23:34 +02:00
nemerle
d1738ea630 New feature: option to decompile only a specific function.
Similar to boomerang's -E option:

```
dcc -E 0x1222 ./TARGET.EXE
```

Will only decompile function at given address.
This might help in isolating dcc crashes.
2016-04-26 00:46:56 +02:00
nemerle
5f39236ba2 Fix LOCAL_ID::newLongIdx 2016-04-26 00:27:49 +02:00
nemerle
ede09ddae3 Record native function address as part of the name.
Might help while debugging dcc's handling of large programs.
2016-04-25 16:08:51 +02:00
nemerle
34b1f4f4fe Fix: long processing regression introduced in
bb007ddefc0465d36d394fbc4dbe811a633fc72e

Invalidated instructions should still be processed in findBBExps
2016-04-25 16:02:58 +02:00
nemerle
d6249916e1 More logic operator replacements.
Use Qt string classes.
2016-04-25 15:51:58 +02:00
nemerle
9cd3226536 Normalize logic operation keywords and add use msvc fix
Logical or should be only 'or','and','not', and not error prone
'||','&&','!'
2016-04-25 11:39:07 +02:00
nemerle
3f217e83da Add header that will contain msvc fixes 2016-04-25 10:08:25 +02:00
nemerle
652cfb67c3 Add simple gitattributes 2016-04-25 10:03:55 +02:00
nemerle
c0e9ba2fb3 Add addOutEdgesForConditionalJump to header 2016-04-25 10:03:30 +02:00
nemerle
5963f5fd4d Thanks to @lab313ru : fix bad iterator usage
Trying to increment past the end in graph.cpp

Also removed a goto by extracting a common function.
2016-04-24 12:22:15 +02:00
nemerle
12ee08f87e Implement two new switch idioms closes #14 2016-04-23 20:05:11 +02:00
nemerle
5c85c92d1a Replace tabs with spaces 2016-04-22 11:45:23 +02:00
nemerle
b509d0fcf0 Extend disassembly failure reporting a bit. 2016-04-22 10:47:14 +02:00
nemerle
bb007ddefc Stop processing invalidated instructions in dataflow 2016-04-22 10:36:29 +02:00
nemerle
9129d48429 Comment out a debugging printf 2016-04-22 10:35:41 +02:00
nemerle
d105182051 Add missing \n to error printf 2016-04-22 10:35:14 +02:00
nemerle
157a968372 Assume TYPE_STR is returned in exactly the same way as TYPE_PTR is 2016-04-22 10:34:36 +02:00
Artur K
bae2a582f1 Merge pull request #11 from lab313ru/lab313ru-patch-1
Lab313ru patch 1
2016-04-22 09:19:02 +02:00
Lab 313
19191876e2 Update libdis.h
Fixed negative address getting.
2016-04-22 02:37:22 +03:00