This is the mail archive of the binutils@sourceware.cygnus.com mailing list for the binutils project.


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

Re: string concatenation in gas


I implemented a .eval/.asg for the tic54x target (which save evaluated
quantities as strings which then get interpreted by the assembler); I actually
had to have this functionality for that target's compatibility.  Actually, I
think the ".break" was local to that target as well...

T.



Geoff Berry wrote:

> Nice try, but it still doesn't work.  This expands to
>
>         push    rCOUNT
>         push    rCOUNT
>         ...
>
> Any other ideas?
>
> -----Original Message-----
> From: Timothy Wall [mailto:twall@domesolutions.com]
> Sent: Friday, April 14, 2000 5:20 PM
> To: Geoff Berry
> Cc: binutils@sourceware.cygnus.com
> Subject: Re: string concatenation in gas
>
> You might be able to get by with a repeat loop calling the macro which does
> the
> concatenation, e.g.
>
> .MACRO PUSH    REGNO
>     push    r\REGNO
> .ENDM
>
> .set START 0
> .set END 5
> .set COUNT, START
> .rept
>     PUSH COUNT
> .set COUNT, COUNT + 1
> .break COUNT == END
> .endr
>
> Geoff Berry wrote:
>
> > .IRP doesn't evaluate strings either (at least I can't figure out how to
> > make it).  For example, if I do:
> >
> > .IRP i, 0, 0+1, 0+1+1
> >         push    r\i
> > .ENDR
> >
> > This expands to:
> >
> > r0
> > r0+1
> > r0+1+1
> >
> > when I want
> >
> > r0
> > r1
> > r2
> >
> > I'm pretty much convinced that what I'm trying to do isn't possible with
> gas
> > (not that I really expect it to be).
> >
> > -----Original Message-----
> > From: Timothy Wall [mailto:twall@domesolutions.com]
> > Sent: Thursday, April 13, 2000 4:54 PM
> > To: binutils@sourceware.cygnus.com
> > Cc: geoffb@bops.com
> > Subject: Re: string concatenation in gas
> >
> > Geoff,
> >
> >   What you really want is string evaluation. Look at ".irp" and see if
> > that does what you want.
> >
> > T.


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