| 
									
										
										
										
											2012-09-21 12:43:09 -07:00
										 |  |  | #ifndef _ASM_X86_ALTERNATIVE_ASM_H
 | 
					
						
							|  |  |  | #define _ASM_X86_ALTERNATIVE_ASM_H
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-10-17 18:04:38 +02:00
										 |  |  | #ifdef __ASSEMBLY__
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-11-27 15:06:16 +00:00
										 |  |  | #include <asm/asm.h>
 | 
					
						
							| 
									
										
										
										
											2007-10-17 18:04:38 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | #ifdef CONFIG_SMP
 | 
					
						
							|  |  |  | 	.macro LOCK_PREFIX | 
					
						
							| 
									
										
										
										
											2012-01-03 17:35:40 +01:00
										 |  |  | 672:	lock | 
					
						
							| 
									
										
										
										
											2012-09-21 12:43:08 -07:00
										 |  |  | 	.pushsection .smp_locks,"a" | 
					
						
							| 
									
										
										
										
											2010-04-21 16:08:14 +01:00
										 |  |  | 	.balign 4 | 
					
						
							| 
									
										
										
										
											2012-01-03 17:35:40 +01:00
										 |  |  | 	.long 672b - . | 
					
						
							| 
									
										
										
										
											2012-09-21 12:43:08 -07:00
										 |  |  | 	.popsection | 
					
						
							| 
									
										
										
										
											2007-10-17 18:04:38 +02:00
										 |  |  | 	.endm | 
					
						
							|  |  |  | #else
 | 
					
						
							|  |  |  | 	.macro LOCK_PREFIX | 
					
						
							|  |  |  | 	.endm | 
					
						
							|  |  |  | #endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-05-17 15:29:13 -07:00
										 |  |  | .macro altinstruction_entry orig alt feature orig_len alt_len | 
					
						
							| 
									
										
										
										
											2011-07-13 09:24:10 -04:00
										 |  |  | 	.long \orig - . | 
					
						
							|  |  |  | 	.long \alt - . | 
					
						
							| 
									
										
										
										
											2011-05-17 15:29:13 -07:00
										 |  |  | 	.word \feature | 
					
						
							|  |  |  | 	.byte \orig_len | 
					
						
							|  |  |  | 	.byte \alt_len | 
					
						
							|  |  |  | .endm | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2007-10-17 18:04:38 +02:00
										 |  |  | #endif  /*  __ASSEMBLY__  */
 | 
					
						
							| 
									
										
										
										
											2012-09-21 12:43:09 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | #endif /* _ASM_X86_ALTERNATIVE_ASM_H */
 |