c++ - Manipulate .lib or .obj[optimisation again]
- veb (21/21) Feb 24 2010 Hello,
- Walter Bright (5/34) Feb 25 2010 patch16.asm is a file originally supplied by Intel to workaround the
- veb (5/9) Feb 26 2010 I don't use any Intel chip. (I don't have a coproccessor).
- Walter Bright (4/17) Mar 11 2010 One way is to rebuild sds.lib to without -fd. Another way is to look in
Hello, I'm looking for tips to optimize the size of one of my program. I see that the sds.lib is make by some part that we can delete or add or extract in a .obj file. But I would like to optimize the siez of my exe and often only a part of these parts are used. For example 'patch16' is composed by FDIV_R FDIV_M32 FDIV_M32I FDIV_M64 FDIVR_M16I FDIVR_M32I FDIVR_M64 FDIVR_M32 FDIV_M16I and when I delete patch16 from sds.lib, I have the error message explaining that FDIV_R is missing. So my programm use only FDIV_R. Patch16 take 2020 bytes in my exe. Thus I would like to delete in Patch16.obj what I don't need to reduce the size of my .exe. I tryed to dissassemble it with obj2asm, but I can't reassemble only what I want to reduce the size (more than 100 error messages because some things are not defined) How could I reduce the size of my exe, deleting or extracting what I want in Patch16.obj(for example)? Thanks for help.
Feb 24 2010
veb wrote:Hello, I'm looking for tips to optimize the size of one of my program. I see that the sds.lib is make by some part that we can delete or add or extract in a .obj file. But I would like to optimize the siez of my exe and often only a part of these parts are used. For example 'patch16' is composed by FDIV_R FDIV_M32 FDIV_M32I FDIV_M64 FDIVR_M16I FDIVR_M32I FDIVR_M64 FDIVR_M32 FDIV_M16I and when I delete patch16 from sds.lib, I have the error message explaining that FDIV_R is missing. So my programm use only FDIV_R. Patch16 take 2020 bytes in my exe. Thus I would like to delete in Patch16.obj what I don't need to reduce the size of my .exe. I tryed to dissassemble it with obj2asm, but I can't reassemble only what I want to reduce the size (more than 100 error messages because some things are not defined) How could I reduce the size of my exe, deleting or extracting what I want in Patch16.obj(for example)? Thanks for help.patch16.asm is a file originally supplied by Intel to workaround the pentium floating point bug. It probably isn't necessary at all unless you have such a chip. So I'd ensure you are not compiling anything with -fd http://www.digitalmars.com/ctg/sc.html#dashfd
Feb 25 2010
patch16.asm is a file originally supplied by Intel to workaround the pentium floating point bug. It probably isn't necessary at all unless you have such a chip. So I'd ensure you are not compiling anything with -fd http://www.digitalmars.com/ctg/sc.html#dashfdI don't use any Intel chip. (I don't have a coproccessor). I compile whith the arguments: -2 -Pz -Jm -R -Ab -gg -msd -o+space -Nc If my programm doesn't need patch16, how could I disable its utilisation? (when I delete it from sds.lib, It doesn't compile because it lack FDIV_R) Thanks for help (and sorry for my bad english)
Feb 26 2010
veb wrote:One way is to rebuild sds.lib to without -fd. Another way is to look in sds.lib and remove the module that references FDIV_R. A third way is to provide your own FDIV_R function.patch16.asm is a file originally supplied by Intel to workaround the pentium floating point bug. It probably isn't necessary at all unless you have such a chip. So I'd ensure you are not compiling anything with -fd http://www.digitalmars.com/ctg/sc.html#dashfdI don't use any Intel chip. (I don't have a coproccessor). I compile whith the arguments: -2 -Pz -Jm -R -Ab -gg -msd -o+space -Nc If my programm doesn't need patch16, how could I disable its utilisation? (when I delete it from sds.lib, It doesn't compile because it lack FDIV_R) Thanks for help (and sorry for my bad english)
Mar 11 2010