Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.8.2 #873

Merged
merged 311 commits into from
Jul 21, 2023
Merged

v0.8.2 #873

merged 311 commits into from
Jul 21, 2023
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Dec 23, 2021

  1. Introduce XXH_SIZE_OPT and XXH_NO_STREAM

     - XXH_SIZE_OPT is a value from 0-2 which indicates how much xxHash
       should care about code size, default 1 for -Os/-Oz, default 0
       otherwise
     - XXH_NO_STREAM disables the streaming API.
     - These two interact: if XXH_SIZE_OPT == 2 and XXH_NO_STREAM is not
     defined, XXH32 and XXH64 use the streaming API for single shot
        - TODO: apply this to XXH3 as well
    easyaspi314 committed Dec 23, 2021
    Configuration menu
    Copy the full SHA
    6f97097 View commit details
    Browse the repository at this point in the history

Commits on Dec 26, 2021

  1. do no longer depend on <assert.h> for XXH_STATIC_ASSERT

    since some versions are buggy.
    
    Use `_Static_assert` instead, which is part of the C11 language.
    Cyan4973 committed Dec 26, 2021
    Configuration menu
    Copy the full SHA
    6189ecd View commit details
    Browse the repository at this point in the history

Commits on Dec 29, 2021

  1. Merge pull request #670 from Cyan4973/fix664

    do no longer depend on `<assert.h>` for XXH_STATIC_ASSERT
    Cyan4973 authored Dec 29, 2021
    Configuration menu
    Copy the full SHA
    d878e1d View commit details
    Browse the repository at this point in the history
  2. [sizeopt] Reroll midrange on size opt, disable prefetch

    It seems that using the streaming API is not beneficial on GCC so it
    isn't worth the complexity.
    easyaspi314 committed Dec 29, 2021
    Configuration menu
    Copy the full SHA
    fdf28f6 View commit details
    Browse the repository at this point in the history

Commits on Dec 30, 2021

  1. Properly fix altivec namespace collisions

    Uses `#pragma push_macro`/`#pragma pop_macro` instead of assuming that
    `__APPLE_ALTIVEC__` can be defined safely.
    
    Safer and less hacky fix for #668.
    easyaspi314 committed Dec 30, 2021
    Configuration menu
    Copy the full SHA
    ec4030d View commit details
    Browse the repository at this point in the history
  2. Minor typo fix

    easyaspi314 committed Dec 30, 2021
    Configuration menu
    Copy the full SHA
    4690bbe View commit details
    Browse the repository at this point in the history

Commits on Jan 6, 2022

  1. Merge pull request #672 from easyaspi314/vsx_hotfix

    Properly fix altivec namespace collisions
    Cyan4973 authored Jan 6, 2022
    Configuration menu
    Copy the full SHA
    83b2235 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #667 from easyaspi314/sizeopt

    Introduce XXH_SIZE_OPT and XXH_NO_STREAM
    Cyan4973 authored Jan 6, 2022
    Configuration menu
    Copy the full SHA
    b1a61df View commit details
    Browse the repository at this point in the history

Commits on Jan 18, 2022

  1. Configuration menu
    Copy the full SHA
    ab6699a View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2022

  1. Merge pull request #676 from mterron/patch-1

    Remove duplicated definition of XXH3_128bits
    Cyan4973 authored Jan 19, 2022
    Configuration menu
    Copy the full SHA
    d8aff14 View commit details
    Browse the repository at this point in the history

Commits on Mar 9, 2022

  1. 3 Configuration menu
    Copy the full SHA
    81972bf View commit details
    Browse the repository at this point in the history

Commits on Mar 10, 2022

  1. Configuration menu
    Copy the full SHA
    7b3bb44 View commit details
    Browse the repository at this point in the history
  2. Removed windows-2016 from ci.yml

    Fix #689
    t-mat committed Mar 10, 2022
    Configuration menu
    Copy the full SHA
    a0f750f View commit details
    Browse the repository at this point in the history
  3. Add missing apt-get update

    t-mat committed Mar 10, 2022
    Configuration menu
    Copy the full SHA
    0c0ea60 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #690 from t-mat/fix-issue-689

    Removed windows-2016 from ci.yml
    Cyan4973 authored Mar 10, 2022
    Configuration menu
    Copy the full SHA
    2ae055b View commit details
    Browse the repository at this point in the history
  5. Merge pull request #688 from tipi-deps/dev

    tipi.build instructions
    Cyan4973 authored Mar 10, 2022
    Configuration menu
    Copy the full SHA
    4c223a5 View commit details
    Browse the repository at this point in the history
  6. minor build doc modification

    Cyan4973 committed Mar 10, 2022
    Configuration menu
    Copy the full SHA
    aa7ac8b View commit details
    Browse the repository at this point in the history

Commits on Mar 29, 2022

  1. Build fix for Haiku

    Begasus committed Mar 29, 2022
    Configuration menu
    Copy the full SHA
    8b86185 View commit details
    Browse the repository at this point in the history

Commits on Apr 4, 2022

  1. Introduce md5sum style filename escape convention

    For details, see issue #695.
    
    If filename contains special character (\n, 0x0a, LF),
    
    - Put '\' (0x5c) at the beginning of the line.
    - Escape special character by '\'.
    t-mat committed Apr 4, 2022
    Configuration menu
    Copy the full SHA
    bd4ded9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f1f2ff9 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #698 from t-mat/fix-issue-695

    Fix issue #695
    Cyan4973 authored Apr 4, 2022
    Configuration menu
    Copy the full SHA
    b51ffce View commit details
    Browse the repository at this point in the history

Commits on Apr 6, 2022

  1. Merge pull request #696 from Begasus/haiku

    Build fix for Haiku
    Cyan4973 authored Apr 6, 2022
    Configuration menu
    Copy the full SHA
    9244d6e View commit details
    Browse the repository at this point in the history
  2. minor man page nits

    Cyan4973 committed Apr 6, 2022
    Configuration menu
    Copy the full SHA
    bcc4c6a View commit details
    Browse the repository at this point in the history

Commits on May 4, 2022

  1. Configuration menu
    Copy the full SHA
    4866da2 View commit details
    Browse the repository at this point in the history
  2. Use inline ASM on IBM XL

    MaxiBoether committed May 4, 2022
    Configuration menu
    Copy the full SHA
    93dcc6f View commit details
    Browse the repository at this point in the history

Commits on May 6, 2022

  1. Merge pull request #708 from MaxiBoether/dev

    Use inline assembler for Power/IBM XL Compiler
    Cyan4973 authored May 6, 2022
    Configuration menu
    Copy the full SHA
    cc8f0d0 View commit details
    Browse the repository at this point in the history
  2. test filename-escape

    This is PR #699 from @t-mat,
    which was blocked by a file permission issue.
    Retrying it here.
    Cyan4973 committed May 6, 2022
    Configuration menu
    Copy the full SHA
    d278c2e View commit details
    Browse the repository at this point in the history
  3. Merge pull request #710 from Cyan4973/test_escape

    test filename-escape
    Cyan4973 authored May 6, 2022
    Configuration menu
    Copy the full SHA
    35ff826 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4692d75 View commit details
    Browse the repository at this point in the history

Commits on May 7, 2022

  1. Configuration menu
    Copy the full SHA
    0504556 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    bfd20ae View commit details
    Browse the repository at this point in the history
  3. Merge pull request #711 from Cyan4973/fix682

    avoid add_compile_definitions for cmake < v3.12
    Cyan4973 authored May 7, 2022
    Configuration menu
    Copy the full SHA
    f852875 View commit details
    Browse the repository at this point in the history

Commits on May 24, 2022

  1. added XXH_RESTRICT to XXH3_hashLong_64b_withSeed()

    for closer correspondence with XXH3_hashLong64_f definition
    Cyan4973 committed May 24, 2022
    Configuration menu
    Copy the full SHA
    6078dd6 View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2022

  1. blind fix for fallthrough on icc

    answering #717
    Cyan4973 committed Jun 7, 2022
    Configuration menu
    Copy the full SHA
    7e9ada3 View commit details
    Browse the repository at this point in the history

