All of lore.kernel.org
 help / color / mirror / Atom feed
* [parisc-linux] gcc and -march=2.0 flag bug
@ 2003-05-12 21:51 Guy Martin
  2003-05-12 21:58 ` Randolph Chung
  2003-05-12 22:59 ` John David Anglin
  0 siblings, 2 replies; 8+ messages in thread
From: Guy Martin @ 2003-05-12 21:51 UTC (permalink / raw)
  To: parisc-linux

Hi All,

I had some problems with gcc. When I set the CFLAGS/CXXFLAGS -march=2.0, most 
of the applications builded are b0rked. This occured on many stations. Using 
-march=1.1 works well.

Is this a 'feature' of unimplemented 64bit userspace or is this a bug ?

In case of a bug, what do you need to debug it.

Regards

-- 
Guy Martin
Gentoo - HPPA port Lead / IPv6 team
Lug Charleroi (Belgium)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [parisc-linux] gcc and -march=2.0 flag bug
  2003-05-12 21:51 [parisc-linux] gcc and -march=2.0 flag bug Guy Martin
@ 2003-05-12 21:58 ` Randolph Chung
  2003-05-12 22:59 ` John David Anglin
  1 sibling, 0 replies; 8+ messages in thread
From: Randolph Chung @ 2003-05-12 21:58 UTC (permalink / raw)
  To: Guy Martin; +Cc: parisc-linux

> I had some problems with gcc. When I set the CFLAGS/CXXFLAGS -march=2.0, most 
> of the applications builded are b0rked. This occured on many stations. Using 
> -march=1.1 works well.

How are they "b0rked"? Can you be a bit more precise?
 
> Is this a 'feature' of unimplemented 64bit userspace or is this a bug ?
> 
> In case of a bug, what do you need to debug it.

We compile pa20 32-bit kernels (e.g. for c3k) using 32-bit and
-march=2.0. seems to work. Do you have a test case for what you think
is broken? -march2.0 is really orthogonal to 64-bit userspace.

randolph
-- 
Randolph Chung
Debian GNU/Linux Developer, hppa/ia64 ports
http://www.tausq.org/

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [parisc-linux] gcc and -march=2.0 flag bug
  2003-05-12 21:51 [parisc-linux] gcc and -march=2.0 flag bug Guy Martin
  2003-05-12 21:58 ` Randolph Chung
@ 2003-05-12 22:59 ` John David Anglin
  1 sibling, 0 replies; 8+ messages in thread
From: John David Anglin @ 2003-05-12 22:59 UTC (permalink / raw)
  To: Guy Martin; +Cc: parisc-linux

> In case of a bug, what do you need to debug it.

See <http:/gcc.gnu.org/bugs.html>.  A GCC PR should be submitted
if you believe the problem is a compiler bug.

