Great to see another (stable) release. I wanted to ask a few things: Is there any intention to include the following two patches from Debian - one and two. Would you be able to offically support UASM in the Linux Makefile? UASM is a free MASM-compatible assembler based on JWasm - however unlike JWasm it supports AES instructions. The only difference is you need to turn off the automatic stack optimisations by prefixing all ASM files with: OPTION FRAMEPRESERVEFLAGS:ON OPTION PROLOGUE:NONE OPTION EPILOGUE:NONE...
Take a look at this: https://github.com/justdan96/7zip_static/releases/tag/21.03beta
It definitely won't be fast - but it would at least be functional. Perhaps as a compromise 7-Zip could check if the RAM and the RAM + Swap is enough for the operation. + If the RAM alone is enough, the operation passes through. + If the RAM + Swap is enough display a warning that the operation would be slow and suggest to decrease dictionary size, but allow the user continue if they choose. + If the RAM + Swap is not enough display the error, as it does now.
It definitely won't be fast - but it would at least be functional. Perhaps as a compromise 7-Zip could check if the RAM and the RAM + Swap is enough for the operation. If the RAM alone is enough, the operation passes through. If the RAM + Swap is enough display a warning that the operation would be slow and suggest to decrease dictionary size, but allow the user continue if they choose. * If the RAM + Swap is not enough display the error, as it does now.
Does the error take into account swap? If the user has 8GB RAM but 12GB swap will 7-Zip know it can use 20GB of memory?
It might depend on perspective - UASM implemented smart stack alignment and it is enabled by default. I think that is reasonable but in this case we don't want it, perhaps it trips up as we aren't creating an ASM program but rather using a snippet? I couldn't find a way to disable those options on the command line so for now we have to prepend all the ASM files with those options. Either way ASMC has taken their Linux releases offline so it looks like we can't rely on ASMC and we have to ensure UASM...
UASM developers have said there is an option to disable stack alignment, based on this bug report: https://github.com/Terraspace/UASM/issues/118 I also checked the documentation here: http://www.terraspace.co.uk/uasm251_ext.pdf I used to following to prefix the ASM file with the options we want: sed -i -e '1i\OPTION FRAMEPRESERVEFLAGS:ON\nOPTION PROLOGUE:NONE\nOPTION EPILOGUE:NONE' Asm/x86/LzFindOpt.asm When the Asm file is compiled it then produces a file exactly the same as the ASMC output. Edit:...
UASM developers have said there is an option to disable stack alignment, based on this bug report: https://github.com/Terraspace/UASM/issues/118 I also checked the documentation here: http://www.terraspace.co.uk/uasm251_ext.pdf I used to following to prefix the ASM file with the options we want: sed -i -e '1i\OPTION FRAMEPRESERVEFLAGS:ON\nOPTION PROLOGUE:NONE\nOPTION EPILOGUE:NONE' Asm/x86/LzFindOpt.asm When the Asm file is compiled it then produces a file exactly the same as the ASMC output.