[LLVMbugs] [Bug 21486] New: [mips] isel crash

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Wed Nov 5 04:46:33 PST 2014


http://llvm.org/bugs/show_bug.cgi?id=21486

            Bug ID: 21486
           Summary: [mips] isel crash
           Product: new-bugs
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: tima0900 at gmail.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified

Created attachment 13292
  --> http://llvm.org/bugs/attachment.cgi?id=13292&action=edit
c source file

Hi,
we have a c-file that crashes with clang.
Tried with the 3.5 release as well as with a fairly new clang(trunk about 1.5
months old).
It crashes during instruction selection. The input is attached.
The output of clang:
C:\Program Files\LLVM\bin>clang -c -EL -G 0 -O2 -mips1 -fsigned-char -target
mips-unknown-unknown -D__MIPSEL -DNDEBUG -w -S -I"D:\D7FBGen\include"
-I"D:\D7FBGen\sde\include"
"E:\REC_BEO_BR_39\GeneratedFiles\TDC-FM\BEO39_body.c" -o
"E:\REC_BEO_BR_39\GeneratedFiles\TDC-FM\BEO39_body.s" -v
clang version 3.5.0 (217039)
Target: mipsel-unknown-unknown
Thread model: posix
 "C:\Program Files\LLVM\bin\clang.exe" -cc1 -triple mipsel-unknown-unknown -S
-disable-free -main-file-name BEO39_body.c -mrelocation-model static
-mdisable-fp-elim -fmath-errno -no-integrated-as -mconstructor-aliases
-target-cpu mips1 -target-feature -n64 -target-feature +o32 -target-abi o32
-mfloat-abi hard -mllvm -mips-ssection-threshold=0 -v -dwarf-column-info
-coverage-file "E:\\REC_BEO_BR_39\\GeneratedFiles\\TDC-FM\\BEO39_body.s"
-resource-dir "C:\\Program Files\\LLVM\\bin\\..\\lib\\clang\\3.5.0" -D __MIPSEL
-D NDEBUG -I "D:\\D7FBGen\\include" -I "D:\\D7FBGen\\sde\\include" -O2 -w
-fno-dwarf-directory-asm -fdebug-compilation-dir "C:\\Program Files\\LLVM\\bin"
-ferror-limit 19 -fmessage-length 9999 -mstackrealign -fobjc-runtime=gcc
-fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp
-o "E:\\REC_BEO_BR_39\\GeneratedFiles\\TDC-FM\\BEO39_body.s" -x c
"E:\\REC_BEO_BR_39\\GeneratedFiles\\TDC-FM\\BEO39_body.c"
clang -cc1 version 3.5.0 based upon LLVM 3.5.0 default target
i686-pc-windows-gnu
ignoring nonexistent directory "/usr/local/include"
ignoring nonexistent directory "/usr/include"
#include "..." search starts here:
#include <...> search starts here:
 D:\D7FBGen\include
 D:\D7FBGen\sde\include
 C:\Program Files\LLVM\bin\..\lib\clang\3.5.0\include
End of search list.
fatal error: error in backend: Cannot select: 0x4cce258: f64 = select
0x4ccda80, 0x4ccdf90, 0x4ccd330 [ORD=18] [ID=57]
  0x4ccda80: i32 = or 0x4ccd4e0, 0x4ccc2e0 [ORD=16] [ID=56]
    0x4ccd4e0: i32 = MipsISD::CMovFP_T 0x4ccdb10, 0x4ccd960, 0x4ccc0a0,
0x4ccd9f0 [ORD=14] [ID=55]
      0x4ccdb10: i32 = Constant<1> [ID=17]
      0x4ccd960: i32 = Register %FCC0 [ID=18]
      0x4ccc0a0: i32 = Constant<0> [ID=19]
      0x4ccd9f0: glue = MipsISD::FPCmp 0x4cccf40, 0x4cccd90, 0x4ccc640 [ORD=14]
[ID=52]
        0x4cccf40: f32,ch = load 0x4ccdc30, 0x4ccce20,
0x4ccdd50<LD4[%field11](tbaa=<badref>)> [ORD=12] [ID=50]
          0x4ccce20: i32 = add 0x4ccca30, 0x4ccde70 [ORD=11] [ID=33]
            0x4ccca30: i32,ch = CopyFromReg 0x48fb6c0, 0x4ccc910 [ORD=2]
[ID=24]
              0x4ccc910: i32 = Register %vreg357 [ID=1]
            0x4ccde70: i32 = Constant<28> [ID=5]
          0x4ccdd50: i32 = undef [ID=3]
        0x4cccd90: f32,ch = load 0x48fb6c0, 0x4ccbe68,
0x4ccdd50<LD4[ConstantPool]> [ID=38]
          0x4ccbe68: i32 = add 0x4ccc5b0, 0x4ccc760 [ID=35]
            0x4ccc5b0: i32 = MipsISD::Hi 0x4ccc520 [ID=25]
              0x4ccc520: i32 = TargetConstantPool<float 0x3E112E0BE0000000> 0
[TF=5] [ID=20]
            0x4ccc760: i32 = MipsISD::Lo 0x4ccd7b0 [ID=26]
              0x4ccd7b0: i32 = TargetConstantPool<float 0x3E112E0BE0000000> 0
[TF=6] [ID=21]
          0x4ccdd50: i32 = undef [ID=3]
        0x4ccc640: i32 = Constant<4> [ID=16]
    0x4ccc2e0: i32 = MipsISD::CMovFP_T 0x4ccdb10, 0x4ccd960, 0x4ccc0a0,
