Enable double-SHA256-for-64-byte code on 32-bit x86 #13393

pull sipa wants to merge 1 commits into bitcoin:master from sipa:201806_dsha256_i386 changing 1 files +4 −2
  1. sipa commented at 6:33 PM on June 4, 2018: member

    The SSE4 and AVX2 double-SHA256-for-64-byte input code from #13191 compiles fine on 32-bit x86 systems, but the autodetection logic in sha256.cpp doesn't enable it. Fix this.

    Note that these instruction sets are only available on CPUs that support 64-bit mode as well, so it is only beneficial in the (perhaps unlikely) scenario where a 64-bit CPU is running a 32-bit Bitcoin Core binary.

  2. Enable double-SHA256-for-64-byte code on 32-bit x86 57ba401abc
  3. DrahtBot commented at 12:46 AM on June 5, 2018: contributor

    <!--e57a25ab6845829454e8d69fc972939a-->Note to reviewers: This pull request conflicts with the following ones:

    • #13386 (SHA256 implementations based on Intel SHA Extensions by sipa)

    If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

  4. DrahtBot cross-referenced this on Jun 5, 2018 from issue SHA256 implementations based on Intel SHA Extensions by sipa
  5. fanquake added the label Validation on Jun 5, 2018
  6. theuni commented at 9:06 PM on June 5, 2018: member

    utACK 57ba401abcfe564a2c4d259e0f758401ed74616d. See #13386 (comment) though.

  7. laanwj commented at 12:57 PM on June 12, 2018: member

    As we've discussed on IRC I'm skeptical about doing anything special for 32-bit x86 as architecture (besides basic support), but as the changes are minimal I don't have opposition to this either.

  8. sipa commented at 4:21 PM on June 12, 2018: member

    @laanwj Right; given that we're already compiling and linking the SSE4/AVX2 code for 32-bit but just not using them, this seems much preferable over the alternative (removing them from the build).

  9. laanwj commented at 4:51 PM on June 12, 2018: member

    @sipa agree; utACK 57ba401abcfe564a2c4d259e0f758401ed74616d

  10. laanwj merged this on Jun 12, 2018
  11. laanwj closed this on Jun 12, 2018

  12. laanwj referenced this in commit a607d23ae8 on Jun 12, 2018
  13. Bushstar cross-referenced this on Jun 13, 2018 from issue commits from bitcoin/master by Bushstar
  14. sipa cross-referenced this on Aug 8, 2018 from issue Assembly optimisations are compiled even with --disable-asm by luke-jr
  15. codablock referenced this in commit 84194ace4a on Oct 1, 2019
  16. codablock referenced this in commit 1df17c02e5 on Oct 1, 2019
  17. sickpig cross-referenced this on Oct 25, 2019 from issue [port] Specialized double-SHA256 with 64 byte inputs with SSE4.1 and AVX2 by sickpig
  18. barrystyle referenced this in commit 1eee3932e0 on Jan 22, 2020
  19. bitcoin locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-05-20 06:55 UTC