m3-sys/m3cc/gcc-apple/gcc/varasm.c
/* Assemble the integer constant X into an object of SIZE bytes.  ALIGN is
   the alignment of the integer in bits.  Return 1 if we were able to output
   the constant, otherwise 0.  We must be able to output the constant,
   if FORCE is nonzero.  */
Assemble the integer constant X into an object of SIZE bytes.  ALIGN is
the alignment of the integer in bits.  Return 1 if we were able to output
the constant, otherwise 0.  We must be able to output the constant,
if FORCE is nonzero.
Assemble the integer constant X into an object of SIZE bytes . ALIGN is the alignment of the integer in bits . Return 1 if we were able to output the constant otherwise 0 . We must be able to output the constant if FORCE is nonzero .
bool
assemble_integer (rtx x, unsigned int size, unsigned int align, int force)
{
  int aligned_p;
  aligned_p = (align >= MIN (size * BITS_PER_UNIT, BIGGEST_ALIGNMENT));
  if (targetm.asm_out.integer (x, size, aligned_p))
    return true;
  if (size > 1)
    {
      enum machine_mode omode, imode;
      unsigned int subalign;
      unsigned int subsize, i;
      subsize = size > UNITS_PER_WORD? UNITS_PER_WORD : 1;
      subalign = MIN (align, subsize * BITS_PER_UNIT);
      omode = mode_for_size (subsize * BITS_PER_UNIT, MODE_INT, 0);
      imode = mode_for_size (size * BITS_PER_UNIT, MODE_INT, 0);
      for (i = 0; i < size; i += subsize)
	{
	  rtx partial = simplify_subreg (omode, x, imode, i);
	  if (!partial || !assemble_integer (partial, subsize, subalign, 0))
	    break;
	}
      if (i == size)
	return true;
      gcc_assert (!i);
    }
  gcc_assert (!force);
  return false;
}
bool assemble_integer ( rtx x , unsigned int size , unsigned int align , int force ) { int aligned_p ; aligned_p = ( align >= MIN ( size * BITS_PER_UNIT , BIGGEST_ALIGNMENT ) ) ; if ( targetm . asm_out . integer ( x , size , aligned_p ) ) return true ; if ( size > 1 ) { enum machine_mode omode , imode ; unsigned int subalign ; unsigned int subsize , i ; subsize = size > UNITS_PER_WORD ? UNITS_PER_WORD : 1 ; subalign = MIN ( align , subsize * BITS_PER_UNIT ) ; omode = mode_for_size ( subsize * BITS_PER_UNIT , MODE_INT , 0 ) ; imode = mode_for_size ( size * BITS_PER_UNIT , MODE_INT , 0 ) ; for ( i = 0 ; i < size ; i += subsize ) { rtx partial = simplify_subreg ( omode , x , imode , i ) ; if ( ! partial || ! assemble_integer ( partial , subsize , subalign , 0 ) ) break ; } if ( i == size ) return true ; gcc_assert ( ! i ) ; } gcc_assert ( ! force ) ; return false ; }
Assemble the integer constant X into an object of SIZE bytes.
Assemble the integer constant X into an object of SIZE bytes .
/* See if the target hook can handle this kind of object.  */ /* If the object is a multi-byte one, try splitting it up.  Split
     it into words it if is multi-word, otherwise split it into bytes.  */ /* If we've printed some of it, but not all of it, there's no going
	 back now.  */