public inbox for crossgcc@sourceware.org
 help / color / mirror / Atom feed
From: Julien Ducourthial <julien.ducourthial@detexis.thomson-csf.com>
To: Michael Schwingen <rincewind@discworld.dascon.de>
Cc: Roger Racine <rracine@draper.com>, crossgcc@sources.redhat.com
Subject: Re: PowerPC and Volatile
Date: Tue, 05 Dec 2000 01:13:00 -0000	[thread overview]
Message-ID: <3A2CB0EA.F341DC6@detexis.thomson-csf.com> (raw)
In-Reply-To: <20001204110249.A361@tubul.dascon.de>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1340 bytes --]

Michael Schwingen wrote:
On Fri, Dec 01, 2000 at 03:36:56PM -0500, Roger Racine
wrote:
> Naturally, the locations we are talking about are declared volatile,
so the
> compiler does not optimize the code, but the PowerPC has its own
> optimization in the form of pipelining, and it seems to be causing
this
> problem.
>
> The question is, should the compiler be inserting an "eieio" instruction
at
> the sequence points in the code, such as the end of the loop mentioned
> above?  This PPC instruction tells the processor to hold off
its
> pipelining.  We have been inserting them in the code ourselves,
but it is a
> bit of a pain to have to do it.
If this memory is in some IO space, it might be easier to set up the
MMU so
that this address range is set to noncached/serialzed mode[1], ie.
read/write accesses are not re-ordered by the bus logic.
cu
Michael
[1] Not sure about the exact term on the PPC, this is from the 68040
manual,
but the PPC has the same under a different name.
 
Unfortunately there is no such thing on PowerPC, even when set as non-cached
and guarded (the most conservative setting) you may get out of order accesses.
-- 
Julien Ducourthial       julien.ducourthial@detexis.thomson-csf.com 
LDB
Dépt SIA, SBU ISA          
THOMSON-CSF DETEXIS
 

  reply	other threads:[~2000-12-05  1:13 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-12-01 12:38 Roger Racine
2000-12-01 12:55 ` Peter Barada
2000-12-05  4:14   ` Roger Racine
2000-12-05  8:01     ` Peter Barada
2000-12-04  2:16 ` Michael Schwingen
2000-12-05  1:13   ` Julien Ducourthial [this message]
2000-12-05  6:06     ` Michael Schwingen
2000-12-05  6:56       ` Julien Ducourthial
2000-12-05 10:22         ` Michael Schwingen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3A2CB0EA.F341DC6@detexis.thomson-csf.com \
    --to=julien.ducourthial@detexis.thomson-csf.com \
    --cc=crossgcc@sources.redhat.com \
    --cc=rincewind@discworld.dascon.de \
    --cc=rracine@draper.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).