This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: h8300: less optimal (buggy?) compiler output with last build



----- Original Message -----
From: Kazu Hirata <kazu@hxi.com>
To: 'Ralf Gütlein' <ralf.guetlein@biotest-mt.de>; gcc <gcc@gcc.gnu.org>;
gnuh8
> > testcase_1: sub   r2l, r2l
> >             mov.b r2l, TCW
> >             rts
> >
> > testcase_2: sub   r2l, r2l
> >             mov.b r2l, TCW
> >             mov.b TCW, r2l  ; <-- ????
> >             rts
>
> This sounds serious.  I am using the latest gcc from the cvs, but this
> problem did not happen.  Does your version actually output TCW, not @_TCW?
> Have you applied any patches that are not in the cvs?
>
> Kazu Hirata
>

Sorry but I made a typo. Of course, what the compiler emits reads:

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

Still, this is a serious issue, which appears to be present on other
targets also. I can prove it at least for i586:

_testcase_1__Fv:
    movb    $0, _TCW
    ret
(...)
_testcase_2__Fv:
    movb    $0, _TCW
    movb    _TCW, %al   ; <-- ????
    ret

This is happening only with the c++-compiler, the c-compiler issues the
expected code. IMO this means that the error must be somewhere within
the target-independend part of the sources.

This applies to last weeks snapshot. I don't know how long this has been
an issue, because I haven't been involved in GCC for a while.


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
---------------------------



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]