ia32rtools.git
9 years agotranslate: fix several rep cmps/scas bugs
notaz [Tue, 28 Apr 2015 23:30:16 +0000 (02:30 +0300)]
translate: fix several rep cmps/scas bugs

9 years agotranslate: handle float arg frame
notaz [Tue, 28 Apr 2015 21:20:46 +0000 (00:20 +0300)]
translate: handle float arg frame

9 years agotranslate: fcom and more
notaz [Mon, 27 Apr 2015 00:20:28 +0000 (03:20 +0300)]
translate: fcom and more

9 years agotranslate: bswap, allsh* and some tweaks
notaz [Sat, 25 Apr 2015 23:41:48 +0000 (02:41 +0300)]
translate: bswap, allsh* and some tweaks

9 years agotranslate: float: stack mode and some more ops
notaz [Sat, 25 Apr 2015 20:40:02 +0000 (23:40 +0300)]
translate: float: stack mode and some more ops

9 years agotranslate: more float ops
notaz [Fri, 24 Apr 2015 23:48:34 +0000 (02:48 +0300)]
translate: more float ops

9 years agofix tests
notaz [Fri, 24 Apr 2015 22:55:15 +0000 (01:55 +0300)]
fix tests

reg autoclear was dropped as it could allow some serious problems
to be missed

9 years agocmpmrg_text: allow mixed align insns
notaz [Fri, 24 Apr 2015 22:47:19 +0000 (01:47 +0300)]
cmpmrg_text: allow mixed align insns

9 years agoplugin: various tweaks
notaz [Fri, 24 Apr 2015 20:23:34 +0000 (23:23 +0300)]
plugin: various tweaks

more stuff to make masm frienlier aoutput:
- detect ida's overalignment better
- detect names that only differ by case
- detect more labels referenced by data

9 years agoplugin: add hints on 'jmp $5' for translate
notaz [Sun, 19 Apr 2015 20:45:59 +0000 (23:45 +0300)]
plugin: add hints on 'jmp $5' for translate

9 years agotranslate: func ref checking from .data
notaz [Sat, 18 Apr 2015 16:28:52 +0000 (19:28 +0300)]
translate: func ref checking from .data

enforcing consistent calling convention

9 years agotranslate: add an attr for regs that fail to be traced
notaz [Fri, 17 Apr 2015 23:46:14 +0000 (02:46 +0300)]
translate: add an attr for regs that fail to be traced

don't guess it, this may miss uninitialized reg args

9 years agotranslate: fixes for call reg tracking
notaz [Mon, 13 Apr 2015 23:47:22 +0000 (02:47 +0300)]
translate: fixes for call reg tracking

9 years agotranslate: add custom stack-clear attribute
notaz [Mon, 13 Apr 2015 22:24:02 +0000 (01:24 +0300)]
translate: add custom stack-clear attribute

9 years agominor fixes
notaz [Sun, 12 Apr 2015 21:30:06 +0000 (00:30 +0300)]
minor fixes

9 years agomove notes to better place, update them
notaz [Tue, 7 Apr 2015 00:20:34 +0000 (03:20 +0300)]
move notes to better place, update them

9 years agotranslate: check xrefs before adding to header
notaz [Tue, 7 Apr 2015 00:19:20 +0000 (03:19 +0300)]
translate: check xrefs before adding to header

otherwise lots of conflicting symbols on project merge

9 years agoadjust for newer mingw
notaz [Mon, 6 Apr 2015 19:28:48 +0000 (22:28 +0300)]
adjust for newer mingw

9 years agotranslate: initial struct parsing for member calls
notaz [Sun, 5 Apr 2015 23:55:58 +0000 (02:55 +0300)]
translate: initial struct parsing for member calls

9 years agotranslate: initial float support
notaz [Sat, 4 Apr 2015 17:58:31 +0000 (20:58 +0300)]
translate: initial float support

9 years agotranslate: improve cast simplification
notaz [Sat, 4 Apr 2015 16:14:13 +0000 (19:14 +0300)]
translate: improve cast simplification

9 years agotranslate: some bugfixes
notaz [Wed, 1 Apr 2015 20:53:26 +0000 (23:53 +0300)]
translate: some bugfixes

9 years agomore APIs
notaz [Mon, 30 Mar 2015 01:23:59 +0000 (04:23 +0300)]
more APIs

9 years agotranslate: random fixes, 16bit div
notaz [Mon, 30 Mar 2015 01:23:27 +0000 (04:23 +0300)]
translate: random fixes, 16bit div

