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

Delay castling legality check #1929

Closed
wants to merge 1 commit into from

Commits on Jan 4, 2019

  1. Delay castling legality check

    Delay legality check of castling moves at search time,
    just before making the move, as is the standard with all
    the other move types.
    
    This shoudl avoid an useless and not trivial legality check
    when the castling is then not tried later. For instance due
    to a previous cut-off.
    
    The patch is also a big simplification and allows to entirely
    remove generate_castling()
    
    Bench changes due to a different move's sequence out of
    MovePicker.
    
    STC:
    LLR: 2.95 (-2.94,2.94) [-3.00,1.00]
    Total: 45073 W: 9918 L: 9843 D: 25312
    http://tests.stockfishchess.org/tests/view/5c2f176f0ebc596a450bdfb3
    
    LTC:
    LLR: 3.15 (-2.94,2.94) [-3.00,1.00]
    Total: 10156 W: 1707 L: 1560 D: 6889
    http://tests.stockfishchess.org/tests/view/5c2e7dfd0ebc596a450bcdf4
    
    Verified with perft both in standard and Chess960 cases.
    
    Bench: 3559104
    mcostalba committed Jan 4, 2019
    Configuration menu
    Copy the full SHA
    18855a5 View commit details
    Browse the repository at this point in the history