Commits on Jun 8, 2022

  1. Added CPack.

    Signed-off-by: Ghasem Ramezani (Work) <gh.ramazani@arad.co.net>
    Ghasem Ramezani committed Jun 8, 2022
    Configuration menu
    Copy the full SHA
    ba96407 View commit details
    Browse the repository at this point in the history
  2. more cmake v2.8.12 tests

    Cyan4973 committed Jun 8, 2022
    Configuration menu
    Copy the full SHA
    cf73b43 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #721 from Cyan4973/moreCmake2812tests

    just more cmake v2.8.12 tests
    Cyan4973 authored Jun 8, 2022
    Configuration menu
    Copy the full SHA
    b966a6f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6932421 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    6a1bda6 View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2022

  1. Remove stream loads and slightly improve avx512 seed generation

    Streamed loads (`vmovntdqa`) don't provide any benefit over normal
    aligned loads (`vmovdqa{8|16|32|64}`) but prevent GCC/Clang from
    micro-fusing the loads with the ALU wasting code size.
    
    Replace lane cross `vpbroadcastq` with `vpsubq`
    goldsteinn committed Jul 9, 2022
    Configuration menu
    Copy the full SHA
    acfcfa9 View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2022

  1. Merge pull request #726 from goldsteinn/dev

    Remove stream loads and slightly improve avx512 seed generation
    Cyan4973 authored Jul 10, 2022
    Configuration menu
    Copy the full SHA
    f7ab847 View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2022

  1. Fix: brace expansion

    Since GNU make invokes `shell` by default, it doesn't support brace expansion.
    This changeset expands the braces to fix the issue.
    t-mat committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    051276a View commit details
    Browse the repository at this point in the history
  2. Introduce new enum AlgoBitmask to fix #724.

    main() introduces new variable algoBitmask which represents the algorithm(s)
    which will be accepted by the CLI.
    main() also sets suitable algoBitmask for exename and passes it to
    XSUM_checkFiles().
    The default algoBitmask is algo_bitmask_all which accepts all xxh algorithms.
    
    XSUM_checkFiles() passes algoBitmask to XSUM_checkFile().
    
    XSUM_checkFile() sets algoBitmask to XSUM_parseFileArg->algoBitmask and
    invokes XSUM_parseFile1().
    
    XSUM_parseFile1() passes algoBitmask to XSUM_parseLine().
    
    XSUM_parseLine() passes algoBitmask to XSUM_parseLine1().
    
    XSUM_parseLine1() calles XSUM_algoBitmask_Accepts() to check
    actual xxh algorithm of the line and algoBitmask matches or not.
    t-mat committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    02dc2ab View commit details
    Browse the repository at this point in the history
  3. Add tests

    t-mat committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    06061c9 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    7a9ff01 View commit details
    Browse the repository at this point in the history
  5. Merge pull request #729 from t-mat/fix-makefile-glob

    Fix: brace expansion
    Cyan4973 authored Jul 29, 2022
    Configuration menu
    Copy the full SHA
    1dc8eb9 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #730 from t-mat/fix-issue-724

    Fix issue #724
    Cyan4973 authored Jul 29, 2022
    Configuration menu
    Copy the full SHA
    c4359b1 View commit details
    Browse the repository at this point in the history

Commits on Aug 31, 2022

  1. Configuration menu
    Copy the full SHA
    620facc View commit details
    Browse the repository at this point in the history

Commits on Sep 2, 2022

  1. update README introduction for improved clarity

    list available algorithms
    Cyan4973 committed Sep 2, 2022
    2 Configuration menu
    Copy the full SHA
    b35df4a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c547540 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b56b0e7 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #736 from t-mat/gh-actions-remove-macos-10.15

    Remove macOS-10.15 from ci.yml
    Cyan4973 authored Sep 2, 2022
    Configuration menu
    Copy the full SHA
    780c304 View commit details
    Browse the repository at this point in the history
  5. fix typo

    Cyan4973 committed Sep 2, 2022
    Configuration menu
    Copy the full SHA
    66248f4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    1309c27 View commit details
    Browse the repository at this point in the history

Commits on Sep 7, 2022

  1. Merge pull request #718 from Cyan4973/icc_fallthrough

    blind fix for fallthrough on icc
    Cyan4973 authored Sep 7, 2022
    Configuration menu
    Copy the full SHA
    521e6d3 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #734 from dougallj/neon-opt

    Optimize XXH3_accumulate_512_neon
    Cyan4973 authored Sep 7, 2022
    Configuration menu
    Copy the full SHA
    c420b59 View commit details
    Browse the repository at this point in the history

Commits on Sep 8, 2022

  1. Configuration menu
    Copy the full SHA
    82b600a View commit details
    Browse the repository at this point in the history
  2. Merge pull request #739 from DimitriPapadopoulos/codespell

    Fix typos found by codespell
    Cyan4973 authored Sep 8, 2022
    Configuration menu
    Copy the full SHA
    43ea6fd View commit details
    Browse the repository at this point in the history