0x4ccc250 [ORD=15] [ID=54]
      0x4ccdb10: i32 = Constant<1> [ID=17]
      0x4ccd960: i32 = Register %FCC0 [ID=18]
      0x4ccc0a0: i32 = Constant<0> [ID=19]
      0x4ccc250: glue = MipsISD::FPCmp 0x4cccf40, 0x4cccf40, 0x4ccdb10 [ORD=15]
[ID=51]
        0x4cccf40: f32,ch = load 0x4ccdc30, 0x4ccce20,
0x4ccdd50<LD4[%field11](tbaa=<badref>)> [ORD=12] [ID=50]
          0x4ccce20: i32 = add 0x4ccca30, 0x4ccde70 [ORD=11] [ID=33]
            0x4ccca30: i32,ch = CopyFromReg 0x48fb6c0, 0x4ccc910 [ORD=2]
[ID=24]
              0x4ccc910: i32 = Register %vreg357 [ID=1]
            0x4ccde70: i32 = Constant<28> [ID=5]
          0x4ccdd50: i32 = undef [ID=3]
        0x4cccf40: f32,ch = load 0x4ccdc30, 0x4ccce20,
0x4ccdd50<LD4[%field11](tbaa=<badref>)> [ORD=12] [ID=50]
          0x4ccce20: i32 = add 0x4ccca30, 0x4ccde70 [ORD=11] [ID=33]
            0x4ccca30: i32,ch = CopyFromReg 0x48fb6c0, 0x4ccc910 [ORD=2]
[ID=24]
              0x4ccc910: i32 = Register %vreg357 [ID=1]
            0x4ccde70: i32 = Constant<28> [ID=5]
          0x4ccdd50: i32 = undef [ID=3]
        0x4ccdb10: i32 = Constant<1> [ID=17]
  0x4ccdf90: f64,ch = load 0x48fb6c0, 0x4ccba78, 0x4ccdd50<LD8[ConstantPool]>
[ID=39]
    0x4ccba78: i32 = add 0x4ccbb08, 0x4ccd8d0 [ID=36]
      0x4ccbb08: i32 = MipsISD::Hi 0x4ccceb0 [ID=27]
        0x4ccceb0: i32 = TargetConstantPool<double 1.000000e-09> 0 [TF=5]
[ID=22]
      0x4ccd8d0: i32 = MipsISD::Lo 0x4ccc400 [ID=28]
        0x4ccc400: i32 = TargetConstantPool<double 1.000000e-09> 0 [TF=6]
[ID=23]
    0x4ccdd50: i32 = undef [ID=3]
  0x4ccd330: f64 = fp_extend 0x4cccf40 [ORD=13] [ID=53]
    0x4cccf40: f32,ch = load 0x4ccdc30, 0x4ccce20,
0x4ccdd50<LD4[%field11](tbaa=<badref>)> [ORD=12] [ID=50]
      0x4ccce20: i32 = add 0x4ccca30, 0x4ccde70 [ORD=11] [ID=33]
        0x4ccca30: i32,ch = CopyFromReg 0x48fb6c0, 0x4ccc910 [ORD=2] [ID=24]
          0x4ccc910: i32 = Register %vreg357 [ID=1]
        0x4ccde70: i32 = Constant<28> [ID=5]
      0x4ccdd50: i32 = undef [ID=3]
In function: _ZN18REC_BEO_BR_39_User4stepEv
Stack dump:
0.      Program arguments: C:\Program Files\LLVM\bin\clang.exe -cc1 -triple
mipsel-unknown-unknown -S -disable-free -main-file-name BEO39_body.c
-mrelocation-model static -mdisable-fp-elim -fmath-errno -no-integrated-as
-mconstructor-aliases -target-cpu mips1 -target-feature -n64 -target-feature
+o32 -target-abi o32 -mfloat-abi hard -mllvm -mips-ssection-threshold=0 -v
-dwarf-column-info -coverage-file
E:\REC_BEO_BR_39\GeneratedFiles\TDC-FM\BEO39_body.s -resource-dir C:\Program
Files\LLVM\bin\..\lib\clang\3.5.0 -D __MIPSEL -D NDEBUG -I D:\D7FBGen\include
-I D:\D7FBGen\sde\include -O2 -w -fno-dwarf-directory-asm
-fdebug-compilation-dir C:\Program Files\LLVM\bin -ferror-limit 19
-fmessage-length 9999 -mstackrealign -fobjc-runtime=gcc
-fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp
-o E:\REC_BEO_BR_39\GeneratedFiles\TDC-FM\BEO39_body.s -x c
E:\REC_BEO_BR_39\GeneratedFiles\TDC-FM\BEO39_body.c
1.      <eof> parser at end of file
2.      Code generation
3.      Running pass 'Function Pass Manager' on module
'E:\REC_BEO_BR_39\GeneratedFiles\TDC-FM\BEO39_body.c'.
4.      Running pass 'MIPS DAG->DAG Pattern Instruction Selection' on function
'@_ZN18REC_BEO_BR_39_User4stepEv'
clang.exe: error: clang frontend command failed with exit code 70 (use -v to
see invocation)
clang version 3.5.0 (217039)
Target: mipsel-unknown-unknown
Thread model: posix
clang.exe: note: diagnostic msg: PLEASE submit a bug report to
http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and
associated run script.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20141105/64d092e0/attachment.html>


More information about the llvm-bugs mailing list