Skip to content

Prefix shared SIMD include scaffolding with Clp to avoid HashLib collisions#139

Merged
Xor-el merged 2 commits into
masterfrom
fix/clp-prefix-shared-simd-includes
Jul 8, 2026
Merged

Prefix shared SIMD include scaffolding with Clp to avoid HashLib collisions#139
Xor-el merged 2 commits into
masterfrom
fix/clp-prefix-shared-simd-includes

Conversation

@Xor-el

@Xor-el Xor-el commented Jul 8, 2026

Copy link
Copy Markdown
Owner

The SIMD prologue/save-restore scaffolding (Include\Simd\Common) and the CPUID/XGETBV probes (Include\Simd\CpuFeatures) are copied into both this library and HashLib4Pascal and have since diverged (they branch on CRYPTOLIB_* vs HASHLIB_* defines). Because both packages expose these identically-named .inc files on their include search path, Lazarus emits "Duplicate file" warnings, and FPC's include resolution could in principle bind CryptoLib to HashLib's copy (wrong ABI prologue).

Rename the 16 shared files with a Clp prefix so no basename is shared between the two libraries, updating the {$I} references and the comment mentions of them. The CpuIdQuery/XGetBvQuery procedures keep their names; only the include files are renamed. Paths stay .pas-relative, so the existing -Fi depth anchor still resolves and Delphi is unaffected.

Xor-el added 2 commits July 8, 2026 18:46
…isions

The SIMD prologue/save-restore scaffolding (Include\Simd\Common) and the
CPUID/XGETBV probes (Include\Simd\CpuFeatures) are copied into both this
library and HashLib4Pascal and have since diverged (they branch on
CRYPTOLIB_* vs HASHLIB_* defines). Because both packages expose these
identically-named .inc files on their include search path, Lazarus emits
"Duplicate file" warnings, and FPC's include resolution could in principle
bind CryptoLib to HashLib's copy (wrong ABI prologue).

Rename the 16 shared files with a Clp prefix so no basename is shared
between the two libraries, updating the {$I} references and the comment
mentions of them. The CpuIdQuery/XGetBvQuery procedures keep their names;
only the include files are renamed. Paths stay .pas-relative, so the
existing -Fi depth anchor still resolves and Delphi is unaffected.
docs: add mobile TestInsight test harness guide
@Xor-el Xor-el merged commit 6d3bab8 into master Jul 8, 2026
24 checks passed
@Xor-el Xor-el deleted the fix/clp-prefix-shared-simd-includes branch July 8, 2026 21:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant