diff options
| author | LIU Hao <lh_mouse@126.com> | 2025-10-14 14:46:46 +0800 |
|---|---|---|
| committer | Uros Bizjak <ubizjak@gmail.com> | 2025-11-21 14:08:48 +0100 |
| commit | d9b785ab9255fe16ee6d9e93034704112735cfb6 (patch) | |
| tree | 9168592c4a7ae2c55ddf79f597808bb95272c853 /libjava/classpath/java/util/BitSet.java | |
| parent | 1c0897caa516bc564258266860e3b75054b9e78e (diff) | |
libgcc: Pass x87 control word in the correct type
The x87 control word should be passed as an `unsigned short`. Previous
code passed `unsigned int`, and when building with `-masm=intel`,
__asm__ __volatile__ ("fnstcw\t%0" : "=m" (_cw));
could expand to `fnstcw DWORD PTR [esp+48]` and cause errors like
{standard input}: Assembler messages:
{standard input}:7137: Error: operand size mismatch for `fnstcw'
libgcc/ChangeLog:
PR target/122275
* config/i386/32/dfp-machine.h (DFP_GET_ROUNDMODE): Change `_frnd_orig` to
`unsigned short` for x87 control word.
(DFP_SET_ROUNDMODE): Manipulate the x87 control word as `unsigned short`,
and manipulate the MXCSR as `unsigned int`.
Signed-off-by: LIU Hao <lh_mouse@126.com>
Diffstat (limited to 'libjava/classpath/java/util/BitSet.java')
0 files changed, 0 insertions, 0 deletions
