optimization/10904: On sparc-sun-solinvalid (misaligned) register on sparc-sun-solaris2.8

[email protected]
Newsgroups gmane.comp.gcc.prs
Message-ID <20030521131045.9138.qmail__23771.5682633736$1053523047@sources.redhat.com>
>Number:         10904
>Category:       optimization
>Synopsis:       On sparc-sun-solinvalid (misaligned) register on sparc-sun-solaris2.8
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed May 21 13:16:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Kate Minola
>Release:        gcc-3.3Reading specs from /home/kate/public/gcc-3.3/SunOS-sparc/lib/gcc-lib/sparc-sun-solaris2.8/3.3/specs
>Organization:
>Environment:
%uname -a
SunOS galois 5.8 Generic_108528-18 sun4u sparc SUNW,Sun-Blade-1000
% gcc -v 
Reading specs from /home/kate/public/gcc-3.3/SunOS-sparc/lib/gcc-lib/sparc-sun-solaris2.8/3.3/specs
Configured with: ../gcc-3.3/configure --enable-languages=c --prefix=/home/kate/public/gcc-3.3/SunOS-sparc
Thread model: posix
gcc version 3.3
%
>Description:
/*
On sparc-sun-solaris2.8

gcc-3.3 -m64 -O2 -c foo.c

  gives

    /usr/ccs/bin/as: ... error: invalid (misaligned) register

Compiles successfully:

gcc-3.2.3 -m64 -O2 -c foo.c
gcc-3.3 -m64 -O0 -c foo.c
gcc-3.3 -O2 -c foo.c
*/

extern int foo1();
extern int foo2();

void foo(n,b)
int n;
int b;
{
  int i;
  int a;

  foo1();

  a = (long)(b * ((double) 0.1));

  for (i=0; i < n; i++) {
    foo2(a);
  }
}
>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
 Configured with: ../gcc-3.3/configure --enable-languages=cgcc-3.3
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.