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


Richard Henderson <rth@redhat.com> writes:
> On Sat, Dec 15, 2001 at 07:28:54PM +0000, Richard Sandiford wrote:
> > I just feel that if the strings and hook both handle a particular kind
> > of object, it will be difficult to know which one to use.  Keeping the
> > two controls entirely separate means the rule is simple: you can use any
> > string in the target hook for any form of initial value.
> 
> I think the rule is pretty simple.  If you're emitting data for
> the program to use, use the hook.  If you're emitting data for
> the debugger to use, you may use the strings.

Well, OK, I guess that rule's pretty simple too ;-).

Can I put in one last pitch for the original scheme?  If I you don't
agree then I'll make the change.

I think using the "OK for debugging output" rule might make the back-end
code more confusing.  In your other message, for the sparc, you
suggested using putting DOUBLE_INT_ASM_OP in TARGET_ASM_ALIGNED_DI_OP
and using:

  if (! TARGET_POWERPC64)
    return false;

in the target hook to turn it off.  That's fine for aligned ops,
because aligned ops aren't used in debugging output at the moment.

As you point out, unaligned ops are only available on the PA if
TARGET_GAS.  By analogy with the above, an innocent coder might
put the unaligned DI op in TARGET_ASM_UNALIGNED_DI_OP and use:

  if (! TARGET_GAS)
    return false;

in the target hook to turn it off.  That won't work because the strings
will be used without consulting the hook.  It just seems a little
inconsistent.

Richard


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