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
/* 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))