The uploaded source contains a very nasty bug in the Discover routine. You use the local variable bit without being initialized. As far as I know locals are not initialized at 0 by default. Probably you meant bit = BSF(incoming); ???hgm wrote: ↑Wed Apr 07, 2021 4:21 pm [Edit] I uploaded (the still very messy) source code for this test to http://hgm.nubati.net/mailbox4.c . I am not sure whether it would compile on any compiler, because I had to embed some assembly code to be able to use the bit-scan forward instruction. That would probably have to be adapted to a 64-bit version when compiled for x64 architecture. And I am not sure the GNU format for assembly is understood by all compilers.
[Edit] Sorry, I already see the problem, you use bit in the BSF macro, typically something I would never write this way.
Code: Select all
55555555 aaaaaaaa
presence: @@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@
PPPPPPPPNNBBRRQK ppppppppnnbbrrqk
16. 000e0204 P@d5 .@.......@:::::. ....@...@@:::::.
17. 100c0000 P@e4 .........@::::@. .........@:::::.
18. 01040000 P@a2 .........@::@::. ..........:::::.
19. 00000000 P@b2 ..........:::::. ..........:::::.
20. 00000000 P@c2 ..........:::::. ..........:::::.
21. 50000000 P@f2 ..........::::@@ ..........:::::.
22. 10008000 P@g2 ..........::::@. .......@..:::::.
23. 04000000 P@h2 ..........:::@:. ..........:::::.
24. 00000000 N@e5 ..........:::::. ..........:::::.
25. 10102040 N@c3 ...@......@:::@. ......@...:::::.
26. 40000000 B@d2 ..........:::::@ ..........:::::.
27. 50840000 B@e2 .........@::::@@ ..........:@:::.
28. 00000000 R@a1 ..........:::::. ..........:::::.
29. 00000000 R@h1 ..........:::::. ..........:::::.
30. 00411000 Q@f3 ......@.@.:@:::. ..........:::::.
31. 05100000 K@e1 ..........@:@@:. ..........:::::.
32. 02000000 p@a7 ..........:::::. ..........::@::.
33. 00000000 p@c7 ..........:::::. ..........:::::.
34. a00b0000 p@d7 ........@.:::::. ........@@::::@@
35. a0010000 p@f7 ........@.:::::. ..........::::@@
36. 200000a1 p@e6 @.........:::::. ..@@......::::@.
37. 00010080 p@g6 ........@.:::::. ...@......:::::.
38. 20000000 p@b4 ..........:::::. ..........::::@.
39. 18001000 p@h3 ......@...::::@. ..........:::@:.
40. 0000000a n@b6 ..........:::::. @@........:::::.
41. 30200000 n@f6 ..........::::@. ..........@:::@.
42. 00000000 b@g7 ..........:::::. ..........:::::.
43. 00400000 b@a6 ..........:@:::. ..........:::::.
44. 00020000 r@a8 ..........:::::. ........@.:::::.
45. 00200000 r@h8 ..........:::::. ..........@::::.
46. 80000000 q@e7 ..........:::::. ..........:::::@
47. 2a080000 k@e8 ..........:::::. .........@::@@@.
1 -16 532 0 e2a6 b4c3 b2c3 e6d5
2 -16 1859 0 e2a6 b4c3 b2c3 e6d5
3 -27 4421 0 e2a6 e6d5 g2h3 b4c3 d2c3 d5e4
4 -27 59130 0 e2a6 e6d5 g2h3 b4c3 d2c3 d5e4
5 -37 142018 0 e2a6 e6d5 c3d5 b6d5 e4d5 e7e5
6 -32 427596 0 e2a6 e6d5 c3d5 b6d5 a6b7 a8b8 b7d5 f6d5 e5f7 e7f7 e4d5 g7b2 f3f7 e8f7
7 -32 956057 0 e2a6 e6d5 c3d5 b6d5 a6b7 a8b8 b7d5 f6d5 e5f7 e7f7 e4d5 g7b2 f3f7 e8f7
8 -32 4664824 0 e2a6 e6d5 c3d5 b6d5 a6b7 a8b8 b7d5 f6d5 e5f7 e7f7 e4d5 g7b2 f3f7 e8f7
9 -96 12236440 0 d5e6 e7e6 e2a6 e6e5 g2h3 b4c3 d2c3 e5h5 f3f4
10 -82 41679702 0 e2a6 e6d5 e5g6 f7g6 c3b5 d5e4 f3g3 e8f8 g2h3 c7c5 g3g6 h8h3
t = 3.089 sec
41679702 nodes (13.5 Mnps)
37242403 QS (89.4%)
5510077 evals (14.8%)
1893393 stand-pats (5.1%)
14445410 leaves (38.8%)
134111 move gens
captures: 89.8%
D:\Mailbox4\x64\Release\Mailbox4.exe (process 2752) exited with code 0.
Press any key to close this window . . .