[armel] unable to find a register to spill in class 'GENERAL_REGS'

Bug #506358 reported by Matthias Klose
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Linaro GCC
Fix Released
Low
Unassigned
gcc-4.4 (Ubuntu)
Fix Released
High
Unassigned
openoffice.org (Ubuntu)
Fix Released
High
Unassigned

Bug Description

Binary package hint: gcc-4.4

OOo build failure in lucid, works with -O[012] or with -marm

g++ -fmessage-length=0 -c -fno-omit-frame-pointer -Os -fno-strict-aliasing -c datetime.ii
/home/doko/ooo/l/openoffice.org-3.1.1/ooo-build/build/OOO310_m19/tools/source/datetime/datetime.cxx: In static member function 'static DateTime DateTime::CreateFromWin32FileDateTime(const sal_uInt32&, const sal_uInt32&)':
/home/doko/ooo/l/openoffice.org-3.1.1/ooo-build/build/OOO310_m19/tools/source/datetime/datetime.cxx:445: error: unable to find a register to spill in class 'GENERAL_REGS'
/home/doko/ooo/l/openoffice.org-3.1.1/ooo-build/build/OOO310_m19/tools/source/datetime/datetime.cxx:445: error: this is the insn:
(insn 33 34 36 2 /home/doko/ooo/l/openoffice.org-3.1.1/ooo-build/build/OOO310_m19/tools/source/datetime/datetime.cxx:424 (parallel [
            (set (reg:DI 168)
                (plus:DI (reg:DI 168)
                    (reg:DI 270 [ nDays.244 ])))
            (clobber (reg:CC 24 cc))
        ]) 1 {*arm_adddi3} (expr_list:REG_UNUSED (reg:CC 24 cc)
        (nil)))
/home/doko/ooo/l/openoffice.org-3.1.1/ooo-build/build/OOO310_m19/tools/source/datetime/datetime.cxx:445: confused by earlier errors, bailing out

Revision history for this message
Matthias Klose (doko) wrote :
Changed in gcc-4.4 (Ubuntu):
importance: Undecided → High
milestone: none → lucid-alpha-2
status: New → Confirmed
Matthias Klose (doko)
Changed in openoffice.org (Ubuntu):
importance: Undecided → High
milestone: none → lucid-alpha-2
status: New → In Progress
Changed in gcc-4.4 (Ubuntu):
milestone: lucid-alpha-2 → lucid-alpha-3
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package openoffice.org - 1:3.1.1-5ubuntu3

---------------
openoffice.org (1:3.1.1-5ubuntu3) lucid; urgency=low

  * Fix first build failure on ARM with -mthumb. LP: #506358.
  * Build with -O2 instead of -Os on ARM to work around GCC register
    spill errors.
 -- Matthias Klose <email address hidden> Tue, 12 Jan 2010 14:31:54 +0100

Changed in openoffice.org (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Matthias Klose (doko) wrote :

not seen with GCC trunk 20100106

Revision history for this message
Ramana Radhakrishnan (ramana) wrote :

 I wonder if this might need to be backported to 4.4

http://gcc.gnu.org/ml/gcc-patches/2009-11/msg01545.html

Revision history for this message
Matthias Klose (doko) wrote :

this patch is already applied in the current gcc-4.4 package

Revision history for this message
Matthias Klose (doko) wrote :

some more preprocessed sources from the same build

Revision history for this message
Matthias Klose (doko) wrote :

updated patch for OOo. This is a replacement. Note that the patch needs to be reenabled in the apply file

Revision history for this message
David Sugar (dyfet-deactivatedaccount) wrote :

This issue also effects building busybox. Will try the same using -O2 there.

Revision history for this message
Matthias Klose (doko) wrote :

builds with -Os -fno-schedule-insns.

Revision history for this message
Matthias Klose (doko) wrote :
Revision history for this message
Chris Cheney (ccheney) wrote :

Thanks, added the newest patch to upstream ooo-build and it will be in Ubuntu's openoffice.org 1:3.2.0~rc4-1ubuntu1.

Matthias Klose (doko)
tags: added: toolchain
Loïc Minier (lool)
tags: added: thumb
Changed in gcc-4.4 (Ubuntu):
milestone: lucid-alpha-3 → none
Changed in gcc-linaro:
importance: Undecided → High
importance: High → Low
Revision history for this message
Ulrich Weigand (uweigand) wrote :

 g++ -fmessage-length=0 -c -fno-omit-frame-pointer -Os -fno-strict-aliasing datetime.ii
succeeds with no error on
 g++-4.4.real (Ubuntu/Linaro 4.4.4-8ubuntu1) 4.4.5 20100728 (prerelease)

This might have been fixed by the Linaro compiler ...

Michael Hope (michaelh1)
tags: added: ice
Revision history for this message
Michael Hope (michaelh1) wrote :

Can't reproduce with gcc-linaro-4.4-2010.09. Confirmed that the http://gcc.gnu.org/ml/gcc-patches/2009-11/msg01545.html patch is present.

Based on that, marking as invalid.

Changed in gcc-linaro:
status: New → Fix Released
Revision history for this message
Michael Hope (michaelh1) wrote :

...sorry, as fix released.

Revision history for this message
Steve Langasek (vorlon) wrote :

gcc-4.4 is built on Linaro GCC 4.4-2010.09 or later, so this should be fixed here also.

Changed in gcc-4.4 (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.