[LLVMdev] Error messages in llvm-test

Joachim Durchholz jo at durchholz.org
Wed Mar 5 11:33:38 PST 2008


Hi all,

llvm-test fails on me in the first test (and many subsequent tests, but
I hope that fixing the first test will allow me to continue).

I see syntax errors from the C compiler and core dumps from llc.
Is any of this supposed to happen?

This is still on my amd64 machine. However, the build process is using
the right incantation to compile (gcc-4.2 -m32 -Wl,-melf_i386).
The llvm-gcc toolchain installed is the precompiled 2.2 Red Hat package
for Linux.

See below for the error messages, and further below for the source lines
mentioned in the messages.

Should I worry about these messages? I haven't tested actually using
LLVM yet, and I may be barking up the wrong tree. (Having a clean test
suite *would* make me feel more confident, of course.)

Regards,
Jo

--- snip ---
Transcript for
$ cd llvm/projects/llvm-test
$ export LANG=C
$ make

I'm giving a little bit more context than announced above.

make[1]: Entering directory
`/home/jo/Delta/llvm/projects/llvm-test/SingleSource'
make[2]: Entering directory
`/home/jo/Delta/llvm/projects/llvm-test/SingleSource/UnitTests'
make[3]: Entering directory
`/home/jo/Delta/llvm/projects/llvm-test/SingleSource/UnitTests/Vector'
/home/jo/Delta/llvm/Release/bin/llc  -march=c Output/build.llvm.bc -o
Output/build.cbe.c -f
C Writer does not know about    %tmp12 = insertelement <4 x float> %
tmp11, float %X.0, i32 1            ; <<4 x float>> [#uses=2]
/home/jo/Delta/llvm/Release/bin/llc[0x878d8dc]
[0x6]
/lib32/libc.so.6(abort+0x101)[0x556f24b1]
/home/jo/Delta/llvm/Release/bin/llc[0x812a0f8]
make[3]: *** [Output/build.cbe.c] Aborted (core dumped)
gcc-4.2 -m32 Output/build.cbe.c -o Output/build.cbe -Wl,-melf_i386
-Wl,-melf_i386  -O3 -fno-strict-aliasing -fno-inline  
gcc-4.2: Output/build.cbe.c: No such file or directory
make[3]: [Output/build.cbe] Error 1 (ignored)
gcc-4.2 -m32 Output/build2.cbe.c -o Output/build2.cbe -Wl,-melf_i386
-Wl,-melf_i386  -O3 -fno-strict-aliasing -fno-inline  
Output/build2.cbe.c:113: warning: conflicting types for built-in
function 'malloc'
Output/build2.cbe.c: In function 'main':
Output/build2.cbe.c:181: error: expected expression before '{' token
Output/build2.cbe.c:182: error: expected expression before '{' token
Output/build2.cbe.c:183: error: expected expression before '{' token
Output/build2.cbe.c:191: error: expected expression before '{' token
Output/build2.cbe.c:192: error: expected expression before '{' token
Output/build2.cbe.c:193: error: expected expression before '{' token
Output/build2.cbe.c:208: error: incompatible types in assignment
Output/build2.cbe.c:209: error: incompatible types in assignment
Output/build2.cbe.c:210: error: incompatible types in assignment
Output/build2.cbe.c:211: error: expected expression before '{' token
Output/build2.cbe.c:211: error: expected expression before '{' token
Output/build2.cbe.c:211: error: expected expression before '{' token
Output/build2.cbe.c:211: error: expected expression before '{' token
Output/build2.cbe.c:212: error: expected expression before '{' token
Output/build2.cbe.c:212: error: expected expression before '{' token
Output/build2.cbe.c:212: error: expected expression before '{' token
Output/build2.cbe.c:212: error: expected expression before '{' token
Output/build2.cbe.c:212: error: expected expression before '{' token
Output/build2.cbe.c:212: error: expected expression before '{' token
Output/build2.cbe.c:213: error: expected expression before '{' token
Output/build2.cbe.c:213: error: expected expression before '{' token
Output/build2.cbe.c:213: error: expected expression before '{' token
Output/build2.cbe.c:213: error: expected expression before '{' token
Output/build2.cbe.c:219: error: incompatible types in assignment
Output/build2.cbe.c:220: error: incompatible types in assignment
Output/build2.cbe.c:221: error: incompatible types in assignment
Output/build2.cbe.c:228: error: incompatible types in assignment
Output/build2.cbe.c:229: error: incompatible types in assignment
Output/build2.cbe.c:230: error: incompatible types in assignment
Output/build2.cbe.c:142: warning: return type of 'main' is not 'int'
make[3]: [Output/build2.cbe] Error 1 (ignored)
/home/jo/Delta/llvm/Release/bin/llc  -march=c Output/divides.llvm.bc -o
Output/divides.cbe.c -f
llc: CBackend.cpp:400:
std::ostream&<unnamed>::CWriter::printSimpleType(std::ostream&, const
llvm::Type*, bool, const std::string&): Assertion
`(Ty->isPrimitiveType() || Ty->isInteger()) && "Invalid t
ype for printSimpleType"' failed.
/home/jo/Delta/llvm/Release/bin/llc[0x878d8dc]
[0x6]
/lib32/libc.so.6(abort+0x101)[0x556f24b1]
/lib32/libc.so.6(__assert_fail+0xee)[0x556e9bbe]
/home/jo/Delta/llvm/Release/bin/llc[0x811c697]
make[3]: *** [Output/divides.cbe.c] Aborted (core dumped)
gcc-4.2 -m32 Output/divides.cbe.c -o Output/divides.cbe -Wl,-melf_i386
-Wl,-melf_i386  -O3 -fno-strict-aliasing -fno-inline  
gcc-4.2: Output/divides.cbe.c: No such file or directory
make[3]: [Output/divides.cbe] Error 1 (ignored)
gcc-4.2 -m32 Output/multiplies.cbe.c -o Output/multiplies.cbe
-Wl,-melf_i386 -Wl,-melf_i386  -O3 -fno-strict-aliasing -fno-inline  
Output/multiplies.cbe.c:124: warning: conflicting types for built-in
function 'malloc'
Output/multiplies.cbe.c: In function 'main':
Output/multiplies.cbe.c:247: error: expected expression before '{' token
Output/multiplies.cbe.c:258: error: incompatible types in assignment
Output/multiplies.cbe.c:260: error: incompatible types in assignment
Output/multiplies.cbe.c:269: error: incompatible types in assignment
Output/multiplies.cbe.c:276: error: incompatible types in assignment
Output/multiplies.cbe.c:277: error: incompatible types in assignment
Output/multiplies.cbe.c:278: error: invalid operands to binary *
Output/multiplies.cbe.c:284: error: incompatible types in assignment
Output/multiplies.cbe.c:291: error: cast specifies array type
Output/multiplies.cbe.c:299: error: expected expression before '{' token
Output/multiplies.cbe.c:305: error: incompatible types in assignment
Output/multiplies.cbe.c:307: error: incompatible types in assignment
Output/multiplies.cbe.c:316: error: incompatible types in assignment
Output/multiplies.cbe.c:323: error: incompatible types in assignment
Output/multiplies.cbe.c:324: error: incompatible types in assignment
Output/multiplies.cbe.c:325: error: invalid operands to binary *
Output/multiplies.cbe.c:331: error: incompatible types in assignment
Output/multiplies.cbe.c:338: error: cast specifies array type
Output/multiplies.cbe.c:346: error: expected expression before '{' token
Output/multiplies.cbe.c:352: error: incompatible types in assignment
Output/multiplies.cbe.c:354: error: incompatible types in assignment
Output/multiplies.cbe.c:363: error: incompatible types in assignment
Output/multiplies.cbe.c:370: error: incompatible types in assignment
Output/multiplies.cbe.c:371: error: incompatible types in assignment
Output/multiplies.cbe.c:372: error: invalid operands to binary *
Output/multiplies.cbe.c:378: error: incompatible types in assignment
Output/multiplies.cbe.c:385: error: incompatible types in assignment
Output/multiplies.cbe.c:393: error: expected expression before '{' token
Output/multiplies.cbe.c:399: error: incompatible types in assignment
Output/multiplies.cbe.c:401: error: incompatible types in assignment
Output/multiplies.cbe.c:410: error: incompatible types in assignment
Output/multiplies.cbe.c:417: error: incompatible types in assignment
Output/multiplies.cbe.c:418: error: incompatible types in assignment
Output/multiplies.cbe.c:419: error: invalid operands to binary *
Output/multiplies.cbe.c:425: error: incompatible types in assignment
Output/multiplies.cbe.c:432: error: incompatible types in assignment
Output/multiplies.cbe.c:155: warning: return type of 'main' is not 'int'
make[3]: [Output/multiplies.cbe] Error 1 (ignored)
/home/jo/Delta/llvm/Release/bin/llc  -march=c Output/simple.llvm.bc -o
Output/simple.cbe.c -f
C Writer does not know about    %tmp35 = insertelement <4 x float> %
tmp34, float %X.0, i32 1            ; <<4 x float>> [#uses=3]
/home/jo/Delta/llvm/Release/bin/llc[0x878d8dc]
[0x6]
/lib32/libc.so.6(abort+0x101)[0x556f24b1]
/home/jo/Delta/llvm/Release/bin/llc[0x812a0f8]
make[3]: *** [Output/simple.cbe.c] Aborted (core dumped)
gcc-4.2 -m32 Output/simple.cbe.c -o Output/simple.cbe -Wl,-melf_i386
-Wl,-melf_i386  -O3 -fno-strict-aliasing -fno-inline  
gcc-4.2: Output/simple.cbe.c: No such file or directory
make[3]: [Output/simple.cbe] Error 1 (ignored)
gcc-4.2 -m32 Output/sumarray-dbl.cbe.c -o Output/sumarray-dbl.cbe
-Wl,-melf_i386 -Wl,-melf_i386  -O3 -fno-strict-aliasing -fno-inline  
Output/sumarray-dbl.cbe.c:130: warning: conflicting types for built-in
function 'malloc'
Output/sumarray-dbl.cbe.c: In function 'main':
Output/sumarray-dbl.cbe.c:195: error: expected expression before '{'
token
Output/sumarray-dbl.cbe.c:206: error: incompatible types in assignment
Output/sumarray-dbl.cbe.c:207: error: incompatible types in assignment
Output/sumarray-dbl.cbe.c:208: error: invalid operands to binary +
Output/sumarray-dbl.cbe.c:214: error: incompatible types in assignment
Output/sumarray-dbl.cbe.c:220: error: incompatible types in assignment
Output/sumarray-dbl.cbe.c:161: warning: return type of 'main' is not
'int'
make[3]: [Output/sumarray-dbl.cbe] Error 1 (ignored)
gcc-4.2 -m32 Output/sumarray.cbe.c -o Output/sumarray.cbe -Wl,-melf_i386
-Wl,-melf_i386  -O3 -fno-strict-aliasing -fno-inline  
Output/sumarray.cbe.c:130: warning: conflicting types for built-in
function 'malloc'
Output/sumarray.cbe.c: In function 'main':
Output/sumarray.cbe.c:191: error: expected expression before '{' token
Output/sumarray.cbe.c:202: error: incompatible types in assignment
Output/sumarray.cbe.c:203: error: incompatible types in assignment
Output/sumarray.cbe.c:204: error: invalid operands to binary +
Output/sumarray.cbe.c:210: error: incompatible types in assignment
Output/sumarray.cbe.c:216: error: incompatible types in assignment
Output/sumarray.cbe.c:161: warning: return type of 'main' is not 'int'
make[3]: [Output/sumarray.cbe] Error 1 (ignored)
/home/jo/Delta/llvm/projects/llvm-test/RunSafely.sh 500 0 /dev/null
Output/multiplies.out-llc Output/multiplies.llc 
/home/jo/Delta/llvm/projects/llvm-test/DiffOutput.sh
"/home/jo/Delta/llvm/Release/bin/fpcmp " llc multiplies 
gcc-4.2 -m32 Output/simple.llc.s -o Output/simple.llc  -lm
-Wl,-melf_i386 -Wl,-melf_i386
/home/jo/Delta/llvm/projects/llvm-test/RunSafely.sh 500 0 /dev/null
Output/simple.out-llc Output/simple.llc 
/home/jo/Delta/llvm/projects/llvm-test/DiffOutput.sh
"/home/jo/Delta/llvm/Release/bin/fpcmp " llc simple 
gcc-4.2 -m32 Output/sumarray-dbl.llc.s -o Output/sumarray-dbl.llc  -lm
-Wl,-melf_i386 -Wl,-melf_i386
/home/jo/Delta/llvm/projects/llvm-test/RunSafely.sh 500 0 /dev/null
Output/sumarray-dbl.out-llc Output/sumarray-dbl.llc 
/home/jo/Delta/llvm/projects/llvm-test/DiffOutput.sh
"/home/jo/Delta/llvm/Release/bin/fpcmp " llc sumarray-dbl 
gcc-4.2 -m32 Output/sumarray.llc.s -o Output/sumarray.llc  -lm
-Wl,-melf_i386 -Wl,-melf_i386
/home/jo/Delta/llvm/projects/llvm-test/RunSafely.sh 500 0 /dev/null
Output/sumarray.out-llc Output/sumarray.llc 
/home/jo/Delta/llvm/projects/llvm-test/DiffOutput.sh
"/home/jo/Delta/llvm/Release/bin/fpcmp " llc sumarray 
/home/jo/Delta/llvm/projects/llvm-test/RunSafely.sh 500 0 /dev/null
Output/build.out-cbe Output/build.cbe 
/home/jo/Delta/llvm/projects/llvm-test/DiffOutput.sh
"/home/jo/Delta/llvm/Release/bin/fpcmp " cbe build 

******************** TEST (cbe) 'build' FAILED! ********************
Execution Context Diff:
/home/jo/Delta/llvm/Release/bin/fpcmp: FP Comparison failed, not a
numeric difference between '1' and 's'
******************** TEST (cbe) 'build' ****************************
/home/jo/Delta/llvm/projects/llvm-test/RunSafely.sh 500 0 /dev/null
Output/build2.out-cbe Output/build2.cbe 
/home/jo/Delta/llvm/projects/llvm-test/DiffOutput.sh
"/home/jo/Delta/llvm/Release/bin/fpcmp " cbe build2 
******************** TEST (cbe) 'build2' FAILED! ********************
Execution Context Diff:
/home/jo/Delta/llvm/Release/bin/fpcmp: FP Comparison failed, not a
numeric difference between '2' and 's'
******************** TEST (cbe) 'build2' ****************************
/home/jo/Delta/llvm/projects/llvm-test/RunSafely.sh 500 0 /dev/null
Output/divides.out-cbe Output/divides.cbe 
/home/jo/Delta/llvm/projects/llvm-test/DiffOutput.sh
"/home/jo/Delta/llvm/Release/bin/fpcmp " cbe divides 
******************** TEST (cbe) 'divides' FAILED! ********************
Execution Context Diff:
/home/jo/Delta/llvm/Release/bin/fpcmp: FP Comparison failed, not a
numeric difference between 'U' and 's'
******************** TEST (cbe) 'divides' ****************************

--- snip ---
The lines that generate the errors are these:

    142 unsigned int main(unsigned int llvm_cbe_argc,
            unsigned char **llvm_cbe_argv) {
    181   *(&llvm_cbe_x) = { 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0 };
    182   *(&llvm_cbe_y) = { 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0 };
    183   *(&llvm_cbe_z) = { 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0 };
    191   llvm_cbe_z_tmp_0__PHI_TEMPORARY =
            { 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0 };   /* for PHI node */
    192   llvm_cbe_y_tmp_0__PHI_TEMPORARY =
            { 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0 };   /* for PHI node */
    193   llvm_cbe_x_tmp_0__PHI_TEMPORARY =
            { 0x0p+0, 0x0p+0, 0x0p+0, 0x0p+0 };   /* for PHI node */
    208   llvm_cbe_z_tmp_0 = llvm_cbe_z_tmp_0__PHI_TEMPORARY;
    209   llvm_cbe_y_tmp_0 = llvm_cbe_y_tmp_0__PHI_TEMPORARY;
    210   llvm_cbe_x_tmp_0 = llvm_cbe_x_tmp_0__PHI_TEMPORARY;
    211   llvm_cbe_tmp19 = (((llvm_cbe_x_tmp_0
              + { 0x1p+0, 0x0p+0, 0x0p+0, 0x0p+0 })
              + { 0x0p+0, 0x1p+0, 0x0p+0, 0x0p+0 })
              + { 0x0p+0, 0x0p+0, 0x1p+0, 0x0p+0 })
              + { 0x0p+0, 0x0p+0, 0x0p+0, 0x1p+0 };
    212   llvm_cbe_tmp37 = (((((llvm_cbe_y_tmp_0
              + { 0x1p+0, 0x1p+1, 0x0p+0, 0x0p+0 }) 
              + { 0x1p+0, 0x0p+0, 0x1p+1, 0x0p+0 }) 
              + { 0x1p+0, 0x0p+0, 0x0p+0, 0x1p+1 }) 
              + { 0x0p+0, 0x1p+0, 0x1p+1, 0x0p+0 }) 
              + { 0x0p+0, 0x1p+0, 0x0p+0, 0x1p+1 }) 
              + { 0x0p+0, 0x0p+0, 0x1p+0, 0x1p+1 };
    213   llvm_cbe_tmp49 = (((llvm_cbe_z_tmp_0 
              + { 0x1p+1, 0x1.8p+1, 0x1p+0, 0x0p+0 }) 
              + { 0x1p+0, 0x1p+0, 0x0p+0, 0x1p+1 }) 
              + { 0x1.8p+1, 0x0p+0, 0x1p+1, 0x1p+2 }) 
              + { 0x0p+0, 0x1p+2, 0x1.8p+2, 0x1p+0 };
    219     llvm_cbe_z_tmp_0__PHI_TEMPORARY = llvm_cbe_tmp49; 
              /* for PHI node */
    220     llvm_cbe_y_tmp_0__PHI_TEMPORARY = llvm_cbe_tmp37; 
              /* for PHI node */
    221     llvm_cbe_x_tmp_0__PHI_TEMPORARY = llvm_cbe_tmp19; 
              /* for PHI node */
    228   *(&llvm_cbe_x) = llvm_cbe_tmp19;
    229   *(&llvm_cbe_y) = llvm_cbe_tmp37;
    230   *(&llvm_cbe_z) = llvm_cbe_tmp49;






More information about the llvm-dev mailing list