This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Coldfire V4E addition to gcc
- From: Peter Barada <pbarada at mail dot wm dot sps dot mot dot com>
- To: gcc at gcc dot gnu dot org
- Date: Wed, 5 Dec 2001 13:22:31 -0500
- Subject: Coldfire V4E addition to gcc
I'm in the midst of adding in Coldfire v4e support to gcc-2.95.3, and
I'm wondering if it isn't time to reconfigure which variant of
floating point is used. Sonce I'm adding in the ColdFire FPU, this
would bring the variants to four:
1) TARGET_68881 - is an FPU attached, which may be a '881.
2) TARGET_FPA - is a Sun FPA attached.
3) TARGET_68040_ONLY - subset/superset of 68881.
4) TARGET_FPU_V4E - is a ColdFire v4e FPU attached.
The first three variants are used in the machine description code,
header files, and C code to control the instructions generated.
What I'd like to do is to split TARGET_68881 into two parts,
TARGET_FPU to indicate that *any* FPU is attached, and TARGET_68881 to
indicate that *only* a 68881 is attached.
Then code such as:
(define_expand "addsf3"
[(set (match_operand:SF 0 "general_operand" "")
(plus:SF (match_operand:SF 1 "general_operand" "")
(match_operand:SF 2 "general_operand" "")))]
"TARGET_68881 || TARGET_FPA"
"")
changes to:
(define_expand "addsf3"
[(set (match_operand:SF 0 "general_operand" "")
(plus:SF (match_operand:SF 1 "general_operand" "")
(match_operand:SF 2 "general_operand" "")))]
"TARGET_FPU"
"")
instead of:
(define_expand "addsf3"
[(set (match_operand:SF 0 "general_operand" "")
(plus:SF (match_operand:SF 1 "general_operand" "")
(match_operand:SF 2 "general_operand" "")))]
"TARGET_68881 || TARGET_FPA || TARGET_FPU_V4E"
"")
I also understand that I'll have to think of how to deal with the
TARGET_68040_ONLY flag, of which the V4e supports a subset.
Comments anybody?
--
Peter Barada Peter.Barada@motorola.com
Wizard 781-852-2768 (direct)
WaveMark Solutions(wholly owned by Motorola) 781-270-0193 (fax)