summaryrefslogtreecommitdiff
path: root/gcc/config/m68k/m68k-protos.h
diff options
context:
space:
mode:
authorpbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4>2006-01-22 15:01:02 +0000
committerpbrook <pbrook@138bc75d-0d04-0410-961f-82ee72b054a4>2006-01-22 15:01:02 +0000
commit58c23110615071a5addd5f14bb287f568eef7b4d (patch)
treec6dcb5bb9c43aba31c2d1769effa3ba9552b9441 /gcc/config/m68k/m68k-protos.h
parent80111498c098f10a17a0d6645f0d065ccc5ad145 (diff)
downloadgcc-58c23110615071a5addd5f14bb287f568eef7b4d.tar.gz
2006-01-22 Paul Brook <paul@codesourcery.com>
Peter Barada <peter@the-baradas.com> * config/m68k/m68k.md: Add Coldfire FPU support. Define FP mode macro and associated attributes. Use it for float mode patterns. * config/m68k/linux.h (FUNCTION_VALUE): Use m68k_function_value. (LIBCALL_VALUE): Use m68k_libcall_value. * config/m68k/m68k-protos.h (m68k_libcall_value): Add prototype. (m68k_function_value): Ditto. (emit_move_sequence): Ditto. * config/m68k/m68kemb.h (LIBCALL_VALUE): Use m68k_libcall_value. * config/m68k/m68k-none.h (ASM_SPEC): Add mcfv4e. * config/m68k/t-m68kelf (MULTILIB_OPTIONS): Add mcfv4e. (MULTILIB_EXCEPTIONS): Ditto. * config/m68k/m68k.opt: Add mcfv4e. * config/m68k/m68k.c (m68k_handle_option): Handle OPT_mcfv4e. (m68k_compute_frame_layout): Include space for ColdFire FPU regs. (m68k_output_function_prologue): Save ColdFire FPU registers. (m68k_output_function_epilogue): Restore ColdFire FPU registers. (force_mode, fp_reg_operand, emit_move_sequence): New functions. (m68k_regno_mode_ok): Don't allow types larget than 8 bytes in ColdFire FPU registers. (m68k_libcall_value, m68k_function_value): New functions. * config/m68k/netbsd-elf.h (FUNCTION_VALUE): Use m68k_function_value. (LIBCALL_VALUE): Use m68k_libcall_value. * config/m68k/m68k.h (TARGET_CPU_CPP_BUILTINS): Define __mcfv4e__. (MASK_COLDFIRE): Add MASK_CFV4E. (TARGET_COLDFIRE_FPU, TARGET_HARD_FLOAT, TARGET_FP_REG_SIZE): New. (MODES_TIEABLE_P): Use TARGET_HARD_FLOAT. (REG_CLASS_FROM_LETTER, PREFERRED_RELOAD_CLASS): Ditto. (GO_IF_COLDFIRE_FPU_LEGITIMATE_ADDRESS): Define. (GO_IF_LEGITIMATE_ADDRESS): Use it. (LEGITIMIZE_ADDRESS): Handle ColdFire FPU addresses. * doc/invoke.tex: Document -mcfv4e on m68k. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@110091 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/m68k/m68k-protos.h')
-rw-r--r--gcc/config/m68k/m68k-protos.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/config/m68k/m68k-protos.h b/gcc/config/m68k/m68k-protos.h
index 028e2939c49..531c6958713 100644
--- a/gcc/config/m68k/m68k-protos.h
+++ b/gcc/config/m68k/m68k-protos.h
@@ -1,5 +1,5 @@
/* Definitions of target machine for GNU compiler. Sun 68000/68020 version.
- Copyright (C) 2000, 2002, 2004, 2005 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2002, 2004, 2005, 2006 Free Software Foundation, Inc.
This file is part of GCC.
@@ -51,6 +51,9 @@ extern void print_operand (FILE *, rtx, int);
extern void notice_update_cc (rtx, rtx);
extern rtx legitimize_pic_address (rtx, enum machine_mode, rtx);
extern int valid_dbcc_comparison_p_2 (rtx, enum machine_mode);
+extern rtx m68k_libcall_value (enum machine_mode);
+extern rtx m68k_function_value (tree, tree);
+extern int emit_move_sequence (rtx *, enum machine_mode, rtx);
#endif /* RTX_CODE */