public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug inline-asm/39114]  New: wrong register (xmm) used when compiling inline assembly with msse2 option
@ 2009-02-05 22:04 fabrice at mocana dot com
  2009-02-05 22:06 ` [Bug inline-asm/39114] " fabrice at mocana dot com
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: fabrice at mocana dot com @ 2009-02-05 22:04 UTC (permalink / raw)
  To: gcc-bugs

gcc-4.1 -v -save-temps -msse2 gnu_bug_test.c
Using built-in specs.
Target: i586-suse-linux
Configured with: ../configure --enable-threads=posix --prefix=/usr
--with-local-prefix=/usr/local --infodir=/usr/share/info
--mandir=/usr/share/man --libdir=/usr/lib --libexecdir=/usr/lib
--enable-languages=c,c++,objc,fortran,obj-c++,java,ada
--enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.1.3
--enable-ssp --disable-libssp --disable-libgcj --with-slibdir=/lib
--with-system-zlib --enable-shared --enable-__cxa_atexit
--enable-libstdcxx-allocator=new --program-suffix=-4.1
--enable-version-specific-runtime-libs --without-system-libunwind
--with-cpu=generic --host=i586-suse-linux
Thread model: posix
gcc version 4.1.3 20080612 (prerelease) (SUSE Linux)
 /usr/lib/gcc/i586-suse-linux/4.1.3/cc1 -E -quiet -v gnu_bug_test.c -msse2
-mtune=generic -fpch-preprocess -o gnu_bug_test.i
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/lib/gcc/i586-suse-linux/4.1.3/include
 /usr/lib/gcc/i586-suse-linux/4.1.3/../../../../i586-suse-linux/include
 /usr/include
End of search list.
 /usr/lib/gcc/i586-suse-linux/4.1.3/cc1 -fpreprocessed gnu_bug_test.i -quiet
-dumpbase gnu_bug_test.c -msse2 -mtune=generic -auxbase gnu_bug_test -version
-o gnu_bug_test.s
GNU C version 4.1.3 20080612 (prerelease) (SUSE Linux) (i586-suse-linux)
        compiled by GNU C version 4.1.3 20080612 (prerelease) (SUSE Linux).
GGC heuristics: --param ggc-min-expand=93 --param ggc-min-heapsize=119353
Compiler executable checksum: 706a2c29a4ed82ef6d0aa55a96477d0c
 /usr/lib/gcc/i586-suse-linux/4.1.3/../../../../i586-suse-linux/bin/as -V -Qy
-o gnu_bug_test.o gnu_bug_test.s
GNU assembler version 2.19 (i586-suse-linux) using BFD version (GNU Binutils;
openSUSE 11.1) 2.19
gnu_bug_test.s: Assembler messages:
gnu_bug_test.s:30: Error: suffix or operands invalid for `mul'
gnu_bug_test.s:31: Error: suffix or operands invalid for `add'
gnu_bug_test.s:32: Error: suffix or operands invalid for `adc'


gnu_bug_test.i
# 1 "gnu_bug_test.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "gnu_bug_test.c"
# 15 "gnu_bug_test.c"
int main()
{
    unsigned long a[1];
    unsigned long b[1];
    unsigned long r[2];

    a[0] = b[0] = 0xFFFFFFFF;

    { __asm __volatile ( "mul   %3                          \n\t" "add   %2, %0
                     \n\t" "adc   %3, %1                      \n\t" :
"=r"(r[0]),"=r"(r[1]) : "eax"(a[0]),"edx"(b[0]), "0"(r[0]),"1"(r[1]) : "cc");
};

    return 0;
}


-- 
           Summary: wrong register (xmm) used when compiling inline assembly
                    with msse2 option
           Product: gcc
           Version: 4.1.3
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: inline-asm
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: fabrice at mocana dot com
 GCC build triplet: i586-suse-linux
  GCC host triplet: i586-suse-linux
GCC target triplet: i586-suse-linux


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


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

* [Bug inline-asm/39114] wrong register (xmm) used when compiling inline assembly with msse2 option
  2009-02-05 22:04 [Bug inline-asm/39114] New: wrong register (xmm) used when compiling inline assembly with msse2 option fabrice at mocana dot com
@ 2009-02-05 22:06 ` fabrice at mocana dot com
  2009-02-05 22:07 ` pinskia at gcc dot gnu dot org
  2009-02-05 22:11 ` rguenth at gcc dot gnu dot org
  2 siblings, 0 replies; 4+ messages in thread
From: fabrice at mocana dot com @ 2009-02-05 22:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from fabrice at mocana dot com  2009-02-05 22:05 -------
Created an attachment (id=17253)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17253&action=view)
preprocessed file


-- 


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


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

* [Bug inline-asm/39114] wrong register (xmm) used when compiling inline assembly with msse2 option
  2009-02-05 22:04 [Bug inline-asm/39114] New: wrong register (xmm) used when compiling inline assembly with msse2 option fabrice at mocana dot com
  2009-02-05 22:06 ` [Bug inline-asm/39114] " fabrice at mocana dot com
@ 2009-02-05 22:07 ` pinskia at gcc dot gnu dot org
  2009-02-05 22:11 ` rguenth at gcc dot gnu dot org
  2 siblings, 0 replies; 4+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2009-02-05 22:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2009-02-05 22:06 -------
"eax"(a[0])

That is not how you use constraints.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|wrong register (xmm) used   |wrong register (xmm) used
                   |when compiling inline       |when compiling inline
                   |assembly with msse2 option  |assembly with msse2 option


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


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

* [Bug inline-asm/39114] wrong register (xmm) used when compiling inline assembly with msse2 option
  2009-02-05 22:04 [Bug inline-asm/39114] New: wrong register (xmm) used when compiling inline assembly with msse2 option fabrice at mocana dot com
  2009-02-05 22:06 ` [Bug inline-asm/39114] " fabrice at mocana dot com
  2009-02-05 22:07 ` pinskia at gcc dot gnu dot org
@ 2009-02-05 22:11 ` rguenth at gcc dot gnu dot org
  2 siblings, 0 replies; 4+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-02-05 22:11 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from rguenth at gcc dot gnu dot org  2009-02-05 22:11 -------
Indeed.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |INVALID


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


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

end of thread, other threads:[~2009-02-05 22:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-02-05 22:04 [Bug inline-asm/39114] New: wrong register (xmm) used when compiling inline assembly with msse2 option fabrice at mocana dot com
2009-02-05 22:06 ` [Bug inline-asm/39114] " fabrice at mocana dot com
2009-02-05 22:07 ` pinskia at gcc dot gnu dot org
2009-02-05 22:11 ` rguenth at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).