44 lines
		
	
	
	
		
			571 B
			
		
	
	
	
		
			Text
		
	
	
	
	
	
		
		
			
		
	
	
			44 lines
		
	
	
	
		
			571 B
			
		
	
	
	
		
			Text
		
	
	
	
	
	
| 
								 | 
							
								%option prefix="perf_pmu_"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								%{
							 | 
						||
| 
								 | 
							
								#include <stdlib.h>
							 | 
						||
| 
								 | 
							
								#include <linux/bitops.h>
							 | 
						||
| 
								 | 
							
								#include "pmu.h"
							 | 
						||
| 
								 | 
							
								#include "pmu-bison.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								static int value(int base)
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
									long num;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									errno = 0;
							 | 
						||
| 
								 | 
							
									num = strtoul(perf_pmu_text, NULL, base);
							 | 
						||
| 
								 | 
							
									if (errno)
							 | 
						||
| 
								 | 
							
										return PP_ERROR;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									perf_pmu_lval.num = num;
							 | 
						||
| 
								 | 
							
									return PP_VALUE;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								%}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								num_dec         [0-9]+
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								%%
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								{num_dec}	{ return value(10); }
							 | 
						||
| 
								 | 
							
								config		{ return PP_CONFIG; }
							 | 
						||
| 
								 | 
							
								config1		{ return PP_CONFIG1; }
							 | 
						||
| 
								 | 
							
								config2		{ return PP_CONFIG2; }
							 | 
						||
| 
								 | 
							
								-		{ return '-'; }
							 | 
						||
| 
								 | 
							
								:		{ return ':'; }
							 | 
						||
| 
								 | 
							
								,		{ return ','; }
							 | 
						||
| 
								 | 
							
								.		{ ; }
							 | 
						||
| 
								 | 
							
								\n		{ ; }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								%%
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								int perf_pmu_wrap(void)
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
									return 1;
							 | 
						||
| 
								 | 
							
								}
							 |