This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug optimization/14040] New: ARM cross compiler: error: could not split insn


gcc spits out the following error: 

ni_morphology.c: In function `NI_BinaryErosion':
ni_morphology.c:277: error: could not split insn
(insn 3632 1279 3633 (nil) (cond_exec (ne (reg:CC 24 cc)
            (const_int 0 [0x0]))
        (set (reg:SI 2 r2)
            (plus:SI (reg/f:SI 13 sp)
                (const_int 3388 [0xd3c])))) 507 {ffssi2+1} (nil)
    (nil))
ni_morphology.c:277: internal compiler error: in final_scan_insn, at final.c:2793

gcc cmdline to reproduce: 

 /opt/cross/bin/arm-linux-gcc -fexpensive-optimizations  -fPIC ni_prep2.c -o
ni_prep2.o  -fif-conversion2  -fcse-follow-jumps -frerun-cse-after-loop
-fomit-frame-pointer

Preprocessed file to reproduce error:
http://www.linuxtr.net/gcc/ni_prep2.c
(Apologies for the size of the file, it took me long enough to reduce it this much)

Removal of any one of the above optimizations will allow the compile to complete. 

If -O2 is given the compiler will enter an infinite loop and eat memory until it
runs out. strace shows it looping on mmap(65536.....) and getting a new block of
memory for each mmap

Broken Versions: 3.3.2, 3.3.1. 
Known Working Versions: 2.95.3

Native i386 gcc works fine, so does x86_64 native.

-- 
           Summary: ARM cross compiler: error: could not split insn
           Product: gcc
           Version: 3.3.2
            Status: UNCONFIRMED
          Severity: critical
          Priority: P2
         Component: optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: phillim2 at comcast dot net
                CC: gcc-bugs at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14040


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]