mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	arch: use ASM_NL instead of ';' for assembler new line character in the macro
For some assemblers, they use another character as newline in a macro (e.g. arc uses '`'), so for generic assembly code, need use ASM_NL (a macro) instead of ';' for it. Signed-off-by: Chen Gang <gang.chen.5i5j@gmail.com> Acked-by: Vineet Gupta <vgupta@synopsys.com> Signed-off-by: Michal Marek <mmarek@suse.cz>
This commit is contained in:
		
							parent
							
								
									e36aaea289
								
							
						
					
					
						commit
						9df62f0544
					
				
					 2 changed files with 14 additions and 7 deletions
				
			
		| 
						 | 
					@ -11,6 +11,8 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef __ASSEMBLY__
 | 
					#ifdef __ASSEMBLY__
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#define ASM_NL		 `	/* use '`' to mark new line in macro */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Can't use the ENTRY macro in linux/linkage.h
 | 
					/* Can't use the ENTRY macro in linux/linkage.h
 | 
				
			||||||
 * gas considers ';' as comment vs. newline
 | 
					 * gas considers ';' as comment vs. newline
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,6 +6,11 @@
 | 
				
			||||||
#include <linux/export.h>
 | 
					#include <linux/export.h>
 | 
				
			||||||
#include <asm/linkage.h>
 | 
					#include <asm/linkage.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Some toolchains use other characters (e.g. '`') to mark new line in macro */
 | 
				
			||||||
 | 
					#ifndef ASM_NL
 | 
				
			||||||
 | 
					#define ASM_NL		 ;
 | 
				
			||||||
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifdef __cplusplus
 | 
					#ifdef __cplusplus
 | 
				
			||||||
#define CPP_ASMLINKAGE extern "C"
 | 
					#define CPP_ASMLINKAGE extern "C"
 | 
				
			||||||
#else
 | 
					#else
 | 
				
			||||||
| 
						 | 
					@ -75,15 +80,15 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifndef ENTRY
 | 
					#ifndef ENTRY
 | 
				
			||||||
#define ENTRY(name) \
 | 
					#define ENTRY(name) \
 | 
				
			||||||
  .globl name; \
 | 
						.globl name ASM_NL \
 | 
				
			||||||
  ALIGN; \
 | 
						ALIGN ASM_NL \
 | 
				
			||||||
	name:
 | 
						name:
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
#endif /* LINKER_SCRIPT */
 | 
					#endif /* LINKER_SCRIPT */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifndef WEAK
 | 
					#ifndef WEAK
 | 
				
			||||||
#define WEAK(name)	   \
 | 
					#define WEAK(name)	   \
 | 
				
			||||||
	.weak name;	   \
 | 
						.weak name ASM_NL   \
 | 
				
			||||||
	name:
 | 
						name:
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -98,7 +103,7 @@
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
#ifndef ENDPROC
 | 
					#ifndef ENDPROC
 | 
				
			||||||
#define ENDPROC(name) \
 | 
					#define ENDPROC(name) \
 | 
				
			||||||
  .type name, @function; \
 | 
						.type name, @function ASM_NL \
 | 
				
			||||||
	END(name)
 | 
						END(name)
 | 
				
			||||||
#endif
 | 
					#endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue