[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [Bug 870990] Re: compile failure on ARMv7 hosts when compil
From: |
Peter Maydell |
Subject: |
[Qemu-devel] [Bug 870990] Re: compile failure on ARMv7 hosts when compiled for thumb if --enable-debug |
Date: |
Wed, 04 Jan 2012 15:24:45 -0000 |
** Changed in: qemu-linaro
Status: In Progress => Fix Committed
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/870990
Title:
compile failure on ARMv7 hosts when compiled for thumb if --enable-
debug
Status in QEMU:
New
Status in Linaro QEMU:
Fix Committed
Bug description:
QEMU won't compile if you configure --enable-debug and gcc is building
in Thumb2.
This is because we have picked r7 as the TCG_AREG0 (fixed register for
holding the CPU environment pointer), which clashes with its use as
the frame pointer in Thumb. (ARM compilation is fine because the frame
pointer is a different register there.)
We could fix this by forcing -fomit-frame-pointer when compiling the
relevant source files (which is what we do on x86 where register
pressure forces us to use EBP for AREG0) but it would be much better
to just move AREG0 to something else. We can use r6 if we want to
stick with a low-reg, or move up to r8 if we think a high-reg likely
to be a better choice.
TODO:
* compile with both r6 and r8, and do a trivial benchmarking run
* submit patch (before the upstream 1.0 freeze!)
NB: AREG0 is set in two places that need to stay in sync: dyngen-
exec.h and tcg/arm/tcg-target.h
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/870990/+subscriptions
- [Qemu-devel] [Bug 870990] Re: compile failure on ARMv7 hosts when compiled for thumb if --enable-debug,
Peter Maydell <=