Versions earlier than 3.3 are effectively dead, so I would recommend
testing with a 3.3 snapshot.  3.3 will be released very soon, probably
this week.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [parisc-linux] gcc and -march=2.0 flag bug
@ 2003-05-13 16:53 Guy Martin
  2003-05-13 17:53 ` John David Anglin
  0 siblings, 1 reply; 8+ messages in thread
From: Guy Martin @ 2003-05-13 16:53 UTC (permalink / raw)
  To: parisc-linux

[-- Attachment #1: Type: text/plain, Size: 799 bytes --]

> How are they "b0rked"? Can you be a bit more precise?

I've attached the the end of the compilation log of groff which fail with 
-march=2.0 in CXXFLAGS. The same compilation works perfectly without this 
flags or with -march=1.1 instead.

> We compile pa20 32-bit kernels (e.g. for c3k) using 32-bit and
> -march=2.0. seems to work. Do you have a test case for what you think
> is broken? -march2.0 is really orthogonal to 64-bit userspace.

After looking again more closely, it seems that only g++ is affected by this
bug. The kernel on the station was also compiled with -march=2.0.
About the test case, I don't have the time to look more to this problem but I
can give you a access to the box since it's a test box.

--
Guy Martin
Gentoo - HPPA port Lead / IPv6 team
Lug Charleroi (Belgium)



[-- Attachment #2: groff-march2.0-short.log --]
[-- Type: text/x-log, Size: 5488 bytes --]

    rm -f $m-wrap; \
    if test "$m" = an; then \
      echo .do mso andoc.tmac >>$m-wrap; \
    fi; \
    echo .cp 1 >>$m-wrap; \
    echo .so $m >>$m-wrap; \
  done; \
fi
touch stamp-wrap
for f in man.tmac ms.tmac; do \
  rm -f $f-sed; \
  sed -e "s;@TMAC_AN_PREFIX@;;g" \
  -e "s;@TMAC_S_PREFIX@;;g" \
  /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/tmac/$f > $f-sed; \
done
touch stamp-sed
Making groff_ms.n from groff_ms.man
Making groff_man.n from groff_man.man
Making groff_me.n from groff_me.man
Making groff_mdoc.n from groff_mdoc.man
Making groff_trace.n from groff_trace.man
Making groff_www.n from groff_www.man
make[2]: Leaving directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/tmac'
make[2]: Entering directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/utils/afmtodit'
if test -n "/usr/bin/perl"; then \
  sed -e "s|/usr/bin/perl|/usr/bin/perl|" \
              -e "s|@VERSION@|1.18.1|" \
              /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/utils/afmtodit/afmtodit.pl >afmtodit; \
else \
  sed -e "s|@VERSION@|1.18.1|" \
              /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/utils/afmtodit/afmtodit.pl afmtodit; \
fi
chmod +x afmtodit
Making afmtodit.n from afmtodit.man
make[2]: Leaving directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/utils/afmtodit'
make[2]: Entering directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/roff/grog'
rm -f grog
sed -e "s|@g@||g" \
  -e "s|@VERSION@|1.18.1|" \
  -e 1s/a/a/ /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/roff/grog/grog.sh >grog
chmod +x grog
Making grog.n from grog.man
make[2]: Leaving directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/roff/grog'
make[2]: Entering directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/roff/nroff'
rm -f nroff
sed -e "s|@BINDIR@|/usr/bin|g" \
-e 1s/a/a/ \
-e "s|@VERSION@|1.18.1|" /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/roff/nroff/nroff.sh >nroff
chmod +x nroff
Making nroff.n from nroff.man
make[2]: Leaving directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/roff/nroff'
make[2]: Entering directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/mm'
rm -f mmroff
sed -e 's;/usr/bin/perl;/usr/bin/perl;' /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/mm/mmroff.pl >mmroff
chmod +x mmroff
Making mmroff.n from mmroff.man
Making groff_mm.n from groff_mm.man
Making groff_mmse.n from groff_mmse.man
make[2]: Leaving directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/mm'
make[2]: Entering directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/pic2graph'
rm -f pic2graph; \
sed -e "s|@g@||g" \
    -e "s|@VERSION@|1.18.1|" \
    -e 1s/a/a/ /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/pic2graph/pic2graph.sh >pic2graph; \
chmod +x pic2graph
Making pic2graph.n from pic2graph.man
make[2]: Leaving directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/pic2graph'
make[2]: Entering directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/eqn2graph'
rm -f eqn2graph; \
sed -e "s|@g@||g" \
    -e "s|@VERSION@|1.18.1|" \
    -e 1s/a/a/ /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/eqn2graph/eqn2graph.sh >eqn2graph; \
chmod +x eqn2graph
Making eqn2graph.n from eqn2graph.man
make[2]: Leaving directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/eqn2graph'
make[2]: Entering directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/groffer'
rm -f groffer; \
sed -e "s|@g@||g" \
    -e "s|@VERSION@|1.18.1|" \
    -e 1s/a/a/ /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/groffer/groffer.sh >groffer; \
chmod +x groffer
Making groffer.n from groffer.man
make[2]: Leaving directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/groffer'
make[2]: Entering directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/mom'
test -d examples || /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/mkinstalldirs examples
test -f penguin.ps || cp /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/mom/examples/penguin.ps .
GROFF_COMMAND_PREFIX=''; export GROFF_COMMAND_PREFIX; GROFF_BIN_PATH=`echo /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/roff/groff /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/roff/troff /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/devices/grops | sed -e 's|  *|:|g'`; export GROFF_BIN_PATH; /var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/roff/groff/groff -F/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/font -F/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/font -M/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/tmac -M/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/tmac -M/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/mom -Tps -mom examples/letter.mom >examples/letter.ps
troff: Failed assertion at line 654, file `number.cc'.
/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/src/roff/groff/groff: troff: Aborted
grops:<standard input>:5:warning: no final `x stop' command
make[2]: *** [examples/letter.ps] Error 2
make[2]: Leaving directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1/contrib/mom'
make[1]: *** [contrib/mom] Error 2
make[1]: Leaving directory `/var/tmp/portage/groff-1.18.1-r2/work/groff-1.18.1'
make: *** [all] Error 2

!!! ERROR: sys-apps/groff-1.18.1-r2 failed.
!!! Function src_compile, Line 57, Exitcode 2
!!! (no error message)


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [parisc-linux] gcc and -march=2.0 flag bug
  2003-05-13 16:53 [parisc-linux] gcc and -march=2.0 flag bug Guy Martin
