This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Revised patch to remove integer output macros


In elxsi_assemble_integer:
+       fprintf (asm_out_file, "{%d}\n", size * UNITS_PER_WORD);

Should be BITS_PER_UNIT.

In pa.c:
+ #undef TARGET_ASM_UNALIGNED_HI_OP
+ #define TARGET_ASM_UNALIGNED_HI_OP "\t.half\t"

These should only be used if TARGET_GAS.  You'll have to
handle this in pa_assemble_integer, because TARGET_GAS is
a runtime value.

In rs6000.c:
+   /* We can only guarantee the availability of DI pseudo-ops when assembling
+      for 64-bit targets.  */
+   if (TARGET_POWERPC64)
+     {
+       targetm.asm_out.aligned_op.di = DOUBLE_INT_ASM_OP;

A better alternative here is to put

  if (! TARGET_POWERPC64)
    return false;

in rs6000_assemble_integer.

In sparc/sol2.h:
  /* Use .uahalf/.uaword so packed structure members don't generate
     assembler errors when using the native assembler.  */
! #define SPARC_USE_UNALIGNED_OPS

Should be fixed now since assemble_integer now has an
alignment argument.

In sparc.c:
+   /* Only use the unaligned DI pseudo-op ".uaxword" when compiling for
+      a 64-bit target.  */
+   if (TARGET_ARCH64)
+     targetm.asm_out.unaligned_op.di = "\t.uaxword\t";

Like the AIX solution.

In sparc.c:
! static bool
! sparc_assemble_integer (x, size, aligned_p)
!      rtx x;
!      unsigned int size;
!      int aligned_p;
  {
!   if (aligned_p && size == 8)

This should all now be obsolete, since assemble_integer knows how
to break up e.g. CONST_DOUBLE when .xword doesn't exist.

In tm.texi:
! @deftypevrx {Target Hook} {const char *} TARGET_ASM_UNALIGNED_TI_OP
! hese hooks specify assembly instructions for creating certain kinds

Typo.  Substitute "directive" for "instruction" throughout.


r~


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]