[Bug inline-asm/32787] New: Sun Studio 12 Undefined symbol addl

2007-07-16 Thread markwright at internode dot on dot net
Compiling gcc-4.2.1-RC-20070712 with Sun Studio 12 on Solaris Express
Community Edition b66:

goanna% CC -V
CC: Sun C++ 5.9 SunOS_i386 2007/05/03
goanna%

With the environment variables:

CXXCPP=CC -E -Xs
CPP=cc -E -Xs
LD=/opt/jdsbld/bin/ld-wrapper
CXX64=/opt/SunStudio12/SUNWspro/bin/CC
CXX32=/opt/SunStudio12/SUNWspro/bin/CC
CXX=/opt/SunStudio12/SUNWspro/bin/CC
CC64=/opt/SunStudio12/SUNWspro/bin/cc
CC32=/opt/SunStudio12/SUNWspro/bin/cc
CC=/opt/SunStudio12/SUNWspro/bin/cc
CCDIR=/opt/SunStudio12/SUNWspro/bin

Configured like:

goanna% pwd
/h/goanna/2/ts/gcc/gcc-4.2.1-RC-20070712
goanna% mkdir objdir
goanna% cd objdir
goanna% ../configure --prefix=/h/goanna/1/s_5.11/gcc --with-as=/usr/ccs/bin/as
--with-ld=/usr/ccs/bin/ld --enable-shared
...

The make fails with:

/opt/SunStudio12/SUNWspro/bin/cc -c   -g -DIN_GCC -DHAVE_CONFIG_H -I. -I.
-I../../gcc -I../../gcc/. -I../../gcc/../include -I./../intl
-I../../gcc/../libcpp/include  -I../../gcc/../libdecnumber -I../libdecnumber   
-I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../include -I./../intl
-I../../gcc/../libcpp/include  -I../../gcc/../libdecnumber -I../libdecnumber
../../gcc/config/i386/driver-i386.c
"../../gcc/config/i386/driver-i386.c", line 96: warning: parameter in inline
asm statement unused: %0
"../../gcc/config/i386/driver-i386.c", line 96: warning: parameter in inline
asm statement unused: %2
"../../gcc/config/i386/driver-i386.c", line 96: warning: parameter in inline
asm statement unused: %3
"../../gcc/config/i386/driver-i386.c", line 96: warning: parameter in inline
asm statement unused: %4
"../../gcc/config/i386/driver-i386.c", line 103: warning: parameter in inline
asm statement unused: %0
"../../gcc/config/i386/driver-i386.c", line 103: warning: parameter in inline
asm statement unused: %2
"../../gcc/config/i386/driver-i386.c", line 103: warning: parameter in inline
asm statement unused: %3
"../../gcc/config/i386/driver-i386.c", line 103: warning: parameter in inline
asm statement unused: %4
"../../gcc/config/i386/driver-i386.c", line 113: warning: parameter in inline
asm statement unused: %0
"../../gcc/config/i386/driver-i386.c", line 113: warning: parameter in inline
asm statement unused: %2
"../../gcc/config/i386/driver-i386.c", line 113: warning: parameter in inline
asm statement unused: %3
"../../gcc/config/i386/driver-i386.c", line 113: warning: parameter in inline
asm statement unused: %4
"../../gcc/config/i386/driver-i386.c", line 117: warning: parameter in inline
asm statement unused: %0
"../../gcc/config/i386/driver-i386.c", line 117: warning: parameter in inline
asm statement unused: %2
"../../gcc/config/i386/driver-i386.c", line 117: warning: parameter in inline
asm statement unused: %3
"../../gcc/config/i386/driver-i386.c", line 117: warning: parameter in inline
asm statement unused: %4
"../../gcc/config/i386/driver-i386.c", line 118: warning: integer overflow
detected: op "<<"
/opt/SunStudio12/SUNWspro/bin/cc   -g -DIN_GCC -DHAVE_CONFIG_H  -o xgcc
gcc.o opts-common.o gcc-options.o gccspec.o \
  intl.o prefix.o version.o driver-i386.o  ../libcpp/libcpp.a
