* config/s390/s390.c (emit_prologue): Don't check literal pool size.
authoruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 26 Aug 2003 20:39:45 +0000 (20:39 +0000)
committeruweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 26 Aug 2003 20:39:45 +0000 (20:39 +0000)
* config/s390/s390.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Call
s390_output_pool_entry.

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

gcc/ChangeLog
gcc/config/s390/s390.c
gcc/config/s390/s390.h

index bb34433..746dec5 100644 (file)
@@ -1,3 +1,9 @@
+2003-08-26  Ulrich Weigand  <uweigand@de.ibm.com>
+
+       * config/s390/s390.c (emit_prologue): Don't check literal pool size.
+       * config/s390/s390.h (ASM_OUTPUT_SPECIAL_POOL_ENTRY): Call 
+       s390_output_pool_entry.
+
 2003-08-26  Nathanael Nerode  <neroden@gcc.gnu.org>
 
        * fixinc/inclhack.def (svr4_preproc_lint_on, 
index b89fcee..c318d47 100644 (file)
@@ -5316,7 +5316,6 @@ s390_emit_prologue (void)
      See below for why TPF must use the register 1.  */
 
   if (!current_function_is_leaf
-      && get_pool_size () < S390_POOL_CHUNK_MAX / 2
       && !TARGET_TPF)
     temp_reg = gen_rtx_REG (Pmode, RETURN_REGNUM);
   else
index 1e8cfa9..541d689 100644 (file)
@@ -1034,39 +1034,9 @@ extern int s390_nr_constants;
 #define ASM_OUTPUT_SPECIAL_POOL_ENTRY(FILE, EXP, MODE, ALIGN, LABELNO, WIN) \
 {                                                                          \
   fprintf (FILE, ".LC%d:\n", LABELNO);                                     \
-                                                                           \
-  /* Output the value of the constant itself.  */                          \
-  switch (GET_MODE_CLASS (MODE))                                           \
-    {                                                                      \
-    case MODE_FLOAT:                                                       \
-      if (GET_CODE (EXP) != CONST_DOUBLE)                                  \
-       abort ();                                                           \
-                                                                           \
-      REAL_VALUE_FROM_CONST_DOUBLE (r, EXP);                               \
-      assemble_real (r, MODE, ALIGN);                                      \
-      break;                                                               \
-                                                                           \
-    case MODE_INT:                                                         \
-    case MODE_PARTIAL_INT:                                                 \
-      if (GET_CODE (EXP) == CONST                                          \
-         || GET_CODE (EXP) == SYMBOL_REF                                   \
-         || GET_CODE (EXP) == LABEL_REF)                                   \
-        {                                                                  \
-         fputs (integer_asm_op (UNITS_PER_WORD, TRUE), FILE);              \
-          s390_output_symbolic_const (FILE, EXP);                          \
-          fputc ('\n', (FILE));                                                    \
-       }                                                                   \
-      else                                                                 \
-       {                                                                   \
-         assemble_integer (EXP, GET_MODE_SIZE (MODE), ALIGN, 1);           \
-         if (GET_MODE_SIZE (MODE) == 1)                                    \
-           ASM_OUTPUT_SKIP ((FILE), (unsigned HOST_WIDE_INT)1);            \
-       }                                                                   \
-      break;                                                               \
-                                                                           \
-    default:                                                               \
-      abort ();                                                                    \
-    }                                                                      \
+  s390_output_pool_entry (FILE, EXP, MODE, ALIGN);                         \
+  if (GET_MODE_SIZE (MODE) == 1)                                           \
+    ASM_OUTPUT_SKIP ((FILE), (unsigned HOST_WIDE_INT)1);                   \
   goto WIN;                                                                \
 }