(SF_MODES): Accept all single word or smaller integer
authorwilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 25 Sep 1992 05:46:02 +0000 (05:46 +0000)
committerwilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 25 Sep 1992 05:46:02 +0000 (05:46 +0000)
modes not just SImode.  These are needed for fix/float conversions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2241 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/config/sparc/sparc.c

index cfd5064..fe451f9 100644 (file)
@@ -1957,8 +1957,10 @@ output_scc_insn (operands, insn)
 /* Modes for quad-word quantities.  */
 #define T_MODES (~C_MODES)
 
-/* Modes for single-float quantities.  */
-#define SF_MODES ((1 << (int) SFmode) | (1 << (int) SImode))
+/* Modes for single-float quantities.  We must allow any single word or
+   smaller quantity.  This is because the fix/float conversion instructions
+   take integer inputs/outputs from the float registers.  */
+#define SF_MODES (S_MODES)
 
 /* Modes for double-float quantities.  */
 #define DF_MODES (SF_MODES | (1 << (int) DFmode) | (1 << (int) SCmode))