./../intl/libintl.a  ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a
Undefined   first referenced
 symbol in file
addldriver-i386.o
ld: fatal: Symbol referencing errors. No output written to xgcc
make[3]: *** [xgcc] Error 1
make[3]: Leaving directory
`/h/goanna/2/ts/gcc/gcc-4.2.1-RC-20070712/objdir/gcc'
make[2]: *** [all-stage1-gcc] Error 2
make[2]: Leaving directory `/h/goanna/2/ts/gcc/gcc-4.2.1-RC-20070712/objdir'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/h/goanna/2/ts/gcc/gcc-4.2.1-RC-20070712/objdir'
make: *** [all] Error 2

Compilation exited abnormally with code 2 at Mon Jul 16 23:17:21


-- 
   Summary: Sun Studio 12 Undefined symbol addl
   Product: gcc
   Version: 4.2.1
    Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: inline-asm
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: markwright at internode dot on dot net
 GCC build triplet: i386-pc-solaris2.11
  GCC host triplet: i386-pc-solaris2.11
GCC target triplet: i386-pc-solaris2.11


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32787



[Bug target/32787] Sun Studio 12 Undefined symbol addl

2007-07-16 Thread markwright at internode dot on dot net


--- Comment #2 from markwright at internode dot on dot net  2007-07-17 
04:39 ---
Subject: Re:  Sun Studio 12 Undefined symbol addl

> --- Comment #1 from pinskia at gcc dot gnu dot org  2007-07-17
> 04:26 --- Try this patch:

...

Thanks for the suggestion.  I have a patch which appears to work
in a simple test with Sun Studio 12.  I will submit the
svn diff gcc for the patch soon.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32787



[Bug target/32787] Sun Studio 12 Undefined symbol addl

2007-07-17 Thread markwright at internode dot on dot net


--- Comment #3 from markwright at internode dot on dot net  2007-07-17 
07:14 ---
Created an attachment (id=13929)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13929&action=view)
Proposed patch for bug 32787

The proposed patch compiles with Sun Studio 12.

I wrote the following little test program:

goanna% cat ../../gcc/config/i386/test_host_detect_local_cpu.c
#include 
#include 
#include 
#include 

#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "tm.h"

const char *host_detect_local_cpu (int argc, const char **argv);

int main(int argc, char **argv)
{
  const char *bargv[1] = { "arch" };
  const char *local_cpu = host_detect_local_cpu (1, bargv);
  printf("%s\n", local_cpu);
  return 0;
}

void fancy_abort(const char *a, int b, const char *c)
{
  abort();
}
goanna% 

Compiling it with Sun Studio 12 give the following result:

goanna% /opt/SunStudio12/SUNWspro/bin/cc -c -errtags=yes +w -g -DIN_GCC
-DHAVE_CONFIG_H -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../include
-I./../intl -I../../gcc/../libcpp/include  -I../../gcc/../libdecnumber
-I../libdecnumber-I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../include
-I./../intl -I../../gcc/../libcpp/include  -I../../gcc/../libdecnumber
-I../libdecnumber ../../gcc/config/i386/test_host_detect_local_cpu.c
goanna% /opt/SunStudio12/SUNWspro/bin/cc -c -errtags=yes +w -g -DIN_GCC
-DHAVE_CONFIG_H -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../include
-I./../intl -I../../gcc/../libcpp/include  -I../../gcc/../libdecnumber
-I../libdecnumber-I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../include
-I./../intl -I../../gcc/../libcpp/include  -I../../gcc/../libdecnumber
-I../libdecnumber ../../gcc/config/i386/driver-i386.c
"../../gcc/config/i386/driver-i386.c", line 126: warning: integer overflow
detected: op "<<" (E_INTEGER_OVERFLOW_DETECTED)
goanna% cc -o t driver-i386.o test_host_detect_local_cpu.o ../libcpp/libcpp.a
./../intl/libintl.a  ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a
goanna% ./t
-march=k8
goanna% 

