aboutsummaryrefslogtreecommitdiff
path: root/gcc/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ChangeLog')
-rw-r--r--gcc/ChangeLog41
1 files changed, 41 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 48e144d..b4489a4 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,44 @@
+2005-03-15 Uros Bizjak <uros@kss-loka.si>
+
+ PR target/18668
+ * config/i386/i386.h (x86_fisttp): New.
+ (TARGET_FISTTP): New macro.
+ * config/i386/i386.c (x86_fisttp): Set for NOCONA.
+ (output_fix_trunc): Add fisttp parameter. Generate fisttp x87
+ instruction when fisttp flag is set.
+ * config/i386/i386-protos.h (output_fix_trunc): Change declaration.
+
+ * config/i386/i386.md (type attribute): Add fisttp.
+ (unit attribute): Set to i387 for fisttp type.
+ (X87MODEF, X87MODEI, SSEMODEF, SSEMODEI24): New mode macros.
+ (fix_truncxfdi2, fix_truncxfsi2): Generate fisttp patterns for
+ TARGET_FISTTP.
+ (fix_truncdfdi2, fix_truncsfdi2, fix_truncdfsi2, fix_truncsfsi2):
+ Generate fisttp patterns for TARGET_FISTTP. Implement using mode
+ macros.
+ (fix_truncxfhi2, fix_truncdfhi2, fix_truncsfhi2): Generate fisttp
+ patterns for TARGET_FISTTP. Enable patterns for
+ (TARGET_FISTTP && !TARGET_SSE_MATH). Implement using mode macros.
+ (fix_trunc<mode>_i387_fisttp_1, fix_trunc<mode>_i387_fisttp,
+ fix_trunc<mode>_i387_fisttp_with_temp): New instruction patterns to
+ implement fisttp x87 insn.
+ (fix_trunc*_i387_fisttp splitters): New patterns.
+ (*fix_truncdi_i387, *fix_truncsi_i387, *fix_trunchi_i387):
+ Rename to *fix_trunc<mode>_i387_1. Implement using mode macros.
+ Disable patterns for TARGET_FISTTP. Add comment about FLAGS_REG
+ clobber.
+ (fix_truncdi_memory, fix_truncdi_nomemory, fix_trunchi_nomemory):
+ Rename to fix_trunc<mode>_i387 and fix_trunc<mode>_i387_with_temp.
+ Implement using mode macros. Disable patterns for TARGET_FISTTP.
+ (fix_truncsi_memory, fix_truncsi_nomemory, fix_trunchi_memory,
+ fix_trunchi_nomemory): Rename to fix_trunc<mode>_i387 and
+ fix_trunc<mode>_i387_with_temp. Implement using mode macros.
+ Disable patterns for TARGET_FISTTP.
+ (fix_trunc*_i387 splitters): Implement usign mode macros.
+ (fix_truncdfdi_sse, fix_truncsfdi_sse, fix_truncdfsi_sse,
+ fix_truncsfsi_sse): Disable for (TARGET_FISTTP && !TARGET_SSE_MATH).
+ (fix_trunx*_sse peephole2s): Implement using mode macros.
+
2005-03-15 J"orn Rennecke <joern.rennecke@st.com>
PR rtl-optimization/20291