9 years agostart some tests
notaz [Sat, 28 Mar 2015 21:37:37 +0000 (23:37 +0200)]
start some tests

9 years agotranslate: rework register tracking
notaz [Sat, 28 Mar 2015 21:18:04 +0000 (23:18 +0200)]
translate: rework register tracking

9 years agotranslate: push/pop corner cases
notaz [Thu, 26 Mar 2015 01:05:40 +0000 (03:05 +0200)]
translate: push/pop corner cases

RSAVE looks broken, but I don't need it right now

9 years agotranslate: deal with and 0 / or ~0
notaz [Thu, 26 Mar 2015 00:21:52 +0000 (02:21 +0200)]
translate: deal with and 0 / or ~0

9 years agotranslate: few more ops and corner cases
notaz [Sun, 22 Mar 2015 21:11:42 +0000 (23:11 +0200)]
translate: few more ops and corner cases

9 years agotranslate: yet more work on sp tracking
notaz [Sun, 22 Mar 2015 21:00:18 +0000 (23:00 +0200)]
translate: yet more work on sp tracking

9 years agostdc: some stuff for d1 (and some extra)
notaz [Sat, 21 Mar 2015 00:51:13 +0000 (02:51 +0200)]
stdc: some stuff for d1 (and some extra)

9 years agorun_imp: allow to specify mingw
notaz [Fri, 20 Mar 2015 20:41:03 +0000 (22:41 +0200)]
run_imp: allow to specify mingw

9 years agoplugin: new simple findptr plugin
notaz [Fri, 20 Mar 2015 01:56:31 +0000 (03:56 +0200)]
plugin: new simple findptr plugin

9 years agotranslate: stop data parse on imports
notaz [Thu, 19 Mar 2015 21:00:37 +0000 (23:00 +0200)]
translate: stop data parse on imports

9 years agomore stuff for d1ui
notaz [Thu, 19 Mar 2015 18:24:14 +0000 (20:24 +0200)]
more stuff for d1ui

9 years agoprotoparse: improve ret guessing
notaz [Thu, 19 Mar 2015 18:21:58 +0000 (20:21 +0200)]
protoparse: improve ret guessing

9 years agotranslate: improve epilogue search, clear with and op
notaz [Thu, 19 Mar 2015 01:41:02 +0000 (03:41 +0200)]
translate: improve epilogue search, clear with and op

9 years agotranslate: eliminate some useless func ptr reads
notaz [Wed, 18 Mar 2015 02:14:56 +0000 (04:14 +0200)]
translate: eliminate some useless func ptr reads

9 years agotranslate: handle more push/pop pair cases
notaz [Sun, 15 Mar 2015 21:34:10 +0000 (23:34 +0200)]
translate: handle more push/pop pair cases

9 years agostdc: more funcs for d1ui
notaz [Sun, 15 Mar 2015 18:47:37 +0000 (20:47 +0200)]
stdc: more funcs for d1ui

9 years agotranslate: simplify seed passthrough
notaz [Sun, 15 Mar 2015 18:43:38 +0000 (20:43 +0200)]
translate: simplify seed passthrough

9 years agotranslate: don't warn about skipped ops
notaz [Sun, 15 Mar 2015 18:04:57 +0000 (20:04 +0200)]
translate: don't warn about skipped ops

9 years agotranslate: output complex headers from seed
notaz [Sun, 15 Mar 2015 00:24:28 +0000 (02:24 +0200)]
translate: output complex headers from seed

9 years agotranslate: improve esp adjust yet more
notaz [Sun, 15 Mar 2015 00:22:57 +0000 (02:22 +0200)]
translate: improve esp adjust yet more

9 years agotranslate: add some help text
notaz [Sat, 14 Mar 2015 21:47:25 +0000 (23:47 +0200)]
translate: add some help text

9 years agotranslate: many improvements for header gen
notaz [Sat, 14 Mar 2015 21:25:10 +0000 (23:25 +0200)]
translate: many improvements for header gen

9 years agotranslate: use separate removed and done flags
notaz [Mon, 9 Mar 2015 01:15:13 +0000 (03:15 +0200)]
translate: use separate removed and done flags

9 years agotranslate: hdrgen: detect strings, skip std funcs
notaz [Sun, 8 Mar 2015 21:03:11 +0000 (23:03 +0200)]
translate: hdrgen: detect strings, skip std funcs

9 years agotranslate: improve arg collect
notaz [Sat, 7 Mar 2015 22:01:13 +0000 (00:01 +0200)]
translate: improve arg collect