After applying the patch, the gcc build with Sun Studio 12 then fails
due to following Sun Studio 12 bug (Sun intend to patch this soon,
and this Sun Studio 12 bug 6470247 has nothing to do with this
gcc patch):

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6470247


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32787



[Bug inline-asm/32788] New: Sun Studio 12 Undefined symbol addl

2007-07-17 Thread markwright at internode dot on dot net
Compiling gcc-4.2.1-RC-20070712 with Sun Studio 12 on Solaris Express
Community Edition b66:

goanna% CC -V
CC: Sun C++ 5.9 SunOS_i386 2007/05/03
goanna%

With the environment variables:

CXXCPP=CC -E -Xs
CPP=cc -E -Xs
LD=/opt/jdsbld/bin/ld-wrapper
CXX64=/opt/SunStudio12/SUNWspro/bin/CC
CXX32=/opt/SunStudio12/SUNWspro/bin/CC
CXX=/opt/SunStudio12/SUNWspro/bin/CC
CC64=/opt/SunStudio12/SUNWspro/bin/cc
CC32=/opt/SunStudio12/SUNWspro/bin/cc
CC=/opt/SunStudio12/SUNWspro/bin/cc
CCDIR=/opt/SunStudio12/SUNWspro/bin

Configured like:

goanna% pwd
/h/goanna/2/ts/gcc/gcc-4.2.1-RC-20070712
goanna% mkdir objdir
goanna% cd objdir
goanna% ../configure --prefix=/h/goanna/1/s_5.11/gcc --with-as=/usr/ccs/bin/as
--with-ld=/usr/ccs/bin/ld --enable-shared
...

The make fails with:

/opt/SunStudio12/SUNWspro/bin/cc -c   -g -DIN_GCC -DHAVE_CONFIG_H -I. -I.
-I../../gcc -I../../gcc/. -I../../gcc/../include -I./../intl
-I../../gcc/../libcpp/include  -I../../gcc/../libdecnumber -I../libdecnumber   
-I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../include -I./../intl
-I../../gcc/../libcpp/include  -I../../gcc/../libdecnumber -I../libdecnumber
../../gcc/config/i386/driver-i386.c
"../../gcc/config/i386/driver-i386.c", line 96: warning: parameter in inline
asm statement unused: %0
"../../gcc/config/i386/driver-i386.c", line 96: warning: parameter in inline
asm statement unused: %2
"../../gcc/config/i386/driver-i386.c", line 96: warning: parameter in inline
asm statement unused: %3
"../../gcc/config/i386/driver-i386.c", line 96: warning: parameter in inline
asm statement unused: %4
"../../gcc/config/i386/driver-i386.c", line 103: warning: parameter in inline
asm statement unused: %0
"../../gcc/config/i386/driver-i386.c", line 103: warning: parameter in inline
asm statement unused: %2
"../../gcc/config/i386/driver-i386.c", line 103: warning: parameter in inline
asm statement unused: %3
"../../gcc/config/i386/driver-i386.c", line 103: warning: parameter in inline
asm statement unused: %4
"../../gcc/config/i386/driver-i386.c", line 113: warning: parameter in inline
asm statement unused: %0
"../../gcc/config/i386/driver-i386.c", line 113: warning: parameter in inline
asm statement unused: %2
"../../gcc/config/i386/driver-i386.c", line 113: warning: parameter in inline
asm statement unused: %3
"../../gcc/config/i386/driver-i386.c", line 113: warning: parameter in inline
asm statement unused: %4
"../../gcc/config/i386/driver-i386.c", line 117: warning: parameter in inline
asm statement unused: %0
"../../gcc/config/i386/driver-i386.c", line 117: warning: parameter in inline
asm statement unused: %2
"../../gcc/config/i386/driver-i386.c", line 117: warning: parameter in inline
asm statement unused: %3
"../../gcc/config/i386/driver-i386.c", line 117: warning: parameter in inline
asm statement unused: %4
"../../gcc/config/i386/driver-i386.c", line 118: warning: integer overflow
detected: op "<<"
/opt/SunStudio12/SUNWspro/bin/cc   -g -DIN_GCC -DHAVE_CONFIG_H  -o xgcc
gcc.o opts-common.o gcc-options.o gccspec.o \
  intl.o prefix.o version.o driver-i386.o  ../libcpp/libcpp.a
