bitcoin/ci/test
Andrew Chow 52ddbd52f9
Merge bitcoin/bitcoin#26345: refactor: modernize the implementation of uint256.*
935acdcc79 refactor: modernize the implementation of uint256.* (pasta)

Pull request description:

  - Constructors of uint256 to utilize Span instead of requiring a std::vector
  - converts m_data into a std::array
  - Prefers using `WIDTH` instead of `sizeof(m_data)`
  - make all the things constexpr
  - replace C style functions with c++ equivalents
      - memset -> std::fill
          This may also be replaced by std::memset, but I think that std::fill is more idiomatic of modern c++ and readable.
      - memcpy -> std::copy
          Note: In practice, implementations of std::copy avoid multiple assignments and use bulk copy functions such as std::memmove if the value type is TriviallyCopyable and the iterator types satisfy LegacyContiguousIterator. (https://en.cppreference.com/w/cpp/algorithm/copy)
          This could also likely be replaced by std::memcpy, but as said above, I believe the using std::copy is the more c++ way to do anything and is almost guaranteed to compile to the same asm
      - memcmp -> std::memcmp

ACKs for top commit:
  achow101:
    ACK 935acdcc79
  hebasto:
    Approach ACK 935acdcc79.
  aureleoules:
    reACK 935acdcc79
  john-moffett:
    ACK 935acdcc79
  stickies-v:
    Approach ACK 935acdcc7

Tree-SHA512: 4f1ba54ff2198eea0e505d41e73d552c84c60f6878d5c85a94a8ab57f39afc94ef8d79258e7afd01fa84ec2a99f4404bb877eecd671f65e1ee9273f3129fc650
2023-02-06 13:56:51 -05:00
..
00_setup_env.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_android.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_arm.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_i686_centos.sh ci: avoid using -Werror for older compilers 2023-02-01 15:22:24 +00:00
00_setup_env_i686_multiprocess.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_mac.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_mac_native_arm64.sh scripted-diff: Bump copyright headers 2022-12-24 23:49:50 +00:00
00_setup_env_native_asan.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_native_fuzz.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_native_fuzz_with_msan.sh Merge bitcoin/bitcoin#23619: build: Propagate user-defined flags to host packages 2023-01-30 14:32:32 +00:00
00_setup_env_native_fuzz_with_valgrind.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_native_msan.sh Merge bitcoin/bitcoin#23619: build: Propagate user-defined flags to host packages 2023-01-30 14:32:32 +00:00
00_setup_env_native_nowallet_libbitcoinkernel.sh ci: avoid using -Werror for older compilers 2023-02-01 15:22:24 +00:00
00_setup_env_native_qt5.sh ci: avoid using -Werror for older compilers 2023-02-01 15:22:24 +00:00
00_setup_env_native_tidy.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_native_tsan.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_native_valgrind.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_s390x.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
00_setup_env_win64.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
01_base_install.sh ci: Cache package manager install step 2023-01-28 17:59:07 +01:00
04_install.sh ci: Cache package manager install step 2023-01-28 17:59:07 +01:00
05_before_script.sh scripted-diff: ci: Rework docker naming 2023-01-11 10:49:18 +01:00
06_script_a.sh scripted-diff: Bump copyright headers 2022-12-24 23:49:50 +00:00
06_script_b.sh Merge bitcoin/bitcoin#26345: refactor: modernize the implementation of uint256.* 2023-02-06 13:56:51 -05:00
wrap-qemu.sh scripted-diff: Bump copyright headers 2022-12-24 23:49:50 +00:00
wrap-valgrind.sh scripted-diff: Bump copyright headers 2021-12-30 19:36:57 +02:00
wrap-wine.sh scripted-diff: Bump copyright headers 2022-12-24 23:49:50 +00:00
wrapped-cl.bat ci: Integrate ccache into MSVC build 2022-03-12 03:20:33 +01:00