Commits on Oct 19, 2022

  1. fix issues reported by cppcheck

    Run command "make clean cppcheck".
    
    ---- static analyzer - cppcheck ----
    cppcheck . --force --enable=warning,portability,performance,style --error-exitcode=1 > /dev/null
    cli/xsum_os_specific.c:220:9: style: The scope of the variable 'ret' can be reduced. [variableScope]
        int ret;
            ^
    cli/xsum_sanity_check.c:571:19: style: Condition 'len>0' is always true [knownConditionTrueFalse]
        } else if (len>0) {
                      ^
    cli/xsum_sanity_check.c:569:13: note: Assuming that condition 'len==0' is not redundant
        if (len == 0) {
                ^
    cli/xsum_sanity_check.c:571:19: note: Condition 'len>0' is always true
        } else if (len>0) {
                      ^
    tests/bench/benchHash.c:112:55: error: Uninitialized variables: result.internal_never_ever_use_directly, result.error_result_never_ever_use_directly, result.error_tag_never_ever_use_directly [uninitvar]
        BMK_runTime_t const runTime = BMK_extract_runTime(result);
                                                          ^
    tests/bench/benchHash.c:107:12: note: Assuming condition is false
        while (!BMK_isCompleted_TimedFn(txf)) {
               ^
    tests/bench/benchHash.c:107:12: note: Assuming condition is false
        while (!BMK_isCompleted_TimedFn(txf)) {
               ^
    tests/bench/benchHash.c:107:12: note: Assuming condition is false
        while (!BMK_isCompleted_TimedFn(txf)) {
               ^
    tests/bench/benchHash.c:112:55: note: Uninitialized variables: result.internal_never_ever_use_directly, result.error_result_never_ever_use_directly, result.error_tag_never_ever_use_directly
        BMK_runTime_t const runTime = BMK_extract_runTime(result);
                                                          ^
    tests/bench/benchfn.c:95:12: error: Uninitialized variable: outcome.error_result_never_ever_use_directly [uninitvar]
        return outcome;
               ^
    tests/collisions/main.c:209:14: style: Same expression on both sides of '<='. [duplicateExpression]
        assert(m <= m);
                 ^
    make: *** [Makefile:387: cppcheck] Error 1
    
    Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
    hzhuang1 committed Oct 19, 2022
    Configuration menu
    Copy the full SHA
    dde858b View commit details
    Browse the repository at this point in the history
  2. ci: fix tipi build error on github CI workflow

    [err] Dynamic exception type: std::runtime_error
    std::exception::what: can not create git repository [-3] - config value
      'safe.directory' was not found
    [err] Something went wrong, for help on your issue, we could enjoy getting
      your report at https://tipi.build/#contact
    Error: Process completed with exit code 1.
    
    Apply the workaround from Yannic (#744)
    on github CI workflow
    
    Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
    Cc: Yannic Staudt <yannic@tipi.build>
    hzhuang1 committed Oct 19, 2022
    Configuration menu
    Copy the full SHA
    058a465 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #749 from hzhuang1/fix_tipi

    ci: fix tipi build error on github CI workflow
    Cyan4973 authored Oct 19, 2022
    Configuration menu
    Copy the full SHA
    2de0fd6 View commit details
    Browse the repository at this point in the history

Commits on Oct 24, 2022

  1. Configuration menu
    Copy the full SHA
    930b33d View commit details
    Browse the repository at this point in the history
  2. Add spec for small inputs

    adrien1018 authored Oct 24, 2022
    Configuration menu
    Copy the full SHA
    1e02e9a View commit details
    Browse the repository at this point in the history
  3. Add spec for medium inputs

    adrien1018 committed Oct 24, 2022
    Configuration menu
    Copy the full SHA
    664c4b3 View commit details
    Browse the repository at this point in the history
  4. Fix a typo

    adrien1018 committed Oct 24, 2022
    Configuration menu
    Copy the full SHA
    9759aa1 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    0e1d320 View commit details
    Browse the repository at this point in the history

Commits on Oct 31, 2022

  1. Use vpsrlq instead of vpshufd in avx2/avx512 accumulate.

    `vpshufd` was just to essentially implement `dst >> 32` which can (and
    should) be done with `vpsrlq`.
    
    `XXH3_{32|64|128}bits` throughput seems to be limitted by a port_5
    bottleneck and under-uses port_0.
    
    Hashing 1mb in a loop 100000 times with `vpshufd`:
        x86-64-v4:
             5,363,095,005      cycles
             5,195,740,817      port_0
                17,104,516      port_1
             5,358,811,641      port_5
        x86-64-v3:
             7,954,143,671      cycles
             6,610,562,251      port_0
             7,405,810,291      port_1
             7,474,008,658      port_5
    
    `vpshufd` on x86-64-v3 only runs on port_5 (and for x86-64-v4
    only runs on port_5 when used with `zmm` registers). `vpsrlq` can
    run on port_{0|1} (port_0 only for `zmm`) which helps to
    alleviate this bottleneck.
    
    Hashing 1mb in a loop 100000 times with `vpsrlq`:
        x86-64-v4:
             5,305,723,460      cycles
             5,246,052,997      port_0
                17,759,291      port_1
             5,303,090,711      port_5
        x86-64-v3:
             7,852,139,442      cycles
             6,950,368,526      port_0
             7,301,134,590      port_1
             7,215,987,871      port_5
    
    which in general gets a better port distribution and results in
    slightly better times.
    
    Note the sse2 accumulate also would benefit from shifting uops from
    port5 -> port0
    
        x86-64-v2 with `pshufd`:
            13,128,826,786      port_0
            15,014,228,537      port_1
            14,801,410,216      port_5
    
        x86-64-v2 with `psrlq`:
            13,899,468,407      port_0
            14,774,790,828      port_1
            14,555,300,082      port_5
    
    But since `pshufd` has a 3-term encoding and `psrlq` only has a 2-term
    encoding, using `psrlq` causes an extra `movdqa` in codegen which
    is a net-negative (at least on Icelake benchmarks).
    
    Benchmarking on Icelake this commit results in the following
    improvements:
    
    NB: The avx2 changes where also benchmarked on Icelake which is
    not really ideal. Although note that Icelake (unlike native
    x86-64-v3 hardware has a faster `vpshufd` (port_{1|5} vs
    just port_5) so hopefully anything skewed by incorrect hardware
    was infavor of the original implementation).
    goldsteinn committed Oct 31, 2022
    Configuration menu
    Copy the full SHA
    f534e5b View commit details
    Browse the repository at this point in the history
  2. Avoid signed truncation in hash 17to128 and 129to240

    Signed truncation of len gets worse codegen so keep it unsigned.
    
    Signed codegen for loop bound on x86-64-v4:
    ```
         mov    %esi,%ecx
         lea    0xe(%rsi),%r10d
         dec    %ecx
         cmovns %ecx,%r10d
         sar    $0x4,%r10d
    ```
    
    Unsigned codegen for loop bound on x86-64-v4:
    ```
        lea    -0x1(%rsi),%ecx
        mov    %ecx,%r9d
        shr    $0x4,%r9d
    ```
    goldsteinn committed Oct 31, 2022
    Configuration menu
    Copy the full SHA
    1456dc5 View commit details
    Browse the repository at this point in the history
  3. Replace 2x vpxor with vpternlogd in avx512 scramble

    Neither Clang nor GCC <= 11.2 get this so seems worth it to do by hand
    so save the instruction. Not really on the critical path so only minor
    perf changes.
    
    Hashing 8kb On Icelake with 2x vpxor:
    
         5,451,267,137      cycles
         5,371,545,012      p0
           301,488,579      p1
         5,420,594,430      p5
           450,583,083      p6
    
    Hashing 8kb On Icelake with 2x vpternlogd:
    
         5,400,583,791      cycles
         5,329,872,021      p0
           305,543,626      p1
         5,372,500,814      p5
           446,853,381      p6
    goldsteinn committed Oct 31, 2022
    Configuration menu
    Copy the full SHA
    b2929c4 View commit details
    Browse the repository at this point in the history

Commits on Nov 2, 2022

  1. Configuration menu
    Copy the full SHA
    2e69ede View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    38f1de2 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #742 from DimitriPapadopoulos/actions

    Update GitHub Actions
    Cyan4973 authored Nov 2, 2022
    Configuration menu
    Copy the full SHA
    267ba94 View commit details
    Browse the repository at this point in the history

Commits on Nov 8, 2022

  1. xxhash: add ARM SVE intrinsic implementation

    Implement intrinsic code for ARM SVE. In this patch, it seems that there
    is no improvement. Further optimization will be contained in the later
    patch set.
    
    SCALAR implementation (default)
     ===  benchmarking 4 hash functions  ===
    benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
    xxh3   ,  2718,  3093,  3151,  3187,  3217,  3232,  3238,  3223,  3190,  3240,  3241,  3222,  3238,  3049,  2253,  2113,  2102,  2117,  2132
    XXH32  ,  1499,  1520,  1538,  1543,  1543,  1545,  1547,  1535,  1486,  1487,  1484,  1468,  1484,  1435,  1231,  1183,  1184,  1185,  1187
    XXH64  ,  2632,  2874,  3017,  3092,  3132,  3143,  3155,  3122,  2990,  2994,  2998,  3000,  3006,  2842,  2121,  1838,  1833,  1811,  1839
    XXH128 ,  2435,  2872,  3024,  3121,  3187,  3219,  3234,  3222,  3221,  3225,  3225,  3227,  3227,  3034,  1962,  1789,  1866,  1871,  1874
    
    Intrinsic SVE512 implementation
     ===  benchmarking 4 hash functions  ===
    benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
    xxh3   ,  1903,  2313,  2469,  2568,  2631,  2663,  2683,  2662,  2673,  2678,  2679,  2678,  2676,  2584,  2236,  2173,  2173,  2163,  2183
    XXH32  ,  1326,  1436,  1495,  1523,  1535,  1543,  1547,  1536,  1505,  1506,  1504,  1507,  1508,  1446,  1246,  1193,  1194,  1194,  1167
    XXH64  ,  2510,  2802,  2977,  3071,  3121,  3136,  3156,  3126,  3041,  3047,  3050,  3050,  3048,  2890,  2043,  1944,  1944,  1945,  1955
    XXH128 ,  1867,  2295,  2462,  2542,  2627,  2663,  2679,  2656,  2661,  2675,  2673,  2647,  2671,  2574,  2218,  2144,  2169,  2175,  2181
    
    Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
    Signed-off-by: Devin Hussey <easyaspi314@users.noreply.github.com>
    hzhuang1 committed Nov 8, 2022
    Configuration menu
    Copy the full SHA
    c6205ae View commit details
    Browse the repository at this point in the history
  2. CI: support ARM64 SVE

    Since the vector size of ARM64 SVE ranges from 128-bit to 2048-bit,
    configure CI to run with each vector size.
    
    Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
    hzhuang1 committed Nov 8, 2022
    Configuration menu
    Copy the full SHA
    dd19080 View commit details
    Browse the repository at this point in the history

Commits on Nov 9, 2022

  1. Speedup size hash for 17to128 by using independent accumulators.

    Faster (better IPC) to make computation slightly more independent.
    
    Results are from geometric mean of N = 6 runs.
    
    Machine:
    ```
    11th Gen Intel(R) Core(TM) i7-11850H @ 2.50GHz
    ```
    
    CC:
    ```
    gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
    ```
    
    Bench Command:
    ```
    // Change is only for 17-128 range.
    $> ./benchHash xxh3 --mins=1 --maxs=256 --minl=0 --maxl=0
    ```
    
    Aggregated Results for [17, 128] size range:
    Times reported as geometric mean of all speedups.
    
    Latency for small inputs of fixed size :
        - 1.073
    Throughput small inputs of fixed size (from 1 to 256 bytes):
        - 1.173
    Latency for small inputs of random size [1-N] :
        - 1.051
    benchmarking random size inputs [1-N] :
        - 1.134
    
    So roughly 5-17% improvement.
    goldsteinn committed Nov 9, 2022
    15 Configuration menu
    Copy the full SHA
    7221be4 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #752 from hzhuang1/sve_01

    xxhash: support SVE by intrinsic code
    Cyan4973 authored Nov 9, 2022
    Configuration menu
    Copy the full SHA
    dbacfec View commit details
    Browse the repository at this point in the history

Commits on Nov 10, 2022

  1. Merge pull request #746 from hzhuang1/cppcheck_01

    fix issues reported by cppcheck
    Cyan4973 authored Nov 10, 2022
    Configuration menu
    Copy the full SHA
    d0abdaa View commit details
    Browse the repository at this point in the history
  2. CI: fix missing space

    Missing space caused that github action doesn't work.
    
    Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
    hzhuang1 committed Nov 10, 2022
    Configuration menu
    Copy the full SHA
    63356da View commit details
    Browse the repository at this point in the history
  3. Merge pull request #758 from hzhuang1/tipi_01

    CI: fix missing space
    Cyan4973 authored Nov 10, 2022
    Configuration menu
    Copy the full SHA
    8e94343 View commit details
    Browse the repository at this point in the history
  4. 🔧 fixing #759

    pysco68 committed Nov 10, 2022
    Configuration menu
    Copy the full SHA
    e445e5b View commit details
    Browse the repository at this point in the history
  5. Merge pull request #760 from tipi-deps/dev

    Fixing tipi-build / Build as dependency CI step
    Cyan4973 authored Nov 10, 2022
    Configuration menu
    Copy the full SHA
    3078dc6 View commit details
    Browse the repository at this point in the history
  6. switch to full accmulating loop

    XXH3_accumulate() handle the whole accumulating loop and architecture
    optimized code is in the mini loop of 512 bytes. But it also causes
    accessing memory frequently for the large block data.
    
    Now make XXH3_accumulate() as architecture optimized code.
    
    Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
    Signed-off-by: Devin Hussey <easyaspi314@users.noreply.github.com>
    hzhuang1 committed Nov 10, 2022
    Configuration menu
    Copy the full SHA
    91788f1 View commit details
    Browse the repository at this point in the history
  7. customize full accumulating loop for ARM64 SVE

    With optimized full accumulating loop, the performance is improved
    at least 2 times.
    
    The ACC result needn't to save to stack in the full loop. And
    instructions of prefetching data for SVE are also used.
    
    Without this patch, the performance result is in below.
     ===  benchmarking 4 hash functions  ===
    benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
    xxh3   ,  1904,  2315,  2468,  2580,  2640,  2670,  2682,  2673,  2677,  2663,  2683,  2688,  2686,  2591,  2241,  2181,  2191,  2048,  2048
    XXH32  ,  1326,  1440,  1493,  1523,  1534,  1543,  1547,  1532,  1504,  1507,  1507,  1505,  1506,  1446,  1218,  1150,  1151,  1153,  1135
    XXH64  ,  2511,  2795,  2975,  3068,  3120,  3125,  3154,  3128,  3034,  3045,  3052,  3053,  3053,  2842,  2050,  1853,  1848,  1853,  1853
    XXH128 ,  1867,  2294,  2465,  2569,  2622,  2662,  2676,  2667,  2677,  2682,  2684,  2677,  2683,  2570,  2093,  2013,  2045,  2046,  2046
    
    With this patch, the performance result is in below.
     ===  benchmarking 4 hash functions  ===
    benchmarking large inputs : from 512 bytes (log9) to 128 MB (log27)
    xxh3   ,  3681,  6007,  7803,  8954,  9875, 10411, 10703, 10505, 10670, 10794, 10812, 10804, 10205,  9923,  6279,  5927,  5967,  6022,  6062
    XXH32  ,  1281,  1434,  1494,  1523,  1534,  1543,  1547,  1535,  1500,  1502,  1502,  1502,  1501,  1443,  1242,  1169,  1193,  1196,  1195
    XXH64  ,  2497,  2801,  2961,  3074,  3092,  3136,  3155,  3123,  3031,  3037,  3040,  3037,  3033,  2847,  2102,  1955,  1967,  1974,  1971
    XXH128 ,  3419,  5798,  7488,  8854,  9787, 10357, 10673, 10468, 10647, 10748, 10785, 10751, 10805,  9698,  6011,  5677,  5999,  6065,  6074
    
    Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
    Signed-off-by: Devin Hussey <easyaspi314@users.noreply.github.com>
    hzhuang1 committed Nov 10, 2022
    Configuration menu
    Copy the full SHA
    cfbf0b7 View commit details
    Browse the repository at this point in the history

Commits on Nov 24, 2022

  1. Merge pull request #756 from hzhuang1/sve_02

    Customize full accumulating loop for SVE
    Cyan4973 authored Nov 24, 2022
    Configuration menu
    Copy the full SHA
    30d6a3e View commit details
    Browse the repository at this point in the history

Commits on Nov 30, 2022

  1. added macos-12 test to GH CI

    Cyan4973 committed Nov 30, 2022
    Configuration menu
    Copy the full SHA
    3d01088 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #765 from Cyan4973/ci-macos12

    added macos-12 test to GH CI
    Cyan4973 authored Nov 30, 2022
    Configuration menu
    Copy the full SHA
    081c1b6 View commit details
    Browse the repository at this point in the history

Commits on Dec 2, 2022

  1. Fix '-Wsign-conversion' warning in XXH3_initCustomSecret_avx512

    No change to generated code, just suppresses the warning when using
    stricter compiler checks.
    goldsteinn committed Dec 2, 2022
    Configuration menu
    Copy the full SHA
    dced34e View commit details
    Browse the repository at this point in the history
  2. Merge pull request #754 from goldsteinn/dev

    Small improvement to x86 vectorized hashes and medium-sizes hash.
    Cyan4973 authored Dec 2, 2022
    Configuration menu
    Copy the full SHA
    86e1f8e View commit details
    Browse the repository at this point in the history

Commits on Dec 13, 2022

  1. dispatch: Use __attribute__((constructor)) on XXH_setDispatch

    Minimal change but eliminates the NULL check if the attribute
    is supported.
    goldsteinn committed Dec 13, 2022
    Configuration menu
    Copy the full SHA
    b8c3176 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #773 from goldsteinn/dev

    dispatch: Use __attribute__((constructor)) on XXH_setDispatch
    Cyan4973 authored Dec 13, 2022
    Configuration menu
    Copy the full SHA
    7f9cec7 View commit details
    Browse the repository at this point in the history

Commits on Dec 27, 2022

  1. Makefile: add install_libxxhash.includes target

    Add install_libxxhash.includes to be able to install headers when
    building and installing the static library
    
    Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
    ffontaine committed Dec 27, 2022
    Configuration menu
    Copy the full SHA
    b7c91f7 View commit details
    Browse the repository at this point in the history

Commits on Dec 29, 2022

  1. Configuration menu
    Copy the full SHA
    842a149 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    bdd92de View commit details
    Browse the repository at this point in the history

Commits on Dec 30, 2022

  1. Merge pull request #777 from DimitriPapadopoulos/codespell

    Fix typo found by codespell
    Cyan4973 authored Dec 30, 2022
    Configuration menu
    Copy the full SHA
    65515bb View commit details
    Browse the repository at this point in the history
  2. Merge pull request #778 from DimitriPapadopoulos/http

    http:// → https://
    Cyan4973 authored Dec 30, 2022
    Configuration menu
    Copy the full SHA
    4ebd833 View commit details
    Browse the repository at this point in the history

Commits on Jan 9, 2023

  1. s390x: add memory barrier to avoid fault issue

    The issue link is in below.
    #766
    
    This issue occurs randomly. If we downgrade gcc optimization from "O3"
    to "O2", this issue is gone.
    
    Now use memory barrier to implement the same effect.
    
    Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
    hzhuang1 committed Jan 9, 2023
    Configuration menu
    Copy the full SHA
    d8c2dfe View commit details
    Browse the repository at this point in the history

Commits on Jan 12, 2023

  1. Add __attribute__((noescape)) on pointers in public API

    LLVM only at the moment.
    
    Without LTO its the only way to inform the compiler that the pointer
    does not become globally visible due to the function call.
    goldsteinn committed Jan 12, 2023
    Configuration menu
    Copy the full SHA
    2765879 View commit details
    Browse the repository at this point in the history
  2. Small improvements to 129to240 hash ranges

    1. Don't compute `nbRounds` and use len as upper bound in 129to240
    
    Codegen was previously using the divide to truncate the lower-bits but
    was shifting back for the actual loop.
    
    Previous Codegen:
    ```
    // XXH128_129to240:
    shr    $0x5,%r15d
    lea    -0x5(%r15),%r13d
    shl    $0x5,%r13
    ...
    ```
    
    which is totally unnecessary.
    On aarch64 we are likewise able to eliminate some `lsl` instructions.
    
    Similiar changes "should" make sense in the 64bit version but seemed
    to always cause minor regressions for M1 so scrapped.
    
    2. Add second accumulator in `XXH3_len_129to240_64b` to get a bit more
       out of OOE. Note, for aarch64 we have to add a `XXH_COMPILER_GUARD(acc)`
       in the final loop of `XXH3_len_129to240_64b`. Without it clang and
       gcc where unrolling the second loop and interleaving it with the first.
       This caused a LOT of unnecessary constant materialization (unique
       for each unrolled iteration).
    goldsteinn committed Jan 12, 2023
    Configuration menu
    Copy the full SHA
    755445d View commit details
    Browse the repository at this point in the history

Commits on Jan 13, 2023

  1. Merge pull request #782 from goldsteinn/dev

    Add __attribute__((noescape)) on pointers in public API
    Cyan4973 authored Jan 13, 2023
    Configuration menu
    Copy the full SHA
    fe98d2b View commit details
    Browse the repository at this point in the history
  2. Annotate xxh_x86dispatch with XXH_NOESCAPE

    The pointers don't escape.
    goldsteinn committed Jan 13, 2023
    3 Configuration menu
    Copy the full SHA
    f4e2de6 View commit details
    Browse the repository at this point in the history

Commits on Jan 16, 2023

  1. Merge pull request #786 from goldsteinn/dev

    Annotate xxh_x86dispatch with XXH_NOESCAPE
    Cyan4973 authored Jan 16, 2023
    Configuration menu
    Copy the full SHA
    d7197dd View commit details
    Browse the repository at this point in the history

Commits on Jan 22, 2023

  1. [NEON] Refactor NEON code

     - Remove VZIP hack - ARMv7a is going to be using the 4 lane path, so there is
       no benefit to having the increased complexity.
     - Reorder the 4 lane path to clarify the paired operations. This also seems
       to slightly improve performance on Clang (not tested on GCC).
     - Rename variables to match SSE2 and be more consistent
     - Document how the VUZP trick works
    easyaspi314 committed Jan 22, 2023
    Configuration menu
    Copy the full SHA
    0e73b84 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2f54d1b View commit details
    Browse the repository at this point in the history

Commits on Jan 23, 2023

  1. [NEON] Simplify, only compiler guard on Clang

     - Remove acc_vec variable in favor of directly indexing
     - Removing the compiler guard for GCC 11 allows it to get to 23 GB/s
       from 20 GB/s
     - Slight cosmetic tweaks for the 4 lane loop allowing it to be commented
       out.
    easyaspi314 committed Jan 23, 2023
    Configuration menu
    Copy the full SHA
    0230310 View commit details
    Browse the repository at this point in the history

Commits on Jan 25, 2023

  1. Define XXH_RESTRICT for some C++ compilers (gcc/clang/msvc/icc)

    There are a LOT more compilers that recognize `__restrict` but this
    this hits the common ones.
    goldsteinn committed Jan 25, 2023
    Configuration menu
    Copy the full SHA
    2ddf958 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #787 from easyaspi314/neon_refactor

    [NEON] Refactor NEON code
    Cyan4973 authored Jan 25, 2023
    Configuration menu
    Copy the full SHA
    22a9afe View commit details
    Browse the repository at this point in the history
  3. Merge pull request #776 from ffontaine/dev

    Makefile: add install_libxxhash.includes target
    Cyan4973 authored Jan 25, 2023
    Configuration menu
    Copy the full SHA
    e0fd060 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #785 from hzhuang1/barrier_01

    s390x: add memory barrier to avoid fault issue
    Cyan4973 authored Jan 25, 2023
    Configuration menu
    Copy the full SHA
    1dc3a5c View commit details
    Browse the repository at this point in the history
  5. Merge pull request #788 from goldsteinn/dev

    Define XXH_RESTRICT for some C++ compilers (gcc/clang/msvc/icc)
    Cyan4973 authored Jan 25, 2023
    Configuration menu
    Copy the full SHA
    6dba9ab View commit details
    Browse the repository at this point in the history

Commits on Jan 29, 2023

  1. cmake: support dispatch mode

    Add dispatch mode with option DISPATCH.
    
    Build with DISPATCH:
    $cmake ../cmake_unofficial -DDISPATCH=ON
    $cmake --build ./
    
    Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
    hzhuang1 committed Jan 29, 2023
    Configuration menu
    Copy the full SHA
    c171483 View commit details
    Browse the repository at this point in the history

Commits on Feb 1, 2023

  1. Fix XXH_UNREACHABLE feature test for C++23 and remove for C23 #791

    gcc11/12 don't support `std::unreachable()` in there `-std=c++23`
    build.
    
    A more reliable check is:
    ```
    ```
    so use that.
    
    A similiar issue may occur for C23 `unreachable()` so just remove it
    on the basis that if a compiler doesn't currently support some
    builtin for unreachable/assume its very likely not using it in
    analysis so we are probably not missing much (if anything)
    leaving it out.
    goldsteinn committed Feb 1, 2023
    Configuration menu
    Copy the full SHA
    35031d3 View commit details
    Browse the repository at this point in the history

Commits on Feb 12, 2023

  1. Fix spelling.

    dwsteele committed Feb 12, 2023
    Configuration menu
    Copy the full SHA
    adbfd2a View commit details
    Browse the repository at this point in the history

Commits on Feb 23, 2023

  1. Merge pull request #797 from dwsteele/spelling

    Fix spelling.
    Cyan4973 authored Feb 23, 2023
    Configuration menu
    Copy the full SHA
    e169bed View commit details
    Browse the repository at this point in the history
  2. Merge pull request #790 from hzhuang1/cmake_01

    cmake: support dispatch mode
    Cyan4973 authored Feb 23, 2023
    Configuration menu
    Copy the full SHA
    dba3a29 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #792 from goldsteinn/dev

    Fix `XXH_UNREACHABLE` feature test for C++23 and remove for C23 #791
    Cyan4973 authored Feb 23, 2023
    Configuration menu
    Copy the full SHA
    3f5c75c View commit details
    Browse the repository at this point in the history

Commits on Feb 25, 2023

  1. Configuration menu
    Copy the full SHA
    4ff3a1b View commit details
    Browse the repository at this point in the history

Commits on Feb 27, 2023

  1. Fix GCC 12 -Og

    The issue actually appears to be GCC disliking that a function pointer is
    SOMETIMES forceinline, and withSecret was marked force inline instead of
    noinline (despite what the comments suggested)
    easyaspi314 committed Feb 27, 2023
    Configuration menu
    Copy the full SHA
    a2f7a0f View commit details
    Browse the repository at this point in the history
  2. Rewrite XXH3_update

     - XXH3_consumeStripes can now process multiple stripes, greatly simplifying the logic
     - Tail merged the last XXH3_accumulate_512 in XXH3_digestLong
     - XXH3_128bits_update now just tail calls XXH3_64bits_update to reduce code size
    easyaspi314 committed Feb 27, 2023
    Configuration menu
    Copy the full SHA
    44bb94e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    268fde4 View commit details
    Browse the repository at this point in the history

Commits on Feb 28, 2023

  1. Configuration menu
    Copy the full SHA
    86c3c05 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #805 from easyaspi314/xxh3_update_rewrite

    Rewrite XXH3_update
    Cyan4973 authored Feb 28, 2023
    Configuration menu
    Copy the full SHA
    2b328a1 View commit details
    Browse the repository at this point in the history

Commits on Mar 1, 2023

  1. Configuration menu
    Copy the full SHA
    ace22bd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    edb63d3 View commit details
    Browse the repository at this point in the history

Commits on Mar 2, 2023

  1. Various AArch64 speed hacks

     - Use inline assembly to force umaddl in the scalarRound code
       - Prevents the slow 64-bit `MADD` which has +4c latency and a 2c stall on little cores.
       - Also prevents a mask
       - Improves scalar speed even on big cores, should also improve mixed NEON speed on those
         little cores, although I haven't tested it.
     - Use inline assembly for `vmlal_u32`
       - Fixes NEON performance being garbage on GCC < 11 because it can't fold `vget_low/high`
         into `vmlal` (arm_neon.h uses inline assembly)
       - Documents the presumed reason why umlal must come before add.
       - Doubles as Clang's asm guard. (The old asm guard is still used on the single vector path)
       - Much cleaner in the code itself
     - Fix header detection
       - Include arm_neon.h when `__ARM_FEATURE_SVE` is defined
       - Don't include arm_neon.h if only `__aarch64__` is defined (e.g. -march=armv8-a+nofp)
       - Don't include arm_neon.h on < ARMv7 MSVC (which only would happen on old WinCE toolchains)
     - Fix the generateSecret MOVK hack
       - Add it for GCC, it does that too now
       - Remove the assert because the change to use `unreachable()` undoes it
    easyaspi314 committed Mar 2, 2023
    Configuration menu
    Copy the full SHA
    e701df3 View commit details
    Browse the repository at this point in the history

Commits on Mar 4, 2023

  1. Configuration menu
    Copy the full SHA
    62aa2f0 View commit details
    Browse the repository at this point in the history

Commits on Mar 5, 2023

  1. Remove volatile from asm guards, return Clang guards

    The volatile in the asm guards was causing a reorder barrier which was
    preventing interleaving of XXH32 and XXH3 NEON.
    
    Additionally, with the better asm guard, Clang does better with intrinsics.
    easyaspi314 committed Mar 5, 2023
    Configuration menu
    Copy the full SHA
    e6732e9 View commit details
    Browse the repository at this point in the history
  2. [NEON/VSX] Fix GCC strict aliasing issues

    This fixes GCC 12 on macOS ARM64, as well as the existing s390x zVector
    bug that was worked around with a `__sync_synchronize()` by using
    `__attribute__((may_alias))` which excludes a type from strict aliasing
    optimizations.
    
    `vldq`/`vst1q` are still avoided due to older versions having issues with
    load-store optimizations.
    
    This is not needed on x86 because the SSE types are impossible to not
    alias.
    easyaspi314 committed Mar 5, 2023
    Configuration menu
    Copy the full SHA
    ad63946 View commit details
    Browse the repository at this point in the history

Commits on Mar 6, 2023

  1. Fix: gcc -Og false positive warnings

    See #810
    Takayuki Matsuoka committed Mar 6, 2023
    Configuration menu
    Copy the full SHA
    a09fd87 View commit details
    Browse the repository at this point in the history

Commits on Mar 7, 2023

  1. fix: GH-Actions - removed ubuntu-18.04

    Due to deprecation, we remove ubuntu-18.04 and the following compilers.
    
    x86_64
    - Removed
      - gcc-{ 4.8, 5, 6 }
      - clang-{ 3.9, 4, 5 }
    - Moved from ubuntu-20.04 to ubuntu-22.04
      - gcc-{ 9, 10, 11 }
      - clang-{ 11, 12 }
    
    QEMU
    - Removed {arm, aarch64, mips, ppc64le, ppc64, s390x}-gcc-{ 6, 7 }
    - Removed mips-gcc-8
      - Ubuntu-20.04 didn't have mips-gcc-8 for some reason.
    Takayuki Matsuoka committed Mar 7, 2023
    Configuration menu
    Copy the full SHA
    eaea300 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #817 from t-mat/remove-ubuntu-18.04

    fix: GH-Actions - remove ubuntu-18.04
    Cyan4973 authored Mar 7, 2023
    Configuration menu
    Copy the full SHA
    ca91743 View commit details
    Browse the repository at this point in the history
  3. Fix off-by-one in XXH3_consumeStripes() (Fixes #816)

    Silly error by me that caused a scramble to be skipped.
    easyaspi314 committed Mar 7, 2023
    Configuration menu
    Copy the full SHA
    65094db View commit details
    Browse the repository at this point in the history

Commits on Mar 8, 2023

  1. Add: GH-Actions - add gcc-12

    Closes #810 .
    t-mat committed Mar 8, 2023
    Configuration menu
    Copy the full SHA
    3dd5a3a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    09b6fc7 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5be457e View commit details
    Browse the repository at this point in the history

Commits on Mar 9, 2023

  1. Merge pull request #814 from t-mat/dev

    Fix: add gcc -Og check and fix its false positive warnings
    Cyan4973 authored Mar 9, 2023
    Configuration menu
    Copy the full SHA
    a568bee View commit details
    Browse the repository at this point in the history
  2. Merge pull request #818 from easyaspi314/fix-816

    Fix off-by-one in XXH3_consumeStripes() (Fixes #816)
    Cyan4973 authored Mar 9, 2023
    Configuration menu
    Copy the full SHA
    5b2032f View commit details
    Browse the repository at this point in the history
  3. Merge pull request #807 from Cyan4973/gh_read

    added read-all permission status to Github Actions Workflow
    Cyan4973 authored Mar 9, 2023
    Configuration menu
    Copy the full SHA
    74c416c View commit details
    Browse the repository at this point in the history
  4. added one test length for xxh sanity checks

    to detect off-by-one scrambling error like #816
    Cyan4973 committed Mar 9, 2023
    Configuration menu
    Copy the full SHA
    7dd426a View commit details
    Browse the repository at this point in the history
  5. Merge pull request #803 from devnexen/clang__assume

    XXH_ASSUME macro using `__builtin_assume` if supported (clang only fo…
    Cyan4973 authored Mar 9, 2023
    Configuration menu
    Copy the full SHA
    adc4fc8 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #804 from easyaspi314/gcc12-Og

    Fix GCC 12 -Og
    Cyan4973 authored Mar 9, 2023
    Configuration menu
    Copy the full SHA
    449372c View commit details
    Browse the repository at this point in the history

Commits on Mar 10, 2023

  1. benchmark : adjust initial speed target to 10 MB/s

    Additionally, the initial speed target can be selected at compilation time,
    by setting new optional build macro XXH_1ST_SPEED_TARGET.
    
    Solves @easyaspi314 comment in #821 (comment),
    in order to support "1.5 GHz Cortex-A53 tablet with s390x in QEMU with -O0 -mzvector"
    which is very slow.
    Cyan4973 committed Mar 10, 2023
    Configuration menu
    Copy the full SHA
    bea35c6 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #819 from t-mat/gh-gcc-12

    Add `gcc-12` to ci.yml
    Cyan4973 authored Mar 10, 2023
    Configuration menu
    Copy the full SHA
    62d8bd1 View commit details
    Browse the repository at this point in the history

Commits on Mar 11, 2023

  1. Add sanity test vector generator

    sanity_test_vectors_generator.c generates sanity_test_vectors.h
    t-mat committed Mar 11, 2023
    Configuration menu
    Copy the full SHA
    94ddfec View commit details
    Browse the repository at this point in the history
  2. Create sanity_test_vectors.h

    t-mat committed Mar 11, 2023
    Configuration menu
    Copy the full SHA
    464645e View commit details
    Browse the repository at this point in the history
  3. Create sanity_test.c

    Note: sanity_test.c depends sanity_test_vectors.h which has generated by sanity_test_vectors_generator.c.
    t-mat committed Mar 11, 2023
    Configuration menu
    Copy the full SHA
    9c377f5 View commit details
    Browse the repository at this point in the history
  4. Add Makefile entry and gitignore for sanity_test

    make check
    Depends (invokes) test_sanity
    
    make test_sanity
    Invokes make -C tests test_sanity
    
    make -C tests test_sanity
    Create and execute tests/sanity_test
    
    make -C tests sanity_test_vectors.h
    Create and execute tests/sanity_test_vectors_generator.
    It generates tests/sanity_test_vectors.h.
    t-mat committed Mar 11, 2023
    Configuration menu
    Copy the full SHA
    25dfa1a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    9d34bcc View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    b618de4 View commit details
    Browse the repository at this point in the history
  7. Temporarily comment out 'AARCH64, gcc-8' for incompatibility.

    As for ["AARCH64, gcc-8" error](https://github.com/Cyan4973/xxHash/actions/runs/4392604424/jobs/7692471884),
    
    It seems aarch64-linux-gnu-gcc-8 has linker issue.
    When I remove `LDFLAGS="-static"` linker works.
    
    But when I don't give `LDFLAGS="-static"`, `qemu-aarch64-static` fails to read `/lib/ld-linux-aarch64.so.1`.
    
    We can run it with `qemu-aarch64` (no `-static`) though.
    
    ```
    CPPFLAGS="-DXXH_VECTOR=XXH_SCALAR" CC=aarch64-linux-gnu-gcc-8 RUN_ENV="qemu-aarch64 -L /usr/aarch64-linux-gnu" make clean check
    ```
    t-mat committed Mar 11, 2023
    Configuration menu
    Copy the full SHA
    7190dbe View commit details
    Browse the repository at this point in the history
  8. Fix test name

    t-mat committed Mar 11, 2023
    Configuration menu
    Copy the full SHA
    1b3dde6 View commit details
    Browse the repository at this point in the history
  9. Merge pull request #822 from Cyan4973/bench10

    benchmark : adjust initial speed target to 10 MB/s
    Cyan4973 authored Mar 11, 2023
    Configuration menu
    Copy the full SHA
    6ff46e7 View commit details
    Browse the repository at this point in the history
  10. Merge pull request #820 from Cyan4973/test816

    added one test length for xxh sanity checks
    Cyan4973 authored Mar 11, 2023
    Configuration menu
    Copy the full SHA
    c9df1e2 View commit details
    Browse the repository at this point in the history
  11. Merge pull request #809 from easyaspi314/aarch64-hacks

    Various AArch64 speed hacks
    Cyan4973 authored Mar 11, 2023
    2 Configuration menu
    Copy the full SHA
    a60bd05 View commit details
    Browse the repository at this point in the history

Commits on Mar 15, 2023

  1. Add some nodejs workarounds so make check works

     - Link in `nodefs` and `noderawfs`
     - Use Node's `tty.isatty()` via inline JS instead of the broken libc `isatty()`
     - Used with `make NODE_JS=1`
    easyaspi314 committed Mar 15, 2023
    Configuration menu
    Copy the full SHA
    207e2ab View commit details
    Browse the repository at this point in the history
  2. Add node.js wasm/asm.js tests for Github CI

    Currently only one version of EMCC, testing node 16, 17, and 18.
    
    Cache is used because the emsdk has to cache each library which takes
    a bit.
    easyaspi314 committed Mar 15, 2023
    Configuration menu
    Copy the full SHA
    125f89f View commit details
    Browse the repository at this point in the history
  3. [WASM] Support SIMD128 via XXH_NEON (from EMSDK's SIMDe polyfill)

    The Emscripten SDK includes arm_neon.h from SIMDeverywhere to port NEON projects.
    
    Since SIMD128 is very similar to NEON without half vectors, the double NEON path
    maps perfectly to WASM SIMD128 and can reach full speed with little modification.
    (As a matter of fact I was able to make it slightly faster).
    
    Note that if XXH3_NEON_LANES is not a multiple of 4, SIMDe will scalarize the
    single width NEON paths, so 8 is strongly recommended.
    
    Also, I found an optimization to scrambleAcc which should have been obvious.
    easyaspi314 committed Mar 15, 2023
    Configuration menu
    Copy the full SHA
    c9a7470 View commit details
    Browse the repository at this point in the history
  4. Compiler guard XXH32 on WASM128

    It JITs to the same thing that slowed down SSE4 and NEON.
    easyaspi314 committed Mar 15, 2023
    Configuration menu
    Copy the full SHA
    ab50132 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    5a9427c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    fd63843 View commit details
    Browse the repository at this point in the history

Commits on Mar 16, 2023

  1. Configuration menu
    Copy the full SHA
    082a9a8 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #823 from t-mat/dedicated-sanity-test-program

    Dedicated sanity test program
    Cyan4973 authored Mar 16, 2023
    Configuration menu
    Copy the full SHA
    554e98d View commit details
    Browse the repository at this point in the history

Commits on Apr 3, 2023

  1. Create SECURITY.md

    Signed-off-by: Gabriela Gutierrez <gabigutierrez@google.com>
    gabibguti authored Apr 3, 2023
    Configuration menu
    Copy the full SHA
    772eb38 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #828 from gabibguti/dev

    Add Security Policy
    Cyan4973 authored Apr 3, 2023
    Configuration menu
    Copy the full SHA
    f4bef92 View commit details
    Browse the repository at this point in the history

Commits on May 12, 2023

  1. Ref actions by commit SHA in ci.yml

    It's important to make sure the SHA's are from the original repositories and not forks.
    
    For reference:
    
    https://github.com/actions/checkout/releases/tag/v3.5.2
    actions/checkout@8e5e7e5
    
    https://github.com/msys2/setup-msys2/releases/tag/v2
    msys2/setup-msys2@7efe20b
    
    Signed-off-by: Gabriela Gutierrez <gabigutierrez@google.com>
    gabibguti authored May 12, 2023
    Configuration menu
    Copy the full SHA
    295ee07 View commit details
    Browse the repository at this point in the history

Commits on May 30, 2023

  1. Merge pull request #833 from gabibguti/dev

    Reference actions by commit SHA
    Cyan4973 authored May 30, 2023
    Configuration menu
    Copy the full SHA
    5562a14 View commit details
    Browse the repository at this point in the history
  2. minor comment update

    Cyan4973 committed May 30, 2023
    Configuration menu
    Copy the full SHA
    616ca44 View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2023

  1. Bump actions/checkout from 3.5.2 to 3.5.3

    Bumps [actions/checkout](https://github.com/actions/checkout) from 3.5.2 to 3.5.3.
    - [Release notes](https://github.com/actions/checkout/releases)
    - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
    - [Commits](actions/checkout@8e5e7e5...c85c95e)
    
    ---
    updated-dependencies:
    - dependency-name: actions/checkout
      dependency-type: direct:production
      update-type: version-update:semver-patch
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored Jun 12, 2023
    Configuration menu
    Copy the full SHA
    63d953a View commit details
    Browse the repository at this point in the history
  2. Merge pull request #837 from Cyan4973/dependabot/github_actions/actio…

    …ns/checkout-3.5.3
    
    Bump actions/checkout from 3.5.2 to 3.5.3
    Cyan4973 authored Jun 12, 2023
    Configuration menu
    Copy the full SHA
    f11745e View commit details
    Browse the repository at this point in the history

Commits on Jun 17, 2023

  1. feature: support # comment lines in --check files

    This change fixes issue #836.
    
    Basically, we just follow the following logic in the digest.c of GNU coreutils.
    https://github.com/coreutils/coreutils/blob/d53190ed46a55f599800ebb2d8ddfe38205dbd24/src/digest.c#L1180-L1182
    
    Note that we only allow '#' at the beginning of the line.
    t-mat committed Jun 17, 2023
    Configuration menu
    Copy the full SHA
    2f405e4 View commit details
    Browse the repository at this point in the history
  2. Add test for # comment lines

    t-mat committed Jun 17, 2023
    Configuration menu
    Copy the full SHA
    0691980 View commit details
    Browse the repository at this point in the history
  3. Add CI test for # comment lines

    t-mat committed Jun 17, 2023
    Configuration menu
    Copy the full SHA
    e24f111 View commit details
    Browse the repository at this point in the history
  4. Fix for compiler warnings

    Add "case GetLine_comment:" to conform -Werror=switch-enum.
    
    ```
    cli/xxhsum.c: In function ‘XSUM_parseFile1’:
    cli/xxhsum.c:814:17: error: enumeration value ‘GetLine_comment’ not handled in switch [-Werror=switch-enum]
      814 |                 switch (XSUM_getLineResult)
          |                 ^~~~~~
    ```
    t-mat committed Jun 17, 2023
    Configuration menu
    Copy the full SHA
    4823f56 View commit details
    Browse the repository at this point in the history

Commits on Jun 19, 2023

  1. reworded the AVX error message when compiling xxh_x86dispatch.c

    Suggest the XXH_X86DISPATCH_ALLOW_AVX solution upfront.
    Cyan4973 committed Jun 19, 2023
    Configuration menu
    Copy the full SHA
    3682673 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    bb52930 View commit details
    Browse the repository at this point in the history
  3. removed .tipi directory

    Cyan4973 committed Jun 19, 2023
    Configuration menu
    Copy the full SHA
    848f034 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #841 from Cyan4973/notipi

    removed tipi test from CI suite because it's unstable
    Cyan4973 authored Jun 19, 2023
    Configuration menu
    Copy the full SHA
    7c7a821 View commit details
    Browse the repository at this point in the history
  5. Merge pull request #840 from Cyan4973/avx_warning

    reworded the AVX error message when compiling xxh_x86dispatch.c
    Cyan4973 authored Jun 19, 2023
    Configuration menu
    Copy the full SHA
    b3c34c8 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #838 from t-mat/feature/issue-836

    Feature: Support # comment lines in --check files
    Cyan4973 authored Jun 19, 2023
    Configuration menu
    Copy the full SHA
    34fdc93 View commit details
    Browse the repository at this point in the history

Commits on Jun 20, 2023

  1. fix minor typo in comment

    Cyan4973 committed Jun 20, 2023
    Configuration menu
    Copy the full SHA
    5b45185 View commit details
    Browse the repository at this point in the history

Commits on Jun 25, 2023

  1. Merge pull request #723 from ilya-fedin/fix-cmake-prefix

    Fix double prefix when building with cmake
    Cyan4973 authored Jun 25, 2023
    Configuration menu
    Copy the full SHA
    17bbdee View commit details
    Browse the repository at this point in the history
  2. added a cmake pkgconfig generation test

    ensure proper path after advanced example provided by @ilya-fedin :
    #723 (comment)
    
    note : is expected to fail before integration of #723
    Cyan4973 committed Jun 25, 2023
    Configuration menu
    Copy the full SHA
    e0f1c02 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #845 from Cyan4973/pkgcmaketest

    added a cmake pkgconfig generation test
    Cyan4973 authored Jun 25, 2023
    Configuration menu
    Copy the full SHA
    10fed7e View commit details
    Browse the repository at this point in the history
  4. added RISC-V emulation to CI

    Cyan4973 committed Jun 25, 2023
    Configuration menu
    Copy the full SHA
    74fdef1 View commit details
    Browse the repository at this point in the history
  5. combine scalar-only tests

    Cyan4973 committed Jun 25, 2023
    Configuration menu
    Copy the full SHA
    1a9e4b9 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #846 from Cyan4973/riscv

    added RISC-V emulation to CI
    Cyan4973 authored Jun 25, 2023
    Configuration menu
    Copy the full SHA
    811212c View commit details
    Browse the repository at this point in the history

Commits on Jun 29, 2023

  1. Merge pull request #750 from adrien1018/dev

    Add algorithm specification of XXH3
    Cyan4973 authored Jun 29, 2023
    Configuration menu
    Copy the full SHA
    0656ed7 View commit details
    Browse the repository at this point in the history
  2. minor follow-ups for XXH3 specification (#750)

    minor nit and clarifications,
    minor source modification (constant name correspond to spec),
    update version, attribute credit to @adrien1018.
    Cyan4973 committed Jun 29, 2023
    Configuration menu
    Copy the full SHA
    d66a9cb View commit details
    Browse the repository at this point in the history
  3. Merge pull request #847 from Cyan4973/specxxh3followup

    minor follow-ups for XXH3 specification (#750)
    Cyan4973 authored Jun 29, 2023
    Configuration menu
    Copy the full SHA
    4c9e996 View commit details
    Browse the repository at this point in the history

Commits on Jun 30, 2023

  1. Configuration menu
    Copy the full SHA
    dfd7617 View commit details
    Browse the repository at this point in the history
  2. Remove tipi.build section

    Since we've merged #841 unfortunately, we can remove it for now.
    t-mat committed Jun 30, 2023
    Configuration menu
    Copy the full SHA
    2c74110 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ff0fa82 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #848 from t-mat/fix/remove-remaining-0.8.1s

    Remove `0.8.1`s
    Cyan4973 authored Jun 30, 2023
    Configuration menu
    Copy the full SHA
    1d4ad8a View commit details
    Browse the repository at this point in the history

Commits on Jul 1, 2023

  1. Configuration menu
    Copy the full SHA
    0d0e823 View commit details
    Browse the repository at this point in the history

Commits on Jul 2, 2023

  1. Detect and display SVE when active

    display was mistakenly mentioning NEON instead.
    
    Codemod inspired by @hzhuang1 's #762.
    Cyan4973 committed Jul 2, 2023
    Configuration menu
    Copy the full SHA
    0da2381 View commit details
    Browse the repository at this point in the history

Commits on Jul 3, 2023

  1. fix SVE tests in CI

    Note : SVE toolchain requires at least gcc version 10.1
    Cyan4973 committed Jul 3, 2023
    Configuration menu
    Copy the full SHA
    2d62c3e View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5bf31c2 View commit details
    Browse the repository at this point in the history
  3. fixed minor warnings

    Cyan4973 committed Jul 3, 2023
    Configuration menu
    Copy the full SHA
    1b8956d View commit details
    Browse the repository at this point in the history
  4. Merge pull request #849 from Cyan4973/sve_display

    Detect and display SVE when active
    Cyan4973 authored Jul 3, 2023
    Configuration menu
    Copy the full SHA
    17d4aca View commit details
    Browse the repository at this point in the history

Commits on Jul 5, 2023

  1. fixed doxygen reference

    Cyan4973 committed Jul 5, 2023
    Configuration menu
    Copy the full SHA
    0578efd View commit details
    Browse the repository at this point in the history
  2. fixed doxygen marker

    Cyan4973 committed Jul 5, 2023
    Configuration menu
    Copy the full SHA
    914458d View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b321462 View commit details
    Browse the repository at this point in the history
  4. fix: add special #ifndef block for XXH_DOXYGEN

    This special block prevents the following strange warning message:
    > warning: unable to resolve reference to 'XXH_INLINE_ALL' for \ref command
    
    Since Doxyfile explicitly includes xxh_x86dispatch.c,
    we need special care for multiple/inconsistent document definition.
    t-mat committed Jul 5, 2023
    Configuration menu
    Copy the full SHA
    e2cf439 View commit details
    Browse the repository at this point in the history
  5. add: document for XXH3_*State()

    Add document for XXH3_createState() and XXH3_freeState().
    t-mat committed Jul 5, 2023
    Configuration menu
    Copy the full SHA
    f7a6aca View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    28f40f3 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    6aad58a View commit details
    Browse the repository at this point in the history
  8. fix: Remove ref for XXH_X86DISPATCH

    Since XXH_X86DISPATCH is an internal macro, we can remove it from the document for now.
    t-mat committed Jul 5, 2023
    Configuration menu
    Copy the full SHA
    20bf712 View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2023

  1. feature: CLI: --binary

    Add `--binary` to xxhsum.  It's just ignored.
    Note that we don't have `--text`.
    See also #812
    t-mat committed Jul 9, 2023
    Configuration menu
    Copy the full SHA
    d7dce18 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #851 from t-mat/fix/doxygen-warnings-2023-0705-2

    Fix doxygen warnings (2nd attempt)
    Cyan4973 authored Jul 9, 2023
    Configuration menu
    Copy the full SHA
    a37d212 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #852 from t-mat/feature/cli-option-binary

    feature: CLI: --binary
    Cyan4973 authored Jul 9, 2023
    Configuration menu
    Copy the full SHA
    3f255fa View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2023

  1. Configuration menu
    Copy the full SHA
    4f092f2 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #825 from easyaspi314/wasm128

    Add WebAssembly SIMD128 implementation and Node.JS support
    Cyan4973 authored Jul 10, 2023
    Configuration menu
    Copy the full SHA
    c234b94 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    258351b View commit details
    Browse the repository at this point in the history
  4. add: cli: --ignore-missing

    - Add `--ignore-missing` option for `xxhsum`.
    - Add test script `tests/cli-ignore-missing.sh` and related `Makefile` entries.
      - Note that we still don't have CLI test entry in our CI.
    
    `xxhsum` returns failure exit code when
    
    - `--ignore-missing` is presented.
    - Checksum file is specified.
    - But `XSUM_checkFile()` doesn't read actual file (may) due to `--ignore-missing`
    
    If so, `xxhsum` reports `no file was verified` with failure exit code.
    
    <details><summary>`--ignore-missing` related code in `digest.c`</summary>
    - https://github.com/coreutils/coreutils/blob/2f1cffe07ab0f0b4135a52d95f1689d7fc7f26c9/src/digest.c#L190-L191
    - https://github.com/coreutils/coreutils/blob/2f1cffe07ab0f0b4135a52d95f1689d7fc7f26c9/src/digest.c#L362
    - https://github.com/coreutils/coreutils/blob/2f1cffe07ab0f0b4135a52d95f1689d7fc7f26c9/src/digest.c#L380
    - https://github.com/coreutils/coreutils/blob/2f1cffe07ab0f0b4135a52d95f1689d7fc7f26c9/src/digest.c#L506
    - https://github.com/coreutils/coreutils/blob/2f1cffe07ab0f0b4135a52d95f1689d7fc7f26c9/src/digest.c#L978-L982
    - https://github.com/coreutils/coreutils/blob/2f1cffe07ab0f0b4135a52d95f1689d7fc7f26c9/src/digest.c#L1236-L1240
    - https://github.com/coreutils/coreutils/blob/2f1cffe07ab0f0b4135a52d95f1689d7fc7f26c9/src/digest.c#L1325-L1328
    - https://github.com/coreutils/coreutils/blob/2f1cffe07ab0f0b4135a52d95f1689d7fc7f26c9/src/digest.c#L1429-L1431
    - https://github.com/coreutils/coreutils/blob/2f1cffe07ab0f0b4135a52d95f1689d7fc7f26c9/src/digest.c#L1558-L1564
    </details>
    t-mat committed Jul 10, 2023
    Configuration menu
    Copy the full SHA
    e592478 View commit details
    Browse the repository at this point in the history
  5. Add missing doxygen style comments to XXH64 family

    All comments are copied from correspond XXH32 functions.
    t-mat committed Jul 10, 2023
    Configuration menu
    Copy the full SHA
    946d46d View commit details
    Browse the repository at this point in the history
  6. Add doxygen comments to XXH3_64bits_ family

    Add missing doxygen style comments to XXH3_64bits_ family.
    t-mat committed Jul 10, 2023
    Configuration menu
    Copy the full SHA
    58d6f48 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    c4d049b View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    17dfca6 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    bfe162c View commit details
    Browse the repository at this point in the history
  10. update xxhsum.1

    Generate with the following commands:
    
    rm cli/xxhsum.1
    make man
    man cli/xxhsum.1
    t-mat committed Jul 10, 2023
    Configuration menu
    Copy the full SHA
    e88af46 View commit details
    Browse the repository at this point in the history
  11. add --binary to --help message

    t-mat committed Jul 10, 2023
    Configuration menu
    Copy the full SHA
    b6103a4 View commit details
    Browse the repository at this point in the history
  12. fix style

    - fix style
    - add --binary
    t-mat committed Jul 10, 2023
    Configuration menu
    Copy the full SHA
    c45304f View commit details
    Browse the repository at this point in the history
  13. Update xxhsum.1

    Generate with the following commands:
    
    rm cli/xxhsum.1
    make man
    man cli/xxhsum.1
    t-mat committed Jul 10, 2023
    Configuration menu
    Copy the full SHA
    4a47319 View commit details
    Browse the repository at this point in the history

Commits on Jul 12, 2023

  1. Merge pull request #853 from t-mat/feature/cli-ignore-missing

    Add --ignore-missing
    Cyan4973 authored Jul 12, 2023
    Configuration menu
    Copy the full SHA
    9391c17 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #855 from t-mat/fix/xxh64-doxygen-comments

    Add missing doxygen style comments to XXH64 family
    Cyan4973 authored Jul 12, 2023
    Configuration menu
    Copy the full SHA
    5e95c08 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #856 from t-mat/fix/xxh3-64bits-doxygen-documents

    Add missing doxygen style comments to XXH3 family
    Cyan4973 authored Jul 12, 2023
    Configuration menu
    Copy the full SHA
    bea4423 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #857 from t-mat/fix/ignore-missing-manpages

    Add --ignore-missing and --binary to --help and xxhsum.1
    Cyan4973 authored Jul 12, 2023
    Configuration menu
    Copy the full SHA
    0ac3a27 View commit details
    Browse the repository at this point in the history
  5. added a compilation warning message for XXH_OLD_NAMES

    as suggested by @t-mat,
    warning about the upcoming deprecation of this feature.
    Cyan4973 committed Jul 12, 2023
    Configuration menu
    Copy the full SHA
    b203110 View commit details
    Browse the repository at this point in the history

Commits on Jul 14, 2023

  1. Merge pull request #860 from Cyan4973/old_names_warning

    added a compilation warning message for XXH_OLD_NAMES
    Cyan4973 authored Jul 14, 2023
    Configuration menu
    Copy the full SHA
    4fd75d7 View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2023

  1. fix: __cpuidex pointer type warning

    clang-cl warns the first argument of __cpuidex() because it's int[].
    
    void __cpuidex(
       int cpuInfo[4],
       int function_id,
       int subfunction_id
    );
    
    https://learn.microsoft.com/en-us/cpp/intrinsics/cpuid-cpuidex
    t-mat committed Jul 15, 2023
    Configuration menu
    Copy the full SHA
    5953419 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #864 from t-mat/fix/clang-cl-sign-warning

    fix: __cpuidex pointer type warning
    Cyan4973 authored Jul 15, 2023
    Configuration menu
    Copy the full SHA
    f5cbcb8 View commit details
    Browse the repository at this point in the history
  3. fix: support clang-cl

    clang-cl defines both __clang__ and _MSC_VER.
    
    Also it seems clang-cl needs extra headers to compile AVX2/512F intrinsic.
    t-mat committed Jul 15, 2023
    Configuration menu
    Copy the full SHA
    1e5c0f5 View commit details
    Browse the repository at this point in the history
  4. fix: support clang-cl and dispatch

    - Actual platform name of x64 for MSVC/clang-cl is "AMD64"
    - When we compile xxhsum with dispatch, we need xxh_x86dispatch.c
    t-mat committed Jul 15, 2023
    Configuration menu
    Copy the full SHA
    d82321b View commit details
    Browse the repository at this point in the history
  5. Merge pull request #865 from t-mat/fix/clang-cl-dispatch

    Fix clang-cl dispatch
    Cyan4973 authored Jul 15, 2023
    Configuration menu
    Copy the full SHA
    1a53004 View commit details
    Browse the repository at this point in the history
  6. add a test combining Windows + Visual + Clang-Cl + DISPATCH=1

    test that #763 is fixed and remains fixed
    Cyan4973 committed Jul 15, 2023
    Configuration menu
    Copy the full SHA
    a8ded18 View commit details
    Browse the repository at this point in the history
  7. Merge pull request #863 from Cyan4973/visual_clang_dispatch_test

    add a test combining Windows + Visual + Clang-Cl + DISPATCH=1
    Cyan4973 authored Jul 15, 2023
    Configuration menu
    Copy the full SHA
    0c8e930 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    8b093f2 View commit details
    Browse the repository at this point in the history
  9. Merge pull request #866 from t-mat/fix/vc2022-clang-cl

    fix: enable clang-cl test for VC++2022
    Cyan4973 authored Jul 15, 2023
    Configuration menu
    Copy the full SHA
    a112385 View commit details
    Browse the repository at this point in the history
  10. fix: Intel compiler's warning for XXH_ASSERT()

    Intel compiler expects "unsigned char" as an argument of __builtin_assume().
    t-mat committed Jul 15, 2023
    Configuration menu
    Copy the full SHA
    ee51543 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2023

  1. Configuration menu
    Copy the full SHA
    97be68d View commit details
    Browse the repository at this point in the history
  2. Add missing '!'

    t-mat committed Jul 16, 2023
    Configuration menu
    Copy the full SHA
    0f31a5f View commit details
    Browse the repository at this point in the history
  3. Merge pull request #867 from t-mat/fix/intel-compiler-assert

    fix: Intel compiler's warning for XXH_ASSERT()
    Cyan4973 authored Jul 16, 2023
    Configuration menu
    Copy the full SHA
    9e1cf4e View commit details
    Browse the repository at this point in the history
  4. add: introduce "public" and "internal" Doxyfile

    "Doxyfile" is configured to generate public document.
    Differences are:
    - INTERNAL_DOCS
    - EXTRACT_STATIC
    - EXTRACT_PRIVATE
    t-mat committed Jul 16, 2023
    Configuration menu
    Copy the full SHA
    4b93d0a View commit details
    Browse the repository at this point in the history
  5. fix: hide x86 dispatcher internals from document

    Hide internals to simplify public document.
    t-mat committed Jul 16, 2023
    Configuration menu
    Copy the full SHA
    7031f87 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #868 from t-mat/fix/hide-internal-macros

    fix: hide internal macros from doxygen
    Cyan4973 authored Jul 16, 2023
    Configuration menu
    Copy the full SHA
    557799a View commit details
    Browse the repository at this point in the history
  7. Merge pull request #869 from t-mat/fix/hide-x86-dispatcher-internals

    hide x86 dispatcher internals
    Cyan4973 authored Jul 16, 2023
    Configuration menu
    Copy the full SHA
    d589159 View commit details
    Browse the repository at this point in the history

Commits on Jul 19, 2023

  1. Configuration menu
    Copy the full SHA
    2352ef1 View commit details
    Browse the repository at this point in the history
  2. revert XXH3's 17to128 variant to single accumulator

    and re-employ original nest order
    to reproduce same performance as v0.8.1.
    Cyan4973 committed Jul 19, 2023
    Configuration menu
    Copy the full SHA
    2180439 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #872 from t-mat/dev

    CI: Add gcc-13 and clang-{13,14,15}
    Cyan4973 authored Jul 19, 2023
    Configuration menu
    Copy the full SHA
    d507414 View commit details
    Browse the repository at this point in the history
  4. Merge pull request #871 from Cyan4973/revert_17to128

    revert XXH3's 17to128 variant to single accumulator
    Cyan4973 authored Jul 19, 2023
    Configuration menu
    Copy the full SHA
    c8060b4 View commit details
    Browse the repository at this point in the history

Commits on Jul 20, 2023

  1. fix speed improvement line

    Cyan4973 committed Jul 20, 2023
    Configuration menu
    Copy the full SHA
    72e69d3 View commit details
    Browse the repository at this point in the history