[4.8 Regression] unable to find a register to spill in class 'LO_REGS'
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Linaro GCC |
Triaged
|
Medium
|
Kumar Venkataramanan | ||
gcc |
New
|
Medium
|
|||
gcc-4.8 (Ubuntu) |
New
|
Undecided
|
Unassigned |
Bug Description
seen with the 4.8 branch on arm-linux-
--with-arch=armv7-a --with-
omitting the -fno-tree-dce works around the issue. not seen with the 4.7 branch and trunk 20140306.
$ g++ -std=c++11 -fPIC -fno-tree-dce -fno-exceptions -fno-omit-
../Source/
../Source/
../Source/
(insn 335 334 336 20 (parallel [
(set (reg:SI 3 r3)
]) ../Source/
(expr_
(nil)))
../Source/
Preprocessed source stored into /tmp/ccb0Osgc.out file, please attach this to your bugreport.
Changed in gcc-linaro: | |
assignee: | nobody → Kumar Venkataramanan (venkataramanan-kumar) |
Changed in gcc: | |
importance: | Unknown → Medium |
status: | Unknown → New |
Changed in gcc-linaro: | |
importance: | Undecided → Medium |
status: | New → Triaged |
Created attachment 32424
preprocessed source
seen with the 4.8 branch on arm-linux- gnueabihf, configured with fpu=vfpv3- d16 --with-float=hard --with-mode=thumb
--with-arch=armv7-a --with-
omitting the -fno-tree-dce works around the issue. not seen with the 4.7 branch and trunk 20140306.
$ g++ -std=c++11 -fPIC -fno-tree-dce -fno-exceptions -fno-omit- frame-pointer -c -g -O2 JITArithmetic32 _64.ii JavaScriptCore/ jit/JITArithmet ic32_64. cpp: In member function 'void JSC::JIT: :emit_op_ add(JSC: :Instruction* )': JavaScriptCore/ jit/JITArithmet ic32_64. cpp:526: 1: error: unable to find a register to spill in class 'LO_REGS' JavaScriptCore/ jit/JITArithmet ic32_64. cpp:526: 1: error: this is the insn:
(ior: SI (eq:SI (reg/v:SI 112 [ op ])
(reg/ v:SI 110 [ dst ]))
( eq:SI (reg/v:SI 111 [ op ])
(reg/ v:SI 110 [ dst ]))))
(clobber (reg:CC 100 cc)) JavaScriptCore/ jit/JITArithmet ic32_64. cpp:514 295 {*ior_scc_scc} list:REG_ UNUSED (reg:CC 100 cc) JavaScriptCore/ jit/JITArithmet ic32_64. cpp:526: confused by earlier errors, bailing out
../Source/
../Source/
../Source/
(insn 335 334 336 20 (parallel [
(set (reg:SI 3 r3)
]) ../Source/
(expr_
(nil)))
../Source/
Preprocessed source stored into /tmp/ccb0Osgc.out file, please attach this to your bugreport.