lkml.org 
[lkml]   [2003]   [Feb]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: ENTRY-macro in linkage.h
My problem is how to add the whitespace. The preprocessor seems to strip 
it. Consider this (test.S):

#define ENTRY(X) \
.global X##; \
X##:

ENTRY(foo)
ENTRY(bar)

gcc -S test.S:

.global foo; foo:
.global bar; bar:

For c4x-gcc, this has to be like this:

.global foo
foo:
.global bar
bar:

Without the leading whitespace, .global is taken as a name of a label.
Without the newline before the labels, they are not recognized (taken as
comments).

How can I tell the preprocessor to emit spaces and newlines?

Alan Cox wrote:

>On Sat, 2003-02-08 at 16:51, Uwe Reimann wrote:
>
>
>>Hi,
>>
>>I'm currently porting linux to TI's TMS320C31. I'm using c4x-gcc, which
>>has a problem with the ENTRY-macro from linkage.h. c4x-gcc will accept
>>the generated .globl-directive only if it is preceded by whitescape.
>>Right know, gcc thinks I want to create a label called .globl. Any ideas
>>how to fix this without fixing gcc?
>>
>>
>
>I think every other port will probably be fine with the whitespace present
>so I guess add a space 8)
>
>
>
>
>


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:33    [W:0.048 / U:0.704 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site