public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug inline-asm/43518] New: ARM register constraint for ldrd and strd instructions
@ 2010-03-25 15:06 paulius dot zaleckas at gmail dot com
2010-04-05 10:03 ` [Bug inline-asm/43518] " rearnsha at gcc dot gnu dot org
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: paulius dot zaleckas at gmail dot com @ 2010-03-25 15:06 UTC (permalink / raw)
To: gcc-bugs
ldrd and strd registers require pair of registers restricted to being an
even-numbered register and the odd-numbered register that immediately follows
it (for example, R10 and R11).
We need additional constraint when declaring unsigned long long to assign
appropriate register-pair so it will work with ldrd/strd in inline-asm.
Example:
register usigned long long x asm ("???");
asm volatile ("ldrd\t%0, [%1]" : "=r" (x) : "r" (io_base));
--
Summary: ARM register constraint for ldrd and strd instructions
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: inline-asm
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: paulius dot zaleckas at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43518
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug inline-asm/43518] ARM register constraint for ldrd and strd instructions
2010-03-25 15:06 [Bug inline-asm/43518] New: ARM register constraint for ldrd and strd instructions paulius dot zaleckas at gmail dot com
@ 2010-04-05 10:03 ` rearnsha at gcc dot gnu dot org
2010-04-20 13:39 ` paulius dot zaleckas at gmail dot com
2010-04-23 12:44 ` rearnsha at gcc dot gnu dot org
2 siblings, 0 replies; 4+ messages in thread
From: rearnsha at gcc dot gnu dot org @ 2010-04-05 10:03 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from rearnsha at gcc dot gnu dot org 2010-04-05 10:02 -------
Please supply a full testcase, and explain precisely the problem you are
seeing. I cannot determine from your initial post what problem you are seeing.
--
rearnsha at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |WAITING
GCC target triplet| |arm
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43518
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug inline-asm/43518] ARM register constraint for ldrd and strd instructions
2010-03-25 15:06 [Bug inline-asm/43518] New: ARM register constraint for ldrd and strd instructions paulius dot zaleckas at gmail dot com
2010-04-05 10:03 ` [Bug inline-asm/43518] " rearnsha at gcc dot gnu dot org
@ 2010-04-20 13:39 ` paulius dot zaleckas at gmail dot com
2010-04-23 12:44 ` rearnsha at gcc dot gnu dot org
2 siblings, 0 replies; 4+ messages in thread
From: paulius dot zaleckas at gmail dot com @ 2010-04-20 13:39 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from paulius dot zaleckas at gmail dot com 2010-04-20 13:39 -------
(In reply to comment #1)
> Please supply a full testcase, and explain precisely the problem you are
> seeing. I cannot determine from your initial post what problem you are seeing.
Currently I am extremely busy... unable to provide stand-alone test case.
But please look at this thread for the actual problem:
http://lkml.org/lkml/2010/3/20/37
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43518
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug inline-asm/43518] ARM register constraint for ldrd and strd instructions
2010-03-25 15:06 [Bug inline-asm/43518] New: ARM register constraint for ldrd and strd instructions paulius dot zaleckas at gmail dot com
2010-04-05 10:03 ` [Bug inline-asm/43518] " rearnsha at gcc dot gnu dot org
2010-04-20 13:39 ` paulius dot zaleckas at gmail dot com
@ 2010-04-23 12:44 ` rearnsha at gcc dot gnu dot org
2 siblings, 0 replies; 4+ messages in thread
From: rearnsha at gcc dot gnu dot org @ 2010-04-23 12:44 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from rearnsha at gcc dot gnu dot org 2010-04-23 12:44 -------
EABI configurations will guarantee that 64-bit sized objects will be in
even/odd register pairs. It's best not to use LDRD on the old ABI because in
general the ABI can't guarantee the alignment requirements for memory either.
Plus, the old ABI is heading for obsolescence. So not planning to fix.
--
rearnsha at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |RESOLVED
Resolution| |WONTFIX
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43518
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-04-23 12:44 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-03-25 15:06 [Bug inline-asm/43518] New: ARM register constraint for ldrd and strd instructions paulius dot zaleckas at gmail dot com
2010-04-05 10:03 ` [Bug inline-asm/43518] " rearnsha at gcc dot gnu dot org
2010-04-20 13:39 ` paulius dot zaleckas at gmail dot com
2010-04-23 12:44 ` rearnsha at gcc dot gnu dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).