Computer Chess Club Archives


Search

Terms

Messages

Subject: bugs in mars compiler

Author: Vincent Diepeveen

Date: 08:11:27 04/19/02

Go up one level in this thread


On April 19, 2002 at 03:53:35, Dann Corbit wrote:

i see at their homepage nowhere where to ask what this means,
must be some stupid array thing which gets optimized illegal.

amazingly it isn't complaining about inline assembly in diepab.c

C:\engine>make
sc -Jm -w -o+space -mmn -w- -6 -Nc -W3 -c diepab.c
Command line error: unrecognized parameter '-mmn'--- errorlevel 1

--- errorlevel 1

C:\engine>make
sc -Jm -w -o+space -mn -w- -6 -Nc -W3 -c diepab.c

sc -Jm -w -o+space -mn -w- -6 -Nc -W3 -c diepasci.c

sc -Jm -w -o+space -mn -w- -6 -Nc -W3 -c diepauto.c

sc -Jm -w -o+space -mn -w- -6 -Nc -W3 -c diepbook.c

sc -Jm -w -o+space -mn -w- -6 -Nc -W3 -c diepcns.c
    if( (n=cn->nmoves) ) {
                       ^
diepcns.c(447) : Warning 2: possible unintended assignment
    if( (n=cn.nmoves) ) {
                      ^
diepcns.c(529) : Warning 2: possible unintended assignment
  if( (n=cn->nmoves) ) {
                     ^
diepcns.c(586) : Warning 2: possible unintended assignment

sc -Jm -w -o+space -mn -w- -6 -Nc -W3 -c diepdbas.c
  if( !(zfile = fopen(fname,"rt")) )
                                   ^
diepdbas.c(923) : Warning 2: possible unintended assignment

sc -Jm -w -o+space -mn -w- -6 -Nc -W3 -c diepegtb.c

sc -Jm -w -o+space -mn -w- -6 -Nc -W3 -c diepeind.c

sc -Jm -w -o+space -mn -w- -6 -Nc -W3 -c diepeval.c
     && PawnNumbers[apvm] == 1 ) { /* geen vijandelijke pionnen van voren */
      ^
diepeval.c(2607) : Warning 2: possible unintended assignment
    if( (piece=board[sq]) ) {
                          ^
diepeval.c(5102) : Warning 2: possible unintended assignment

sc -Jm -w -o+space -mn -w- -6 -Nc -W3 -c diepexec.c
Internal error: cg87 256
--- errorlevel 1

--- errorlevel 1

C:\engine>

so now a try without parameter:

C:\engine>make
sc  -W3 -c diepexec.c
Internal error: cg87 256
--- errorlevel 1

--- errorlevel 1

C:\engine>del *.obj

C:\engine>make
sc  -W3 -c diepab.c

sc  -W3 -c diepasci.c

sc  -W3 -c diepauto.c

sc  -W3 -c diepbook.c

sc  -W3 -c diepcns.c
    if( (n=cn->nmoves) ) {
                       ^
diepcns.c(447) : Warning 2: possible unintended assignment
    if( (n=cn.nmoves) ) {
                      ^
diepcns.c(529) : Warning 2: possible unintended assignment
  if( (n=cn->nmoves) ) {
                     ^
diepcns.c(586) : Warning 2: possible unintended assignment

sc  -W3 -c diepdbas.c
  if( !(zfile = fopen(fname,"rt")) )
                                   ^
diepdbas.c(923) : Warning 2: possible unintended assignment

sc  -W3 -c diepegtb.c

sc  -W3 -c diepeind.c

sc  -W3 -c diepeval.c
     && PawnNumbers[apvm] == 1 ) { /* geen vijandelijke pionnen van voren */
      ^
diepeval.c(2607) : Warning 2: possible unintended assignment
    if( (piece=board[sq]) ) {
                          ^
diepeval.c(5102) : Warning 2: possible unintended assignment

sc  -W3 -c diepexec.c
Internal error: cg87 256
--- errorlevel 1

--- errorlevel 1

C:\engine>


>From:
>http://www.digitalmars.com/
>
>E:\tscp>sc -Jm -w -o+space -w- -6 -Nc tscp.c -mn
>    setjmp(env);
>               ^
>search.c(37) : Warning 6: value of expression is not used
>    if (pawn_rank[LIGHT][f] == 6);      /* pawn hasn't moved */
>                                ^
>eval.c(335) : Warning 7: possible extraneous ';'
>    if (pawn_rank[DARK][f] == 1);
>                               ^
>eval.c(382) : Warning 7: possible extraneous ';'
>link tscp,,,user32+kernel32/noi;
>
>
>E:\tscp>tscp
>
>Tom Kerrigan's Simple Chess Program (TSCP)
>version 1.73, 2/11/01
>Copyright 1997 Tom Kerrigan
>
>"help" displays a list of commands.
>
>tscp> bench
>
>8  . r b . . r k .
>7  p . . . . p p p
>6  . p . q p . n .
>5  . . . n . . N .
>4  . . p P . . . .
>3  . . P . . . P .
>2  P P Q . . P B P
>1  R . B . R . K .
>
>   a b c d e f g h
>
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 4336 ms
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 4357 ms
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 4346 ms
>
>Nodes: 550822
>Best time: 4336 ms
>Nodes per second: 127034 (863.6 MIPS)
>tscp>
>
>Compared with GCC:
>
>$ gcc -W -Wall -ansi -pedantic -O3 tscp.c
>In file included from tscp.c:5:
>search.c: In function `reps':
>search.c:237: warning: array subscript has type `char'
>search.c:241: warning: array subscript has type `char'
>
>dcorbit@DANNFAST e:/tscp
>$ ./a
>
>Tom Kerrigan's Simple Chess Program (TSCP)
>version 1.73, 2/11/01
>Copyright 1997 Tom Kerrigan
>
>"help" displays a list of commands.
>
>tscp> bench
>
>8  . r b . . r k .
>7  p . . . . p p p
>6  . p . q p . n .
>5  . . . n . . N .
>4  . . p P . . . .
>3  . . P . . . P .
>2  P P Q . . P B P
>1  R . B . R . K .
>
>   a b c d e f g h
>
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 4366 ms
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 4350 ms
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 4323 ms
>
>Nodes: 550822
>Best time: 4323 ms
>Nodes per second: 127416 (866.2 MIPS)
>tscp>
>
>Borland:
>E:\tscp>bcc32 -6 -I"e:\Borland\Bcc55\include" -L"e:\Borland\Bcc55\lib" -Ox
>tscp.c
>Borland C++ 5.5 for Win32 Copyright (c) 1993, 2000 Borland
>tscp.c:
>Warning W8066 main.c 181: Unreachable code in function main
>Turbo Incremental Link 5.00 Copyright (c) 1997, 2000 Borland
>
>E:\tscp>tscp
>
>Tom Kerrigan's Simple Chess Program (TSCP)
>version 1.73, 2/11/01
>Copyright 1997 Tom Kerrigan
>
>"help" displays a list of commands.
>
>tscp> bench
>
>8  . r b . . r k .
>7  p . . . . p p p
>6  . p . q p . n .
>5  . . . n . . N .
>4  . . p P . . . .
>3  . . P . . . P .
>2  P P Q . . P B P
>1  R . B . R . K .
>
>   a b c d e f g h
>
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 4597 ms
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 4607 ms
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 4576 ms
>
>Nodes: 550822
>Best time: 4576 ms
>Nodes per second: 120371 (818.3 MIPS)
>tscp>
>
>And then commercial compilers Intel:
>
>E:\tscp>icl /nologo /G6 /Gr /Zp16 /ML /W4 /Gi /O2 /Ob2  /FD /G7 /GA /GF /Gs /O3
>/QaxW /Qip /Qipo_S /Qwp_ipo /W5 /c tscp.c
>icl: Command line warning: overriding '-G6' with '-G7'
>icl: Command line warning: overriding '-O2' with '-O3'
>icl: NOTE: The evaluation period for this product ends on 15-may-2002 UTC.
>tscp.c
>board.c(266): remark #810: conversion from "int" to "char" may lose significant
>bits
>      g->m.b.from = (char) from;
>                    ^
>
>board.c(267): remark #810: conversion from "int" to "char" may lose significant
>bits
>      g->m.b.to = (char) to;
>                  ^
>
>board.c(269): remark #810: conversion from "int" to "char" may lose significant
>bits
>      g->m.b.bits = (char) bits;
>                    ^
>
>board.c(287): remark #810: conversion from "int" to "char" may lose significant
>bits
>          g->m.b.from = (char) from;
>                        ^
>
>board.c(288): remark #810: conversion from "int" to "char" may lose significant
>bits
>          g->m.b.to = (char) to;
>                      ^
>
>board.c(289): remark #810: conversion from "int" to "char" may lose significant
>bits
>          g->m.b.promote = (char) i;
>                           ^
>
>board.c(290): remark #810: conversion from "int" to "char" may lose significant
>bits
>          g->m.b.bits = (char) (bits | 32);
>                        ^
>
>main.c(181): remark #111: statement is unreachable
>      return 0;                   /* shouldn't get here */
>      ^
>
>main.c(266): remark #171: invalid type conversion: "int" to "void (__cdecl
>*)(int)"
>      signal(SIGINT, SIG_IGN);
>                     ^
>
>main.c(531): remark #810: conversion from "double" to "int" may lose significant
>bits
>      printf("Nodes per second: %d (%.1f MIPS)\n", (int) nps, mips);
>                                                   ^
>
>
>E:\tscp>tscp
>
>Tom Kerrigan's Simple Chess Program (TSCP)
>version 1.73, 2/11/01
>Copyright 1997 Tom Kerrigan
>
>"help" displays a list of commands.
>
>tscp> bench
>
>8  . r b . . r k .
>7  p . . . . p p p
>6  . p . q p . n .
>5  . . . n . . N .
>4  . . p P . . . .
>3  . . P . . . P .
>2  P P Q . . P B P
>1  R . B . R . K .
>
>   a b c d e f g h
>
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 3455 ms
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 3465 ms
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 3435 ms
>
>Nodes: 550822
>Best time: 3435 ms
>Nodes per second: 160355 (1090.1 MIPS)
>tscp>
>
>
>MS VC++:
>E:\tscp>cl /Ox /G6 tscp.c
>Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8804 for 80x86
>Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
>
>tscp.c
>Microsoft (R) Incremental Linker Version 6.00.8447
>Copyright (C) Microsoft Corp 1992-1998. All rights reserved.
>
>/out:tscp.exe
>tscp.obj
>
>E:\tscp>tscp
>
>Tom Kerrigan's Simple Chess Program (TSCP)
>version 1.73, 2/11/01
>Copyright 1997 Tom Kerrigan
>
>"help" displays a list of commands.
>
>tscp> bench
>
>8  . r b . . r k .
>7  p . . . . p p p
>6  . p . q p . n .
>5  . . . n . . N .
>4  . . p P . . . .
>3  . . P . . . P .
>2  P P Q . . P B P
>1  R . B . R . K .
>
>   a b c d e f g h
>
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 3445 ms
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 3435 ms
>ply      nodes  score  pv
>  1        130     20  c1e3
>  2       3441      5  g5e4 d6c7
>  3       8911     30  g5e4 d6c7 c1e3
>  4     141367     10  g5e4 d6c7 c1e3 c8d7
>  5     550822     26  c2a4 d6c7 g2d5 e6d5 c1e3
>Time: 3455 ms
>
>Nodes: 550822
>Best time: 3435 ms
>Nodes per second: 160355 (1090.1 MIPS)
>tscp>



This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.