This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Another unrelated SSE patch
- To: rth at cygnus dot com, bernds at redhat dot com, gcc at gcc dot gnu dot org
- Subject: Another unrelated SSE patch
- From: Jan Hubicka <jh at suse dot cz>
- Date: Wed, 21 Feb 2001 21:13:47 +0100
Hi
This macro is defined in the David's patch. It seems to make sense
to avoid gcc from using TImodes for normal computations. Note that
macro also defines MAX_INTEGER_COMPUTATION_OK, that is needed to allow
RTX expressions for TImodes:
/* Value should be nonzero if EXP is okay for MAX_INTEGER_COMPUTATION_MODE */
#define MAX_INTEGER_COMPUTATION_OK(exp) \
(TARGET_SSE && \
(TREE_CODE (exp) == NOP_EXPR || TREE_CODE (exp) == RTL_EXPR))
Can someone please contribute the relevant bits in expr.c?
Honza
Wed Feb 21 21:11:41 CET 2001 Jan Hubicka <jh@suse.cz>
* i386.h (MAX_INTEGER_COMPUTATION_MODE): Define.
Index: i386.h
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/i386/i386.h,v
retrieving revision 1.156
diff -c -3 -p -r1.156 i386.h
*** i386.h 2001/02/19 15:47:30 1.156
--- i386.h 2001/02/21 20:11:25
*************** extern int ix86_arch;
*** 565,570 ****
--- 565,578 ----
((MODE) == XFmode || (MODE) == TFmode || ((MODE) == TImode) \
|| (MODE) == V4SFmode || (MODE) == V4SImode)
+ /* Define this to the largest integer machine mode which can be used
+ for operations other than load, store and copy operations.
+
+ You need only define this macro if the target holds values larger
+ than `word_mode' in general purpose registers. Most targets
+ should not define this macro. */
+ #define MAX_INTEGER_COMPUTATION_MODE DImode
+
/* The published ABIs say that doubles should be aligned on word
boundaries, so lower the aligment for structure fields unless
-malign-double is set. */