Bug 86167 - fesetround() does not set SSE floating-point rounding modes
Summary: fesetround() does not set SSE floating-point rounding modes
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: glibc
Version: 8.0
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2003-03-15 13:08 UTC by David Monniaux
Modified: 2016-11-24 15:03 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2003-04-29 07:19:14 UTC


Attachments (Terms of Use)

Description David Monniaux 2003-03-15 13:08:18 UTC
Description of problem:

fesetround() does not set SSE rounding modes, even though gcc now has options to
compile floating-point code to SSE.

(Checked in glibc source code.)

Version-Release number of selected component (if applicable): 2.2.93


How reproducible:

Always.

Steps to Reproduce:
1.Write code using fesetround() and whose results depends on the correct
rounding mode being set.
2.Compile with or without -march=pentium4 -msse -msse2
3.Compare the results.
    
Actual results:

The rounding mode is not set.

Expected results:

The rounding mode should be set.

Additional info:

Reported to glibc gnats as bug libc/4987.
Fix: use stmxcsr/ldmxcsr.

Comment 1 Ulrich Drepper 2003-04-29 07:19:14 UTC
I've checked in a patch in the official glibc CVS archive.  They should appear
in the next RPM.


Note You need to log in before you can comment on or make changes to this bug.