nemerle
ae27258e3c
Move XCHG and DIV rewriters from Function class
...
Preliminary work for #19
2016-05-10 13:07:05 +02:00
nemerle
888de8d35e
More tabs replaced with spaces
2016-05-06 15:57:15 +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
3d5a907b30
Move Function closer to LLVM interface ( FunctionType etc. )
...
A few more places are using Commands.
2016-04-28 16:25:58 +02:00
Vladimir Kryvian
d77927c608
Added new line for "removeRegFromLong not supproted" message in icode.h.
2016-04-26 10:06:00 +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
5c85c92d1a
Replace tabs with spaces
2016-04-22 11:45:23 +02:00
nemerle
50950028e0
Pre-qt5
2014-03-07 19:42:27 +01:00
nemerle
1c5e1c2fce
replace boolT with plain old bool in a few places
2014-02-28 11:26:02 +01:00
Artur K
0209b7ceb2
Changes
2012-07-20 18:18:25 +02:00
Artur K
d5e1fc733f
Fixes to libdisasm, also use it a bit more
2012-07-19 19:37:30 +02:00
Artur K
c1eb8df114
Split COND_EXPR into Unary/Binary/AstIdent subclasses
2012-07-16 19:31:29 +02:00
Artur K
ca129c5177
Fix to idiom19 and fixFloatEmulation()
2012-07-15 20:17:16 +02:00
Artur K
c19231a1bd
extracted FunctionCfg as it's own class
2012-07-15 16:52:59 +02:00
Artur K
ba110a64cb
removed most of clang warnings / errors
2012-03-29 22:02:25 +02:00
Artur K
9cc5202ff7
Pre branch commit
2012-03-18 11:35:56 +01:00
Artur K
61392772e1
More work on LLOperand,
...
Adding accessors for src operand to LLIns
2012-03-17 23:09:35 +01:00
Artur K
26b9ab1e00
Added setters/creation methods to LLOperand
...
Moved PROG global into Project instance. Still need to refactor all
usages of prog.
Split fseek offset calculation in frontend.cpp to allow for easier
debugging.
Added alreadyDecoded method to CIcodeRec
LONGID_TYPE now has a method matching srcDstRegMatch icode's src a dst
regs
2012-03-17 22:57:54 +01:00
Artur K
dc8e7156a8
LLOperand no longer inherits from llvm::MCOperand, it contains one
...
instead.
Added BB accessors to ICODE and typedef'd BB to MachineBasicBlock
Removed an unused method in ICODE, and a parameter in isLong23
2012-03-17 22:38:54 +01:00
Artur K
b85106498e
More ranges
2012-03-15 23:22:02 +01:00
Artur K
4dd97b0709
Using boost now
2012-03-15 18:55:27 +01:00
Artur K
a740690e04
Replaced memory tags #defines with eAreaType enum
...
Added replaceExpr, which replaces expression, and deletes the old one.
Moved subReg* family to Machine_X86, also moved there a few float op
decoding parts.
A few more usages of cCode global replaced with ostreams
Refactored compoundCond().
2012-03-13 22:10:07 +01:00
Artur K
14b06c252e
Replaced all TRUE/FALSE macro usages with true/false booleans
2012-03-13 00:28:04 +01:00
Artur K
bc395da6ab
lots of changes, created Disassembler class, removed a few globals etc.
2012-03-11 02:48:19 +01:00
Artur K
3bcbb7a2cf
Removed lints
2012-03-10 22:46:15 +01:00
Artur K
eb6c1ac939
more fixes
2012-03-08 21:47:59 +01:00
Artur K
69d848ca78
Basic block is purer range now, it does not hold start and length members, it can be used in range based fors now
2012-03-08 00:20:13 +01:00
Artur K
fc0d35cf06
More eReg's and fixed writeBitVector for registers
2012-03-07 22:34:36 +01:00
Artur K
e0740f5ff7
Moved most of register definitions to use eReg enum
2012-03-07 21:52:46 +01:00
Artur K
ddd501de1f
COND_EXPR splitting preparations
2012-03-06 08:35:45 +01:00
Artur K
d7ddc86d76
Fixed synthetic instructions for DIV and XCHG to handle Byte wide operations, and also in case of XCHG memory, also fixed assembly generation for IN/OUT operations and all string instructions MOVS etc.
2012-03-04 00:30:53 +01:00
Artur K
32d1b71e79
LLInst opcode is private now, added accessors and moved a few functions into LLInst
2012-03-01 00:40:29 +01:00
Artur K
0ad46c3986
renamed flag methods in LLInst
2012-02-29 22:26:23 +01:00
Artur K
6b7d3f6209
Started separation between Low level and higher level instructions
2012-02-29 18:13:43 +01:00
Artur K
0eab9d1db5
Moved some more enums into Enums.h, removed multiple defs of LH macro, fixed missed initialization in STATE
2012-02-29 12:05:39 +01:00
Artur K
a0a6f7cc0e
lots of small things
2012-02-29 00:59:19 +01:00
Artur K
493225ad64
Replaced a few places which used ICODE * in favour of ICODE &, also split HLTYPE attriubtes into 3 classes with virtual methods
2012-02-28 21:17:50 +01:00
Artur K
e0503c71a3
moved struct DU_ICODE into ICODE, alse replaced newRegArg pointer params with iterators
2012-02-28 16:50:15 +01:00
Artur K
fbf8cc3a7a
ICODE::DU1 idx[][] is now an array of structures containing vectors<iICODE>, seems that while changing that some dataflow issues were fixed
2012-02-28 16:38:36 +01:00
Artur K
3cb26d99d2
CIcodeRec is no longer an Array, it's now a list, will help with iterator stability
2012-02-28 03:06:34 +01:00
Artur K
f131b7e619
missing files
2012-02-27 21:28:55 +01:00
Artur K
bf2d099cd9
Refactoring idioms into objects with match/action methods
2012-02-26 23:57:33 +01:00
Artur K
74c5966579
liveIn/Out def/use changed to use bitset<32>
2012-02-26 17:47:25 +01:00
Artur K
95ec23eceb
llvm -
2012-02-24 03:22:49 +01:00
Artur K
a51c5af87f
llvm+
2012-02-23 22:14:56 +01:00
Artur K
2b2eaeabe5
cruft removal wip
2012-02-22 21:48:58 +01:00
Artur K
8cb5449591
mooing on
2012-02-22 20:56:27 +01:00
Artur K
ed6f24a79a
moving on
2012-02-22 11:17:54 +01:00
Artur K
f009e33799
more iterators in other places
2011-12-14 00:17:10 +01:00