9 years agotranslate: basic variable gen for hdr gen
notaz [Tue, 20 Jan 2015 01:17:11 +0000 (03:17 +0200)]
translate: basic variable gen for hdr gen

9 years agoplugin: detect one more align type
notaz [Mon, 19 Jan 2015 01:45:56 +0000 (03:45 +0200)]
plugin: detect one more align type

9 years agotranslate: further work on header gen
notaz [Mon, 19 Jan 2015 01:45:04 +0000 (03:45 +0200)]
translate: further work on header gen

9 years agotranslate: allow to skip unhandled insns
notaz [Mon, 19 Jan 2015 01:24:43 +0000 (03:24 +0200)]
translate: allow to skip unhandled insns

useful when skipping functions

10 years agotranslate: remove label length limit
notaz [Sat, 31 May 2014 17:48:48 +0000 (20:48 +0300)]
translate: remove label length limit

10 years agoupdate stdc.list for d1ui
notaz [Sun, 25 May 2014 17:35:13 +0000 (20:35 +0300)]
update stdc.list for d1ui

10 years agoplugin: try harder to avoid masm name conflicts
notaz [Sat, 24 May 2014 21:40:56 +0000 (00:40 +0300)]
plugin: try harder to avoid masm name conflicts

10 years agotranslate: handle arg push for multiple funcs better
notaz [Sat, 24 May 2014 17:24:55 +0000 (20:24 +0300)]
translate: handle arg push for multiple funcs better

10 years agofix comment check
notaz [Tue, 20 May 2014 22:46:55 +0000 (01:46 +0300)]
fix comment check

10 years agocvt_data: header output support
notaz [Tue, 25 Mar 2014 01:42:33 +0000 (03:42 +0200)]
cvt_data: header output support

10 years agoplugin: don't overapply near ptr
notaz [Tue, 25 Mar 2014 01:41:13 +0000 (03:41 +0200)]
plugin: don't overapply near ptr

10 years agotranslate: initial header gen code
notaz [Mon, 24 Mar 2014 00:15:25 +0000 (02:15 +0200)]
translate: initial header gen code

10 years agotranslate: rudimentary mmx supprt, more flags for dec
notaz [Sun, 16 Mar 2014 00:16:53 +0000 (02:16 +0200)]
translate: rudimentary mmx supprt, more flags for dec

10 years agotranslate: more sub flags and shrd
notaz [Fri, 14 Mar 2014 02:19:57 +0000 (04:19 +0200)]
translate: more sub flags and shrd

10 years agoallow float type
notaz [Fri, 14 Mar 2014 00:22:03 +0000 (02:22 +0200)]
allow float type

10 years agotranslate: handle more cases with args
notaz [Thu, 13 Mar 2014 01:28:51 +0000 (03:28 +0200)]
translate: handle more cases with args

also do all segment prefixes

10 years agotranslate: handle another stackframe setup way
notaz [Tue, 11 Mar 2014 22:35:07 +0000 (00:35 +0200)]
translate: handle another stackframe setup way

10 years agosome more stdc syms
notaz [Tue, 11 Mar 2014 17:39:18 +0000 (19:39 +0200)]
some more stdc syms

10 years agohandle some masm vs some_other_msvc issues
notaz [Tue, 11 Mar 2014 02:53:41 +0000 (04:53 +0200)]
handle some masm vs some_other_msvc issues

10 years agoplugin: detect lea offsets
notaz [Sun, 9 Mar 2014 23:55:46 +0000 (01:55 +0200)]
plugin: detect lea offsets

10 years agotranslate: detect more invalid writes to args
notaz [Sun, 9 Mar 2014 19:19:31 +0000 (21:19 +0200)]
translate: detect more invalid writes to args

10 years agotranslate: improve vararg handling a bit more
notaz [Sun, 9 Mar 2014 01:19:24 +0000 (03:19 +0200)]
translate: improve vararg handling a bit more

10 years agosome func ptr arg type checking
notaz [Sat, 8 Mar 2014 00:52:39 +0000 (02:52 +0200)]
some func ptr arg type checking

10 years agotranslate: some vararg improvements
notaz [Fri, 7 Mar 2014 02:11:31 +0000 (04:11 +0200)]
translate: some vararg improvements

10 years agoadd a license
notaz [Wed, 5 Mar 2014 01:36:47 +0000 (03:36 +0200)]
add a license

10 years agominor makefile update
notaz [Wed, 5 Mar 2014 00:39:19 +0000 (02:39 +0200)]
minor makefile update

