This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

target/5381: __builtin_ia32_pmulhuw seems unknown to compiler



>Number:         5381
>Category:       target
>Synopsis:       __builtin_ia32_pmulhuw seems unknown to compiler
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Jan 14 12:46:02 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Myself
>Release:        gcc version 3.1 20020106 (Red Hat Linux Rawhide 3.1-0.17)
>Organization:
>Environment:
Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.1/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --host=i386-redhat-linux --with-system-zlib
Thread model: posix
>Description:
Strangely, while using -mmmx, __builtin_ia32_pmulhuw is unknown to the compiler, while, for example, __builtin_ia32_pmulhw seems known.  Anyhow, as you can see from the generated code, the compiler fails to emit an emmx instruction at the end of the routine, leading to possible floating point errors after return.
>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="test.c"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="test.c"


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]