./../intl/libintl.a  ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a
Undefined   first referenced
 symbol in file
addldriver-i386.o
ld: fatal: Symbol referencing errors. No output written to xgcc
make[3]: *** [xgcc] Error 1
make[3]: Leaving directory
`/h/goanna/2/ts/gcc/gcc-4.2.1-RC-20070712/objdir/gcc'
make[2]: *** [all-stage1-gcc] Error 2
make[2]: Leaving directory `/h/goanna/2/ts/gcc/gcc-4.2.1-RC-20070712/objdir'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/h/goanna/2/ts/gcc/gcc-4.2.1-RC-20070712/objdir'
make: *** [all] Error 2

Compilation exited abnormally with code 2 at Mon Jul 16 23:17:21


-- 
   Summary: Sun Studio 12 Undefined symbol addl
   Product: gcc
   Version: 4.2.1
    Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: inline-asm
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: markwright at internode dot on dot net
 GCC build triplet: i386-pc-solaris2.11
  GCC host triplet: i386-pc-solaris2.11
GCC target triplet: i386-pc-solaris2.11


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32788



[Bug inline-asm/32788] Sun Studio 12 Undefined symbol addl

2007-07-17 Thread markwright at internode dot on dot net


--- Comment #1 from markwright at internode dot on dot net  2007-07-17 
07:53 ---
Sorry, accidently created a duplicate of 32787, closing 32788.

*** This bug has been marked as a duplicate of 32787 ***


-- 

markwright at internode dot on dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32788



[Bug target/32787] Sun Studio 12 Undefined symbol addl

2007-07-17 Thread markwright at internode dot on dot net


--- Comment #6 from markwright at internode dot on dot net  2007-07-17 
07:57 ---
Created an attachment (id=13930)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=13930&action=view)
Patch to address comment #4.

Simplified as pinskia noted: "GCC_VERSION will always be defined even if you
are not compiling with GCC".


-- 

markwright at internode dot on dot net changed:

   What|Removed |Added

  Attachment #13929|0   |1
is obsolete||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32787



[Bug target/32787] Sun Studio 12 Undefined symbol addl

2007-07-17 Thread markwright at internode dot on dot net


--- Comment #5 from markwright at internode dot on dot net  2007-07-17 
07:53 ---
*** Bug 32788 has been marked as a duplicate of this bug. ***


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32787



[Bug target/32787] [4.2/4.3 Regression] Sun Studio 12 Undefined symbol addl

2007-08-13 Thread markwright at internode dot on dot net


--- Comment #8 from markwright at internode dot on dot net  2007-08-14 
02:54 ---
Created an attachment (id=14056)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14056&action=view)
Patch to address comment #7.

Thanks for the suggestion.  I think it should use the assembler when
compiling with Sun Studio 12.

I have updated the patch so it will compile with both Sun Studio 11
and Sun Studio 12.  This patch is used to build gcc 4.2.1 on Solaris
in the Open Solaris spec-files-extra project:

http://pkgbuild.svn.sourceforge.net/viewvc/pkgbuild/spec-files-extra/trunk/SFEgcc.spec?view=log
http://pkgbuild.svn.sourceforge.net/viewvc/pkgbuild/spec-files-extra/trunk/patches/gcc-01-bug-32787.diff?view=log

Thanks, Mark


-- 

markwright at internode dot on dot net changed:

   What|Removed |Added

  Attachment #13930|0   |1
is obsolete||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32787