10 years agotranslate: extra check
notaz [Sat, 1 Mar 2014 19:52:26 +0000 (21:52 +0200)]
translate: extra check

10 years agomore APIs
notaz [Sat, 1 Mar 2014 19:52:01 +0000 (21:52 +0200)]
more APIs

10 years agomove endthreadex to stdc.list
notaz [Fri, 28 Feb 2014 23:54:30 +0000 (01:54 +0200)]
move endthreadex to stdc.list

10 years agorun_imp.sh: use explicit args
notaz [Fri, 28 Feb 2014 22:45:31 +0000 (00:45 +0200)]
run_imp.sh: use explicit args

10 years agotranslate: fix non-32bit mul and add with carry
notaz [Wed, 26 Feb 2014 01:45:08 +0000 (03:45 +0200)]
translate: fix non-32bit mul and add with carry

10 years agotranslate: suppress a warning
notaz [Tue, 25 Feb 2014 23:22:08 +0000 (01:22 +0200)]
translate: suppress a warning

10 years agotranslate: check offset assigns if func is used
notaz [Mon, 24 Feb 2014 03:01:43 +0000 (05:01 +0200)]
translate: check offset assigns if func is used

10 years agocvt_data: use .hword (consistent 2 bytes), offsets from ;.org
notaz [Sun, 23 Feb 2014 00:18:00 +0000 (02:18 +0200)]
cvt_data: use .hword (consistent 2 bytes), offsets from ;.org

10 years agotranslate: start outputing after analysis, use define for userstack
notaz [Sat, 22 Feb 2014 18:55:15 +0000 (20:55 +0200)]
translate: start outputing after analysis, use define for userstack

10 years agoresolve some functions
notaz [Sat, 22 Feb 2014 02:26:35 +0000 (04:26 +0200)]
resolve some functions

10 years agotranslate: log unresolved calls, change error logging
notaz [Fri, 21 Feb 2014 22:32:08 +0000 (00:32 +0200)]
translate: log unresolved calls, change error logging

10 years agosome more arm winelib stuff
notaz [Fri, 21 Feb 2014 22:19:50 +0000 (00:19 +0200)]
some more arm winelib stuff

10 years agopartial ARM support
notaz [Fri, 21 Feb 2014 02:12:35 +0000 (04:12 +0200)]
partial ARM support

10 years agofix stupid lods/cmps/scas bugs
notaz [Tue, 18 Feb 2014 01:44:08 +0000 (03:44 +0200)]
fix stupid lods/cmps/scas bugs

what a time waste, DAMN IT!!!1111

10 years agotranslate: some casting improvements
notaz [Mon, 17 Feb 2014 23:09:34 +0000 (01:09 +0200)]
translate: some casting improvements

10 years agocvt_data: add a string filter, don't make all syms global
notaz [Mon, 17 Feb 2014 23:08:17 +0000 (01:08 +0200)]
cvt_data: add a string filter, don't make all syms global

10 years agocvt_data: allow to skip validation
notaz [Mon, 17 Feb 2014 02:50:44 +0000 (04:50 +0200)]
cvt_data: allow to skip validation

10 years agotranslate: change how things end
notaz [Mon, 17 Feb 2014 02:50:09 +0000 (04:50 +0200)]
translate: change how things end

10 years agotranslate: rework cc, jcc to func, lods
notaz [Mon, 17 Feb 2014 00:50:57 +0000 (02:50 +0200)]
translate: rework cc, jcc to func, lods

10 years agoreg return, __userstack, repe fix, more..
notaz [Sun, 16 Feb 2014 02:18:27 +0000 (04:18 +0200)]
reg return, __userstack, repe fix, more..

10 years agohlist: handle moar APIs
notaz [Sat, 15 Feb 2014 15:44:39 +0000 (17:44 +0200)]
hlist: handle moar APIs

10 years agotranslate: handle various cases from smacker
notaz [Sat, 15 Feb 2014 15:43:54 +0000 (17:43 +0200)]
translate: handle various cases from smacker

10 years agohandle decorated symbols better
notaz [Sat, 15 Feb 2014 15:40:08 +0000 (17:40 +0200)]
handle decorated symbols better

10 years agocmpmrg_text: allow to skip actual comparison
notaz [Fri, 14 Feb 2014 01:48:09 +0000 (03:48 +0200)]
cmpmrg_text: allow to skip actual comparison

not always needed

10 years agoplugin: rm all assume statements
notaz [Fri, 14 Feb 2014 01:47:14 +0000 (03:47 +0200)]
plugin: rm all assume statements

there can be multiple sections..