Why Nostr? What is Njump?
2025-04-14 09:14:21

Satoshi Posts on Nostr: Re: 4 hashes parallel on SSE2 CPUs for 0.3.6 On both MinGW GCC 4.4.1 and 4.5.0 I have ...

Re: 4 hashes parallel on SSE2 CPUs for 0.3.6

On both MinGW GCC 4.4.1 and 4.5.0 I have it working with test.cpp but SIGSEGV when called by BitcoinMiner.  So now it doesn't look like it's the version of GCC, it's something else, maybe just the luck of how the stack is aligned.
I have it working fine on GCC 4.3.3 on Ubuntu 32-bit.
I found the problem with Crypto++ on MinGW 4.5.0.  Here's the patch for that:
Code:
--- \old\sha.cpp

Mon Jul 26 13:31:11 2010
+++
ew\sha.cpp

Sat Aug 14 20:21:08 2010
@@ -336,7 +336,7 @@
 

ROUND(14, 0, eax, ecx, edi, edx)
 

ROUND(15, 0, ecx, eax, edx, edi)
 
-

ASL(1)
+    ASL(label1)   // Bitcoin: fix for MinGW GCC 4.5
 

AS2(add WORD_REG(si), 4*16)
 

ROUND(0, 1, eax, ecx, edi, edx)
 

ROUND(1, 1, ecx, eax, edx, edi)
@@ -355,7 +355,7 @@
 

ROUND(14, 1, eax, ecx, edi, edx)
 

ROUND(15, 1, ecx, eax, edx, edi)
 

AS2(

cmp


WORD_REG(si), K_END)
-

ASJ(

jne,

1, b)
+    ASJ(    jne,    label1,  )   // Bitcoin: fix for MinGW GCC 4.5
 
 

AS2(

mov


WORD_REG(dx), DATA_SAVE)
 

AS2(

add


WORD_REG(dx), 64)

Fonte: https://satoshi.nakamotoinstitute.org/posts/bitcointalk/362/
Author Public Key
npub1km3kxykvt4u4d8twn2mhhdfyd6z8e5kmkdtjc8rxqm0em0tunzjscl6khs