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

Fixes for handing of popcnt and for compilation on non-x86 architectures #12

Open
wants to merge 73 commits into
base: master
Choose a base branch
from

Conversation

jdart1
Copy link
Contributor

@jdart1 jdart1 commented Jul 14, 2016

Always use TB_CUSTOM_POP_COUNT if defined. If not defined and
if also TB_NO_HW_POP_COUNT is not defined, use a x86 hardware
instruction, but only if on a recognized compiler/architecture
that has one. Fixes issue #9 (ARM compatibility).

if also TB_NO_HW_POP_COUNT is not defined, use a x86 hardware
instruction, but only if on a recognized compiler/architecture
that has one. Fixes issue #9 (ARM compatibility).
@jdart1
Copy link
Contributor Author

jdart1 commented Jan 16, 2017

Is there a reason not to merge this? I think without this pull request the code is not really portable to non-x86 architectures. But I am open to other ways of fixing that.

1. Check return value from fstat.
2. Use strncpy not strcpy in constructing file path.
Write error messages to stderr, not stdout.
Add error checking for unmap function.
@basil00
Copy link
Owner

basil00 commented Jan 22, 2017

Sorry about that. The change did require me to check some things, which I never got around to. There is a backlog of changes needed for Fathom that I currently have little time for.

jdart1 and others added 18 commits August 20, 2017 13:43
overridding the config file by including it from another directory.
it was not being defined. Use std::mutex if C++11 compile. Update
copyright.
move_to_str. Note: this still does not output complete SAN, because
no indication of check or mate.
code assumed gcc on x86_64. Now we use builtins if possible and
otherwise a De Bruijn multiplication implementation.
1. Expose new interfaces for DTZ and WDL probing with ranks/scores
as in Cfish, as well as the old Fathom interface.
2. Put both tbprobe.c and tbchess.c under MIT license.
3. Require atomic support, remove this option from tbconfig.h.
4. Use stdendian for big/little endian support.
5. Add constants for mate scores, pawn scores etc. to tbconfig.h.

Note: two test cases from Arasan unit tests still not passing due
to Cfish bug.
jdart1 and others added 30 commits December 21, 2020 20:11
Fix false munmap error
Fix mapping offset for wide dtz tables.
Also use FILE_FLAG_RANDOM_ACCESS for opening Windows files, as
in Stockfish.
Add top level Makefile for compiling a shared object
Fix install bug if $(DESTDIR)$(INCDIR) does not exist
Fix race condition caused by init_table failure
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.

6 participants