First Last Prev Next    No search results available      Search page      Enter new bug
Bug#: 6897
Product:  
Component:  
Status: RESOLVED
Resolution: FIXED
Assigned To: Not yet assigned to anyone <unassigned@gcc.gnu.org>
Host:
Reported against  
Priority:  
Severity:  
Target Milestone:  
 
 
Target:
Reporter: 73065@bugs.debian.org
Add CC:
CC:
Remove selected CCs
Build:
URL:
Summary:
Keywords:
Known to work:
Known to fail:

Attachment Description Type Created Size Actions
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 6897 depends on: Show dependency tree
Show dependency graph
Bug 6897 blocks:

Additional Comments:






View Bug Activity   |   Format For Printing   |   Clone This Bug


Description:   Last confirmed: Opened: 2002-06-01 13:16
[ Reported to the Debian BTS as report #73065.
  Please CC 73065@bugs.debian.org on replies.
  Log of report can be found at http://bugs.debian.org/73065 ]

According to the bug submitter, both files should fail to compile with
the same warning. He has produced verifiably incorrect asm code using
the latter syntax. Rechecked with gcc-3.1.

intech20:/tmp$ cat foo.c
int
main(int argc,char * argv[]) {

  int i=0;

  __asm__ __volatile__ ("addl $1,%%ebx\n\t" : : "b" (i));

}
intech20:/tmp$ cc -fPIC foo.c -o foo
foo.c: In function `main':
foo.c:6: Invalid `asm' statement:
foo.c:6: fixed or forbidden register 3 (bx) was spilled for class BREG.
intech20:/tmp$ cat foo1.c
int
main(int argc,char * argv[]) {

  int i=0;

  __asm__ __volatile__ ("addl $1,%%ebx\n\t" : : "a" (i) : "ebx");

}
intech20:/tmp$ cc -fPIC foo1.c -o foo
intech20:/tmp$

Release:
3.1 (Debian) (Debian unstable)

Environment:
System: Debian GNU/Linux (unstable)
Architecture: i686
	
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name           Version        Description
+++-==============-==============-============================================
ii  gcc-3.1        3.1-2          The GNU C compiler.
ii  g++-3.1        3.1-2          The GNU C++ compiler.
ii  libstdc++4     3.1-2          The GNU stdc++ library version 3
ii  libstdc++4-dev 3.1-2          The GNU stdc++ library version 3 (developmen
ii  binutils       2.12.90.0.7-1  The GNU assembler, linker and binary utiliti
ii  libc6          2.2.5-6        GNU C Library: Shared libraries and Timezone
host: i386-linux
configured with: /mnt/data/gcc-3.1/gcc-3.1-3.1ds2/src/configure -v --enable-languages=c,c++,java,f77,proto,objc,ada --prefix=/usr --mandir=$\(prefix\)/share/man --infodir=$\(prefix\)/share/info --with-gxx-include-dir=$\(prefix\)/include/g++-v3-3.1 --enable-shared --with-system-zlib --enable-long-long --enable-nls --without-included-gettext --enable-clocale=gnu --enable-threads=posix --enable-java-gc=boehm --enable-objc-gc i386-linux

------- Comment #1 From Eric Botcazou 2002-12-19 09:25 -------
State-Changed-From-To: open->closed
State-Changed-Why: Implemented on mainline (which will likely becomes gcc 3.4).

First Last Prev Next    No search results available      Search page      Enter new bug