open64-compiler / open64

open64 compiler
76 stars 29 forks source link

Assertion failure at line 1524 of /home/qgw/src/open64/build/../open64-w2ll/osprey/be/opt/opt_etable.cxx: #24

Open qingw1230 opened 1 year ago

qingw1230 commented 1 year ago

I want to compile SPEC2006 using opencc. The configuration file I am using is the linux64-amd64-gcc41.cfg provided with SPEC2006. The compiler path is set as follows:

CC           = /home/qgw/src/open64/local/bin/opencc
CXX          = /home/qgw/src/open64/local/bin/openCC
FC           = /home/qgw/src/open64/local/bin/openCC

Since there was an error during the installation of Fortran, I haven't dealt with the Fortran test programs yet.

make whirl2f.so whirl2f_be whirl2f
make[3]: Entering directory“/home/qgw/src/open64/build/osprey/targdir/whirl2f”
if ! test -e maccom.so; then ln -sf /home/qgw/src/open64/build/osprey/targdir/be/maccom.so .; fi
C++    /home/qgw/src/open64/build/osprey/targdir/whirl2f/diagnostics.o
g++: error: maccom.so: No such file or directory

The optimization options are set as follows:

default=base=default=default:
COPTIMIZE     = -O2 
CXXOPTIMIZE  = -O2 
FOPTIMIZE    = -O2

To compile the integer benchmarks of SPEC2006, the following command is used:

runspec --config=x86.try.cfg --size=test --noreportable --tune=base --iterations=1 --speed --action=build int

The compilation result is as follows:

Build errors: 400.perlbench(base), 401.bzip2(base), 403.gcc(base), 456.hmmer(base), 464.h264ref(base), 471.omnetpp(base), 473.astar(base), 483.xalancbmk(base)
Build successes: 429.mcf(base), 445.gobmk(base), 458.sjeng(base), 462.libquantum(base), 999.specrand(base)

The detailed error message for 400.perlbench is as follows, and the other benchmarks have the same error:

### Assertion failure at line 1524 of /home/qgw/src/open64/build/../open64-w2ll/osprey/be/opt/opt_etable.cxx:
### Compiler Error in file av.c during Global Optimization -- SPRE: Iphi Insertion phase:
### EXP_WORKLST::Are_different:  must not reach here.

There is an internal assertion error. Can opencc now compile SPEC2006, or are there any additional options that need to be set in the cfg file?

Yvan-xy commented 1 year ago

A few months ago, we executed SPEC2006 using Open64 5.0 (master branch). I suspect that this bug has emerged due to optimizations developed subsequently. You can try the 5.0 version. I am going to look into this bug.

Yvan-xy commented 1 year ago

Options for Open64 : -Ofast -IPA:dst=0 -OPT:fast_math=0