@ 2003-05-13 17:53 ` John David Anglin
  2003-05-13 18:03   ` Guy Martin
  2003-05-13 18:18   ` [parisc-linux] gcc-3.3 and c++ Randolph Chung
  0 siblings, 2 replies; 8+ messages in thread
From: John David Anglin @ 2003-05-13 17:53 UTC (permalink / raw)
  To: gmsoft; +Cc: parisc-linux

> I've attached the the end of the compilation log of groff which fail with 
> -march=2.0 in CXXFLAGS. The same compilation works perfectly without this 
> flags or with -march=1.1 instead.

[...]

> troff: Failed assertion at line 654, file `number.cc'.

You didn't say which compiler version that you were using.

As I mentioned, the 3.2 branch is closed for bug fixes.  The failure
doesn't occur with 3.3.  It has a number of -march=2.0 fixes.  The
problem could be C++ related as well.  There are a huge number of C++
fixes in 3.3 relative to 3.3.

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [parisc-linux] gcc and -march=2.0 flag bug
  2003-05-13 17:53 ` John David Anglin
@ 2003-05-13 18:03   ` Guy Martin
  2003-05-13 18:18   ` [parisc-linux] gcc-3.3 and c++ Randolph Chung
  1 sibling, 0 replies; 8+ messages in thread
From: Guy Martin @ 2003-05-13 18:03 UTC (permalink / raw)
  To: parisc-linux

> You didn't say which compiler version that you were using.

Yes sorry, I forgot. I use gcc-3.2.2. I'll try gcc-3.3 asap.

Thanks

> As I mentioned, the 3.2 branch is closed for bug fixes.  The failure
> doesn't occur with 3.3.  It has a number of -march=2.0 fixes.  The
> problem could be C++ related as well.  There are a huge number of C++
> fixes in 3.3 relative to 3.3.
>
> Dave

-- 
Guy Martin
Gentoo - HPPA port Lead / IPv6 team
Lug Charleroi (Belgium)

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [parisc-linux] gcc-3.3 and c++
  2003-05-13 17:53 ` John David Anglin
  2003-05-13 18:03   ` Guy Martin
@ 2003-05-13 18:18   ` Randolph Chung
  2003-05-13 19:16     ` John David Anglin
  1 sibling, 1 reply; 8+ messages in thread
From: Randolph Chung @ 2003-05-13 18:18 UTC (permalink / raw)
  To: John David Anglin; +Cc: parisc-linux

> As I mentioned, the 3.2 branch is closed for bug fixes.  The failure
> doesn't occur with 3.3.  It has a number of -march=2.0 fixes.  The
> problem could be C++ related as well.  There are a huge number of C++
> fixes in 3.3 relative to 3.3.

Reading this inspired us to try compiling the 'menu' debian package 
with g++-3.3. Historically this package has been very problematic on
hppa because of its use of exceptions. It's been broken for a very long
time (couple years?).... but with latest g++-3.3 it actually compiles 
and works!!

Dave, many many thanks again for all your work on gcc.

randolph
-- 
Randolph Chung
Debian GNU/Linux Developer, hppa/ia64 ports
http://www.tausq.org/

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [parisc-linux] gcc-3.3 and c++
  2003-05-13 18:18   ` [parisc-linux] gcc-3.3 and c++ Randolph Chung
@ 2003-05-13 19:16     ` John David Anglin
  0 siblings, 0 replies; 8+ messages in thread
From: John David Anglin @ 2003-05-13 19:16 UTC (permalink / raw)
  To: randolph; +Cc: parisc-linux

> > As I mentioned, the 3.2 branch is closed for bug fixes.  The failure
> > doesn't occur with 3.3.  It has a number of -march=2.0 fixes.  The
> > problem could be C++ related as well.  There are a huge number of C++
> > fixes in 3.3 relative to 3.3.
> 
> Reading this inspired us to try compiling the 'menu' debian package 
> with g++-3.3. Historically this package has been very problematic on
> hppa because of its use of exceptions. It's been broken for a very long
> time (couple years?).... but with latest g++-3.3 it actually compiles 
> and works!!

I should also add that I've built lyx, another large C++ app, under
hpux and it seems to work.  I've also built it under linux but I
haven't tested it (no X).

Dave
-- 
J. David Anglin                                  dave.anglin@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2003-05-13 19:16 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-05-13 16:53 [parisc-linux] gcc and -march=2.0 flag bug Guy Martin
2003-05-13 17:53 ` John David Anglin
2003-05-13 18:03   ` Guy Martin
2003-05-13 18:18   ` [parisc-linux] gcc-3.3 and c++ Randolph Chung
2003-05-13 19:16     ` John David Anglin
  -- strict thread matches above, loose matches on Subject: below --
2003-05-12 21:51 [parisc-linux] gcc and -march=2.0 flag bug Guy Martin
2003-05-12 21:58 ` Randolph Chung
2003-05-12 22:59 ` John David Anglin

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.