Subject: CVS commit: src/gnu/dist/gcc/gcc/config/sparc
To: None <source-changes@NetBSD.org>
From: Martin Husemann <martin@netbsd.org>
List: source-changes
Date: 05/02/2004 11:00:06
Module Name: src
Committed By: martin
Date: Sun May 2 11:00:06 UTC 2004
Modified Files:
src/gnu/dist/gcc/gcc/config/sparc: sparc-protos.h sparc.c sparc.md
Log Message:
Bring in a change from gcc-current to fix double -> unsigned long
conversions and generally avoid 128 bit (emulated) floats in between.
This fixes heaps of problems in perl >= 5.7.1, where integer values
and unsigned values are separated by the interpreter.
Thu Feb 26 18:40:40 2004 UTC by ebotcazou:
* config/sparc/sparc-protos.h (sparc_emit_floatunsdi): Add 'mode'.
(sparc_emit_fixunsdi): New prototype.
* config/sparc/sparc.c (sparc_emit_floatunsdi): Use 'mode' argument.
(sparc_emit_fixunsdi): New function.
* config/sparc/sparc.md (floatunsdisf2): Use 'general_operand' for
operand 1. Pass SFmode to sparc_emit_floatunsdi.
(floatunsdidf2): Use 'general_operand' for operand 1. Pass DFmode
to sparc_emit_floatunsdi.
(fixuns_truncsfdi2): New expander.
(fixuns_truncdfdi2): Likewise.
To generate a diff of this commit:
cvs rdiff -r1.1.1.1 -r1.2 src/gnu/dist/gcc/gcc/config/sparc/sparc-protos.h
cvs rdiff -r1.3 -r1.4 src/gnu/dist/gcc/gcc/config/sparc/sparc.c
cvs rdiff -r1.6 -r1.7 src/gnu/dist/gcc/gcc/config/sparc/sparc.md
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.