[ARMhf] gcc produces assembler it can't compile
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Linaro GCC |
Fix Released
|
Low
|
Andrew Stubbs | ||
gcc |
Fix Released
|
Medium
|
|||
gcc-4.6 (Ubuntu) |
Fix Released
|
Medium
|
Unassigned |
Bug Description
I'm porting the sagemath software to ARM. I completed the port with ubuntu oneiric.
I upgraded to (a snapshot of) precise, and now a single file in the whole project doesn't build anymore.
Hence something has been broken from oneiric/armel to precise/armhf.
The attached mp.c is a "gcc -E" version of the problematic file, so it allows to easily reproduce the issue without fuss : if you compile it with "gcc -c -o mp.o mp.c -O3 -funroll-loops", then the assembler will find two cases of "branch out of range". Other switch combinations don't give problems, and the same combination is ok on x86_64 for example.
Ah, on precise the gcc version is the one of Fri, 20 Jan 2012 12:10:59 +100 uploaded by doko, and changelog "Merge with debian".
There's no problem giving more details or doing tests if you want.
tags: | added: armel armhf precise |
Changed in gcc-linaro: | |
status: | In Progress → Fix Committed |
Changed in gcc-linaro: | |
status: | Fix Committed → Fix Released |
Changed in gcc: | |
importance: | Unknown → Medium |
status: | Unknown → Fix Released |
The file compiles with "-O3 -funroll-loops -marm" (someone suggested I try)