More dos/exe lzma size reduction.
This commit is contained in:
+1569
-1576
File diff suppressed because it is too large
Load Diff
@@ -404,7 +404,7 @@ def main(argv):
|
|||||||
assert len(r) == len(dpos)
|
assert len(r) == len(dpos)
|
||||||
pos = pos0
|
pos = pos0
|
||||||
for inst, args in r:
|
for inst, args in r:
|
||||||
print pos-pos0, inst, args
|
##print pos-pos0, inst, args
|
||||||
olines[pos][1] = inst
|
olines[pos][1] = inst
|
||||||
olines[pos][2] = args
|
olines[pos][2] = args
|
||||||
pos += 1
|
pos += 1
|
||||||
@@ -447,14 +447,18 @@ def main(argv):
|
|||||||
#
|
#
|
||||||
# write ofile
|
# write ofile
|
||||||
ofp = open(ofile, "wb")
|
ofp = open(ofile, "wb")
|
||||||
|
current_label = None
|
||||||
for label, inst, args, args_label in olines:
|
for label, inst, args, args_label in olines:
|
||||||
if labels.has_key(label):
|
if labels.has_key(label):
|
||||||
|
current_label = labels[label][2]
|
||||||
if opts.verbose:
|
if opts.verbose:
|
||||||
ofp.write("%s: /* %d */\n" % (labels[label][2], labels[label][3]))
|
ofp.write("%s: /* %d */\n" % (labels[label][2], labels[label][3]))
|
||||||
else:
|
else:
|
||||||
ofp.write("%s:\n" % (labels[label][2]))
|
ofp.write("%s:\n" % (labels[label][2]))
|
||||||
if inst == "*DEL*":
|
if inst == "*DEL*":
|
||||||
continue
|
continue
|
||||||
|
if 1 and current_label in [".Lf123", ".Lf124", ".Ls123", ".Ls124"]:
|
||||||
|
continue
|
||||||
if args_label:
|
if args_label:
|
||||||
if opts.verbose:
|
if opts.verbose:
|
||||||
args = "%s /* %d */" % (labels[args_label][2], labels[args_label][3])
|
args = "%s /* %d */" % (labels[args_label][2], labels[args_label][3])
|
||||||
|
|||||||
@@ -1468,26 +1468,7 @@
|
|||||||
M_PTC_JNE .Lf123
|
M_PTC_JNE .Lf123
|
||||||
jmp .Lf007
|
jmp .Lf007
|
||||||
.Lf123:
|
.Lf123:
|
||||||
mov ax,word ptr [bp-12]
|
|
||||||
mov dx,word ptr [bp-10]
|
|
||||||
M_PIA1
|
|
||||||
mov word ptr [bp-12],ax
|
|
||||||
mov word ptr [bp-10],dx
|
|
||||||
.Lf124:
|
.Lf124:
|
||||||
mov ax,word ptr [bp-12]
|
|
||||||
mov dx,word ptr [bp-10]
|
|
||||||
mov bx,word ptr [bp+10]
|
|
||||||
mov cx,word ptr [bp+12]
|
|
||||||
M_PTS
|
|
||||||
mov bx,word ptr [bp+18]
|
|
||||||
mov word ptr [bx],ax
|
|
||||||
mov word ptr [bx+2],dx
|
|
||||||
mov ax,word ptr [bp-20]
|
|
||||||
mov bx,word ptr [bp+28]
|
|
||||||
mov word ptr [bx],ax
|
|
||||||
mov ax,word ptr [bp-18]
|
|
||||||
mov word ptr [bx+2],ax
|
|
||||||
xor ax,ax
|
|
||||||
.Lf125:
|
.Lf125:
|
||||||
mov sp,bp
|
mov sp,bp
|
||||||
pop bp
|
pop bp
|
||||||
|
|||||||
@@ -1468,26 +1468,7 @@
|
|||||||
M_PTC_JNE .Ls123
|
M_PTC_JNE .Ls123
|
||||||
jmp .Ls007
|
jmp .Ls007
|
||||||
.Ls123:
|
.Ls123:
|
||||||
mov ax,word ptr [bp-12]
|
|
||||||
mov dx,word ptr [bp-10]
|
|
||||||
M_PIA1
|
|
||||||
mov word ptr [bp-12],ax
|
|
||||||
mov word ptr [bp-10],dx
|
|
||||||
.Ls124:
|
.Ls124:
|
||||||
mov ax,word ptr [bp-12]
|
|
||||||
mov dx,word ptr [bp-10]
|
|
||||||
mov bx,word ptr [bp+10]
|
|
||||||
mov cx,word ptr [bp+12]
|
|
||||||
M_PTS
|
|
||||||
mov bx,word ptr [bp+18]
|
|
||||||
mov word ptr [bx],ax
|
|
||||||
mov word ptr [bx+2],dx
|
|
||||||
mov ax,word ptr [bp-20]
|
|
||||||
mov bx,word ptr [bp+28]
|
|
||||||
mov word ptr [bx],ax
|
|
||||||
mov ax,word ptr [bp-18]
|
|
||||||
mov word ptr [bx+2],ax
|
|
||||||
xor ax,ax
|
|
||||||
.Ls125:
|
.Ls125:
|
||||||
mov sp,bp
|
mov sp,bp
|
||||||
pop bp
|
pop bp
|
||||||
|
|||||||
@@ -73,27 +73,27 @@ Idx Name Size VMA LMA File off Algn Flags
|
|||||||
68 NRV2EEX9 00000004 00000000 00000000 00000336 2**0 CONTENTS, READONLY
|
68 NRV2EEX9 00000004 00000000 00000000 00000336 2**0 CONTENTS, READONLY
|
||||||
69 LZMA_DEC00 00000032 00000000 00000000 0000033a 2**0 CONTENTS, RELOC, READONLY
|
69 LZMA_DEC00 00000032 00000000 00000000 0000033a 2**0 CONTENTS, RELOC, READONLY
|
||||||
70 ignore_reloc_overflow 00000008 00000000 00000000 0000036c 2**0 CONTENTS, RELOC, READONLY
|
70 ignore_reloc_overflow 00000008 00000000 00000000 0000036c 2**0 CONTENTS, RELOC, READONLY
|
||||||
71 LZMA_DEC10 000011ee 00000000 00000000 00000374 2**0 CONTENTS, READONLY
|
71 LZMA_DEC10 000011b8 00000000 00000000 00000374 2**0 CONTENTS, READONLY
|
||||||
72 LZMA_DEC20 00001286 00000000 00000000 00001562 2**0 CONTENTS, READONLY
|
72 LZMA_DEC20 0000124c 00000000 00000000 0000152c 2**0 CONTENTS, READONLY
|
||||||
73 LZMA_DEC30 00000001 00000000 00000000 000027e8 2**0 CONTENTS, READONLY
|
73 LZMA_DEC30 00000001 00000000 00000000 00002778 2**0 CONTENTS, READONLY
|
||||||
74 LZMA_DEC31 0000000c 00000000 00000000 000027e9 2**0 CONTENTS, RELOC, READONLY
|
74 LZMA_DEC31 0000000c 00000000 00000000 00002779 2**0 CONTENTS, RELOC, READONLY
|
||||||
75 LZMA_DEC32 00000005 00000000 00000000 000027f5 2**0 CONTENTS, RELOC, READONLY
|
75 LZMA_DEC32 00000005 00000000 00000000 00002785 2**0 CONTENTS, RELOC, READONLY
|
||||||
76 LZMA_DEC33 00000007 00000000 00000000 000027fa 2**0 CONTENTS, RELOC, READONLY
|
76 LZMA_DEC33 00000007 00000000 00000000 0000278a 2**0 CONTENTS, RELOC, READONLY
|
||||||
77 EXEMAIN5 00000001 00000000 00000000 00002801 2**0 CONTENTS, READONLY
|
77 EXEMAIN5 00000001 00000000 00000000 00002791 2**0 CONTENTS, READONLY
|
||||||
78 EXEADJUS 00000007 00000000 00000000 00002802 2**0 CONTENTS, READONLY
|
78 EXEADJUS 00000007 00000000 00000000 00002792 2**0 CONTENTS, READONLY
|
||||||
79 EXENOADJ 00000002 00000000 00000000 00002809 2**0 CONTENTS, READONLY
|
79 EXENOADJ 00000002 00000000 00000000 00002799 2**0 CONTENTS, READONLY
|
||||||
80 EXERELO1 0000001e 00000000 00000000 0000280b 2**0 CONTENTS, RELOC, READONLY
|
80 EXERELO1 0000001e 00000000 00000000 0000279b 2**0 CONTENTS, RELOC, READONLY
|
||||||
81 EXEREL9A 00000012 00000000 00000000 00002829 2**0 CONTENTS, RELOC, READONLY
|
81 EXEREL9A 00000012 00000000 00000000 000027b9 2**0 CONTENTS, RELOC, READONLY
|
||||||
82 EXERELO2 00000004 00000000 00000000 0000283b 2**0 CONTENTS, READONLY
|
82 EXERELO2 00000004 00000000 00000000 000027cb 2**0 CONTENTS, READONLY
|
||||||
83 EXEREBIG 00000002 00000000 00000000 0000283f 2**0 CONTENTS, RELOC, READONLY
|
83 EXEREBIG 00000002 00000000 00000000 000027cf 2**0 CONTENTS, RELOC, READONLY
|
||||||
84 EXERELO3 00000002 00000000 00000000 00002841 2**0 CONTENTS, RELOC, READONLY
|
84 EXERELO3 00000002 00000000 00000000 000027d1 2**0 CONTENTS, RELOC, READONLY
|
||||||
85 EXEMAIN8 00000003 00000000 00000000 00002843 2**0 CONTENTS, READONLY
|
85 EXEMAIN8 00000003 00000000 00000000 000027d3 2**0 CONTENTS, READONLY
|
||||||
86 DEVICEEND 00000013 00000000 00000000 00002846 2**0 CONTENTS, READONLY
|
86 DEVICEEND 00000013 00000000 00000000 000027d6 2**0 CONTENTS, READONLY
|
||||||
87 EXESTACK 00000006 00000000 00000000 00002859 2**0 CONTENTS, RELOC, READONLY
|
87 EXESTACK 00000006 00000000 00000000 000027e9 2**0 CONTENTS, RELOC, READONLY
|
||||||
88 EXESTASP 00000003 00000000 00000000 0000285f 2**0 CONTENTS, RELOC, READONLY
|
88 EXESTASP 00000003 00000000 00000000 000027ef 2**0 CONTENTS, RELOC, READONLY
|
||||||
89 EXEJUMPF 00000005 00000000 00000000 00002862 2**0 CONTENTS, RELOC, READONLY
|
89 EXEJUMPF 00000005 00000000 00000000 000027f2 2**0 CONTENTS, RELOC, READONLY
|
||||||
90 EXERCSPO 00000004 00000000 00000000 00002867 2**0 CONTENTS, RELOC, READONLY
|
90 EXERCSPO 00000004 00000000 00000000 000027f7 2**0 CONTENTS, RELOC, READONLY
|
||||||
91 EXERETIP 00000006 00000000 00000000 0000286b 2**0 CONTENTS, RELOC, READONLY
|
91 EXERETIP 00000006 00000000 00000000 000027fb 2**0 CONTENTS, RELOC, READONLY
|
||||||
SYMBOL TABLE:
|
SYMBOL TABLE:
|
||||||
00000000 l d DEVICEENTRY 00000000 DEVICEENTRY
|
00000000 l d DEVICEENTRY 00000000 DEVICEENTRY
|
||||||
00000000 l d COMPRESSED_LZMA_START 00000000 COMPRESSED_LZMA_START
|
00000000 l d COMPRESSED_LZMA_START 00000000 COMPRESSED_LZMA_START
|
||||||
|
|||||||
Reference in New Issue
Block a user