public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Ralf Gütlein <ralf.guetlein@aranea.de>
To: "gcc" <gcc@gcc.gnu.org>, "gnuh8" <gnuh8@pcserv.demon.co.uk>,
	"Kazu Hirata" <kazu@hxi.com>
Subject: h8300: less optimal (buggy?) compiler output with last build
Date: Wed, 16 Aug 2000 07:20:00 -0000	[thread overview]
Message-ID: <004901c0078d$3e8bb3e0$650b0d0a@Alzenau> (raw)

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

After installing the latest build of the h8 toolchain,
I realized that the compiler output (assembler source)
is worse than before (I used to use a snapshot from
December 99). One concrete example (cc the use of inline
functions):

extern unsigned char volatile TCW;

inline Watchdog()
{
  TCW = 0;
}

void testcase_1(void)
{
  TCW = 0;
}

void testcase_2(void)
{
  Watchdog();
}

The h8 assembler source (compiled with -Os -fomit-frame-pointer):

testcase_1: sub   r2l, r2l
            mov.b r2l, TCW
            rts

testcase_2: sub   r2l, r2l
            mov.b r2l, TCW
            mov.b TCW, r2l  ; <-- ????
            rts

As you can see, in the "inline" test case there is an erroneous read
of the previously written address.
This could be fatal (in case of an embedded system), when the
hardware doesn't "like" read access to a write-only position. So there
is good reason to treat this as a BUG.

As I mentioned before, this problem didn't occure in earlier versions
(e.g. Dec-99).

Is this issue present in other ports?
Will this be investigated by somebody?
Or, could anybody give hints where to look for this issue in the sources?

Regards,
Ralf

           .....
           ô ô )
-----oOOo--(_)---oOOo------

Ralf Guetlein
Biotest Medizintechnik GmbH
Industriestrasse 19
D-63755 Alzenau
Germany
---------------------------
Tel. +49 6023 9487-42
Fax. +49 6023 9487-33
ralf.guetlein@biotest-mt.de
---------------------------


             reply	other threads:[~2000-08-16  7:20 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-08-16  7:20 Ralf Gütlein [this message]
2000-08-16  8:21 Kazu Hirata
2000-08-16  9:00 ` Ralf Gütlein
2000-08-16  9:24   ` Alan Lehotsky
2000-08-18  5:45   ` Kai Ruottu
2000-08-21  7:36     ` Jeffrey A Law
     [not found] <200008161601.LAA05198@mail.teleteam.net>
2000-08-17  2:36 ` Ralf Gütlein
2000-08-18  1:47   ` Ralf Gütlein

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='004901c0078d$3e8bb3e0$650b0d0a@Alzenau' \
    --to=ralf.guetlein@aranea.de \
    --cc=gcc@gcc.gnu.org \
    --cc=gnuh8@pcserv.demon.co.uk \
    --cc=kazu@hxi.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).