Fix ASM_OUTPUT_MI_THUNK on sparc when HOST_WIDE_INT is long long

Jakub Jelinek jakub@redhat.com
Wed Nov 8 09:23:00 GMT 2000


Hi!

I've commited this fix, because if HOST_WIDE_INT is long long, we end up
otherwise with garbage like add	%o0, -1, %o-174

2000-11-08  Jakub Jelinek  <jakub@redhat.com>

	* config/sparc/sparc.h (ASM_OUTPUT_MI_THUNK): Cast DELTA to int
	before passing to fprintf.

--- gcc/config/sparc/sparc.h.jj	Mon Nov  6 10:57:21 2000
+++ gcc/config/sparc/sparc.h	Wed Nov  8 18:23:13 2000
@@ -3238,9 +3238,9 @@ do {									\
     reg = 1;								\
   if ((DELTA) >= 4096 || (DELTA) < -4096)				\
     fprintf (FILE, "\tset\t%d, %%g1\n\tadd\t%%o%d, %%g1, %%o%d\n",	\
-	     (DELTA), reg, reg);					\
+	     (int)(DELTA), reg, reg);					\
   else									\
-    fprintf (FILE, "\tadd\t%%o%d, %d, %%o%d\n", reg, (DELTA), reg);	\
+    fprintf (FILE, "\tadd\t%%o%d, %d, %%o%d\n", reg, (int)(DELTA), reg);\
   fprintf (FILE, "\tor\t%%o7, %%g0, %%g1\n");				\
   fprintf (FILE, "\tcall\t");						\
   assemble_name (FILE, XSTR (XEXP (DECL_RTL (FUNCTION), 0), 0));	\

	Jakub


More information about the Gcc-patches mailing list