~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/powerpc/lib/feature-fixups-test.S

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /arch/powerpc/lib/feature-fixups-test.S (Architecture mips) and /arch/alpha/lib/feature-fixups-test.S (Architecture alpha)


  1 /* SPDX-License-Identifier: GPL-2.0-or-later *    
  2 /*                                                
  3  * Copyright 2008 Michael Ellerman, IBM Corpor    
  4  */                                               
  5                                                   
  6 #include <asm/feature-fixups.h>                   
  7 #include <asm/ppc_asm.h>                          
  8 #include <asm/synch.h>                            
  9 #include <asm/asm-compat.h>                       
 10 #include <asm/ppc-opcode.h>                       
 11                                                   
 12         .text                                     
 13                                                   
 14 #define globl(x)                \                 
 15         .globl x;       \                         
 16 x:                                                
 17                                                   
 18 globl(ftr_fixup_test1)                            
 19         or      1,1,1                             
 20         or      2,2,2   /* fixup will nop out     
 21         or      3,3,3                             
 22                                                   
 23 globl(end_ftr_fixup_test1)                        
 24                                                   
 25 globl(ftr_fixup_test1_orig)                       
 26         or      1,1,1                             
 27         or      2,2,2                             
 28         or      3,3,3                             
 29                                                   
 30 globl(ftr_fixup_test1_expected)                   
 31         or      1,1,1                             
 32         nop                                       
 33         or      3,3,3                             
 34                                                   
 35 globl(ftr_fixup_test2)                            
 36         or      1,1,1                             
 37         or      2,2,2   /* fixup will replace     
 38         or      3,3,3                             
 39                                                   
 40 globl(end_ftr_fixup_test2)                        
 41                                                   
 42 globl(ftr_fixup_test2_orig)                       
 43         or      1,1,1                             
 44         or      2,2,2                             
 45         or      3,3,3                             
 46                                                   
 47 globl(ftr_fixup_test2_alt)                        
 48         or      31,31,31                          
 49                                                   
 50 globl(ftr_fixup_test2_expected)                   
 51         or      1,1,1                             
 52         or      31,31,31                          
 53         or      3,3,3                             
 54                                                   
 55 globl(ftr_fixup_test3)                            
 56         or      1,1,1                             
 57         or      2,2,2   /* fixup will fail to     
 58         or      3,3,3                             
 59                                                   
 60 globl(end_ftr_fixup_test3)                        
 61                                                   
 62 globl(ftr_fixup_test3_orig)                       
 63         or      1,1,1                             
 64         or      2,2,2                             
 65         or      3,3,3                             
 66                                                   
 67 globl(ftr_fixup_test3_alt)                        
 68         or      31,31,31                          
 69         or      31,31,31                          
 70                                                   
 71 globl(ftr_fixup_test4)                            
 72         or      1,1,1                             
 73         or      2,2,2                             
 74         or      2,2,2                             
 75         or      2,2,2                             
 76         or      2,2,2                             
 77         or      3,3,3                             
 78                                                   
 79 globl(end_ftr_fixup_test4)                        
 80                                                   
 81 globl(ftr_fixup_test4_expected)                   
 82         or      1,1,1                             
 83         or      31,31,31                          
 84         or      31,31,31                          
 85         nop                                       
 86         nop                                       
 87         or      3,3,3                             
 88                                                   
 89 globl(ftr_fixup_test4_orig)                       
 90         or      1,1,1                             
 91         or      2,2,2                             
 92         or      2,2,2                             
 93         or      2,2,2                             
 94         or      2,2,2                             
 95         or      3,3,3                             
 96                                                   
 97 globl(ftr_fixup_test4_alt)                        
 98         or      31,31,31                          
 99         or      31,31,31                          
100                                                   
101                                                   
102 globl(ftr_fixup_test5)                            
103         or      1,1,1                             
104 BEGIN_FTR_SECTION                                 
105         or      2,2,2                             
106         or      2,2,2                             
107         or      2,2,2                             
108         or      2,2,2                             
109         or      2,2,2                             
110         or      2,2,2                             
111         or      2,2,2                             
112 FTR_SECTION_ELSE                                  
113 2:      b       3f                                
114 3:      or      5,5,5                             
115         beq     3b                                
116         b       1f                                
117         or      6,6,6                             
118         b       2b                                
119 1:      bdnz    3b                                
120 ALT_FTR_SECTION_END(0, 1)                         
121         or      1,1,1                             
122                                                   
123 globl(end_ftr_fixup_test5)                        
124                                                   
125 globl(ftr_fixup_test5_expected)                   
126         or      1,1,1                             
127 2:      b       3f                                
128 3:      or      5,5,5                             
129         beq     3b                                
130         b       1f                                
131         or      6,6,6                             
132         b       2b                                
133 1:      bdnz    3b                                
134         or      1,1,1                             
135                                                   
136 globl(ftr_fixup_test6)                            
137 1:      or      1,1,1                             
138 BEGIN_FTR_SECTION                                 
139         or      5,5,5                             
140 2:      PPC_LCMPI       r3,0                      
141         beq     4f                                
142         blt     2b                                
143         b       1b                                
144         b       4f                                
145 FTR_SECTION_ELSE                                  
146 2:      or      2,2,2                             
147         PPC_LCMPI       r3,1                      
148         beq     3f                                
149         blt     2b                                
150         b       3f                                
151         b       1b                                
152 ALT_FTR_SECTION_END(0, 1)                         
153 3:      or      1,1,1                             
154         or      2,2,2                             
155 4:      or      3,3,3                             
156                                                   
157 globl(end_ftr_fixup_test6)                        
158                                                   
159 globl(ftr_fixup_test6_expected)                   
160 1:      or      1,1,1                             
161 2:      or      2,2,2                             
162         PPC_LCMPI       r3,1                      
163         beq     3f                                
164         blt     2b                                
165         b       3f                                
166         b       1b                                
167 3:      or      1,1,1                             
168         or      2,2,2                             
169         or      3,3,3                             
170                                                   
171 globl(ftr_fixup_test7)                            
172         or      1,1,1                             
173 BEGIN_FTR_SECTION                                 
174         or      2,2,2                             
175         or      2,2,2                             
176         or      2,2,2                             
177         or      2,2,2                             
178         or      2,2,2                             
179         or      2,2,2                             
180         or      2,2,2                             
181 FTR_SECTION_ELSE                                  
182 2:      b       3f                                
183 3:      or      5,5,5                             
184         beq     3b                                
185         b       1f                                
186         or      6,6,6                             
187         b       2b                                
188         bdnz    3b                                
189 1:                                                
190 ALT_FTR_SECTION_END(0, 1)                         
191         or      1,1,1                             
192         or      1,1,1                             
193                                                   
194 globl(end_ftr_fixup_test7)                        
195         nop                                       
196                                                   
197 globl(ftr_fixup_test7_expected)                   
198         or      1,1,1                             
199 2:      b       3f                                
200 3:      or      5,5,5                             
201         beq     3b                                
202         b       1f                                
203         or      6,6,6                             
204         b       2b                                
205         bdnz    3b                                
206 1:      or      1,1,1                             
207                                                   
208 #if 0                                             
209 /* Test that if we have a larger else case the    
210  * reports an error. #if 0'ed so as not to bre    
211  */                                               
212 ftr_fixup_test_too_big:                           
213         or      1,1,1                             
214 BEGIN_FTR_SECTION                                 
215         or      2,2,2                             
216         or      2,2,2                             
217         or      2,2,2                             
218 FTR_SECTION_ELSE                                  
219         or      3,3,3                             
220         or      3,3,3                             
221         or      3,3,3                             
222         or      3,3,3                             
223 ALT_FTR_SECTION_END(0, 1)                         
224         or      1,1,1                             
225 #endif                                            
226                                                   
227 #define MAKE_MACRO_TEST(TYPE)                     
228 globl(ftr_fixup_test_ ##TYPE##_macros)            
229         or      1,1,1;                            
230         /* Basic test, this section should all    
231 BEGIN_##TYPE##_SECTION                            
232         or      2,2,2;                            
233         or      2,2,2;                            
234         or      2,2,2;                            
235 END_##TYPE##_SECTION(0, 1)                        
236         or      1,1,1;                            
237         or      1,1,1;                            
238         /* Basic test, this section should NOT    
239 BEGIN_##TYPE##_SECTION                            
240         or      2,2,2;                            
241         or      2,2,2;                            
242         or      2,2,2;                            
243 END_##TYPE##_SECTION(0, 0)                        
244         or      1,1,1;                            
245         or      1,1,1;                            
246         /* Nesting test, inner section should     
247 BEGIN_##TYPE##_SECTION                            
248         or      2,2,2;                            
249         or      2,2,2;                            
250 BEGIN_##TYPE##_SECTION_NESTED(80)                 
251         or      3,3,3;                            
252         or      3,3,3;                            
253 END_##TYPE##_SECTION_NESTED(0, 1, 80)             
254         or      2,2,2;                            
255         or      2,2,2;                            
256 END_##TYPE##_SECTION(0, 0)                        
257         or      1,1,1;                            
258         or      1,1,1;                            
259         /* Nesting test, whole section should     
260 BEGIN_##TYPE##_SECTION                            
261         or      2,2,2;                            
262         or      2,2,2;                            
263 BEGIN_##TYPE##_SECTION_NESTED(80)                 
264         or      3,3,3;                            
265         or      3,3,3;                            
266 END_##TYPE##_SECTION_NESTED(0, 0, 80)             
267         or      2,2,2;                            
268         or      2,2,2;                            
269 END_##TYPE##_SECTION(0, 1)                        
270         or      1,1,1;                            
271         or      1,1,1;                            
272         /* Nesting test, none should be nop'ed    
273 BEGIN_##TYPE##_SECTION                            
274         or      2,2,2;                            
275         or      2,2,2;                            
276 BEGIN_##TYPE##_SECTION_NESTED(80)                 
277         or      3,3,3;                            
278         or      3,3,3;                            
279 END_##TYPE##_SECTION_NESTED(0, 0, 80)             
280         or      2,2,2;                            
281         or      2,2,2;                            
282 END_##TYPE##_SECTION(0, 0)                        
283         or      1,1,1;                            
284         or      1,1,1;                            
285         /* Basic alt section test, default cas    
286 BEGIN_##TYPE##_SECTION                            
287         or      3,3,3;                            
288         or      3,3,3;                            
289         or      3,3,3;                            
290 ##TYPE##_SECTION_ELSE                             
291         or      5,5,5;                            
292         or      5,5,5;                            
293 ALT_##TYPE##_SECTION_END(0, 0)                    
294         or      1,1,1;                            
295         or      1,1,1;                            
296         /* Basic alt section test, else case s    
297 BEGIN_##TYPE##_SECTION                            
298         or      3,3,3;                            
299         or      3,3,3;                            
300         or      3,3,3;                            
301 ##TYPE##_SECTION_ELSE                             
302         or      31,31,31;                         
303         or      31,31,31;                         
304         or      31,31,31;                         
305 ALT_##TYPE##_SECTION_END(0, 1)                    
306         or      1,1,1;                            
307         or      1,1,1;                            
308         /* Alt with smaller else case, should     
309 BEGIN_##TYPE##_SECTION                            
310         or      3,3,3;                            
311         or      3,3,3;                            
312         or      3,3,3;                            
313 ##TYPE##_SECTION_ELSE                             
314         or      31,31,31;                         
315 ALT_##TYPE##_SECTION_END(0, 1)                    
316         or      1,1,1;                            
317         or      1,1,1;                            
318         /* Alt section with nested section in     
319         /* Default case should be taken, with     
320 BEGIN_##TYPE##_SECTION                            
321         or      3,3,3;                            
322 BEGIN_##TYPE##_SECTION_NESTED(95)                 
323         or      3,3,3;                            
324         or      3,3,3;                            
325 END_##TYPE##_SECTION_NESTED(0, 1, 95)             
326         or      3,3,3;                            
327 ##TYPE##_SECTION_ELSE                             
328         or      2,2,2;                            
329         or      2,2,2;                            
330 ALT_##TYPE##_SECTION_END(0, 0)                    
331         or      1,1,1;                            
332         or      1,1,1;                            
333         /* Alt section with nested section in     
334 BEGIN_##TYPE##_SECTION                            
335         or      3,3,3;                            
336         or      3,3,3;                            
337         or      3,3,3;                            
338 ##TYPE##_SECTION_ELSE                             
339         or      5,5,5;                            
340 BEGIN_##TYPE##_SECTION_NESTED(95)                 
341         or      3,3,3;                            
342 END_##TYPE##_SECTION_NESTED(0, 1, 95)             
343         or      5,5,5;                            
344 ALT_##TYPE##_SECTION_END(0, 0)                    
345         or      1,1,1;                            
346         or      1,1,1;                            
347         /* Alt section with nested section in     
348 BEGIN_##TYPE##_SECTION                            
349         or      3,3,3;                            
350         or      3,3,3;                            
351         or      3,3,3;                            
352 ##TYPE##_SECTION_ELSE                             
353         or      5,5,5;                            
354 BEGIN_##TYPE##_SECTION_NESTED(95)                 
355         or      3,3,3;                            
356 END_##TYPE##_SECTION_NESTED(0, 1, 95)             
357         or      5,5,5;                            
358 ALT_##TYPE##_SECTION_END(0, 1)                    
359         or      1,1,1;                            
360         or      1,1,1;                            
361         /* Feature section with nested alt sec    
362 BEGIN_##TYPE##_SECTION                            
363         or      2,2,2;                            
364 BEGIN_##TYPE##_SECTION_NESTED(95)                 
365         or      1,1,1;                            
366 ##TYPE##_SECTION_ELSE_NESTED(95)                  
367         or      5,5,5;                            
368 ALT_##TYPE##_SECTION_END_NESTED(0, 0, 95)         
369         or      2,2,2;                            
370 END_##TYPE##_SECTION(0, 0)                        
371         or      1,1,1;                            
372         or      1,1,1;                            
373         /* Feature section with nested alt sec    
374 BEGIN_##TYPE##_SECTION                            
375         or      2,2,2;                            
376 BEGIN_##TYPE##_SECTION_NESTED(95)                 
377         or      1,1,1;                            
378 ##TYPE##_SECTION_ELSE_NESTED(95)                  
379         or      5,5,5;                            
380 ALT_##TYPE##_SECTION_END_NESTED(0, 1, 95)         
381         or      2,2,2;                            
382 END_##TYPE##_SECTION(0, 0)                        
383         or      1,1,1;                            
384         or      1,1,1;                            
385         /* Feature section with nested alt sec    
386 BEGIN_##TYPE##_SECTION                            
387         or      2,2,2;                            
388 BEGIN_##TYPE##_SECTION_NESTED(95)                 
389         or      1,1,1;                            
390 ##TYPE##_SECTION_ELSE_NESTED(95)                  
391         or      5,5,5;                            
392 ALT_##TYPE##_SECTION_END_NESTED(0, 0, 95)         
393         or      2,2,2;                            
394 END_##TYPE##_SECTION(0, 1)                        
395         or      1,1,1;                            
396         or      1,1,1;                            
397         /* Nested alt sections, default with i    
398 BEGIN_##TYPE##_SECTION                            
399         or      2,2,2;                            
400 BEGIN_##TYPE##_SECTION_NESTED(95)                 
401         or      1,1,1;                            
402 ##TYPE##_SECTION_ELSE_NESTED(95)                  
403         or      5,5,5;                            
404 ALT_##TYPE##_SECTION_END_NESTED(0, 0, 95)         
405         or      2,2,2;                            
406 ##TYPE##_SECTION_ELSE                             
407         or      31,31,31;                         
408 BEGIN_##TYPE##_SECTION_NESTED(94)                 
409         or      5,5,5;                            
410 ##TYPE##_SECTION_ELSE_NESTED(94)                  
411         or      1,1,1;                            
412 ALT_##TYPE##_SECTION_END_NESTED(0, 0, 94)         
413         or      31,31,31;                         
414 ALT_##TYPE##_SECTION_END(0, 0)                    
415         or      1,1,1;                            
416         or      1,1,1;                            
417         /* Nested alt sections, default with i    
418 BEGIN_##TYPE##_SECTION                            
419         or      2,2,2;                            
420 BEGIN_##TYPE##_SECTION_NESTED(95)                 
421         or      1,1,1;                            
422 ##TYPE##_SECTION_ELSE_NESTED(95)                  
423         or      5,5,5;                            
424 ALT_##TYPE##_SECTION_END_NESTED(0, 1, 95)         
425         or      2,2,2;                            
426 ##TYPE##_SECTION_ELSE                             
427         or      31,31,31;                         
428 BEGIN_##TYPE##_SECTION_NESTED(94)                 
429         or      5,5,5;                            
430 ##TYPE##_SECTION_ELSE_NESTED(94)                  
431         or      1,1,1;                            
432 ALT_##TYPE##_SECTION_END_NESTED(0, 0, 94)         
433         or      31,31,31;                         
434 ALT_##TYPE##_SECTION_END(0, 0)                    
435         or      1,1,1;                            
436         or      1,1,1;                            
437         /* Nested alt sections, else with inne    
438 BEGIN_##TYPE##_SECTION                            
439         or      2,2,2;                            
440 BEGIN_##TYPE##_SECTION_NESTED(95)                 
441         or      1,1,1;                            
442 ##TYPE##_SECTION_ELSE_NESTED(95)                  
443         or      5,5,5;                            
444 ALT_##TYPE##_SECTION_END_NESTED(0, 1, 95)         
445         or      2,2,2;                            
446 ##TYPE##_SECTION_ELSE                             
447         or      31,31,31;                         
448 BEGIN_##TYPE##_SECTION_NESTED(94)                 
449         or      5,5,5;                            
450 ##TYPE##_SECTION_ELSE_NESTED(94)                  
451         or      1,1,1;                            
452 ALT_##TYPE##_SECTION_END_NESTED(0, 0, 94)         
453         or      31,31,31;                         
454 ALT_##TYPE##_SECTION_END(0, 1)                    
455         or      1,1,1;                            
456         or      1,1,1;                            
457         /* Nested alt sections, else with inne    
458 BEGIN_##TYPE##_SECTION                            
459         or      2,2,2;                            
460 BEGIN_##TYPE##_SECTION_NESTED(95)                 
461         or      1,1,1;                            
462 ##TYPE##_SECTION_ELSE_NESTED(95)                  
463         or      5,5,5;                            
464 ALT_##TYPE##_SECTION_END_NESTED(0, 1, 95)         
465         or      2,2,2;                            
466 ##TYPE##_SECTION_ELSE                             
467         or      31,31,31;                         
468 BEGIN_##TYPE##_SECTION_NESTED(94)                 
469         or      5,5,5;                            
470 ##TYPE##_SECTION_ELSE_NESTED(94)                  
471         or      1,1,1;                            
472 ALT_##TYPE##_SECTION_END_NESTED(0, 1, 94)         
473         or      31,31,31;                         
474 ALT_##TYPE##_SECTION_END(0, 1)                    
475         or      1,1,1;                            
476         or      1,1,1;                            
477         /* Nested alt sections, else can have     
478 BEGIN_##TYPE##_SECTION                            
479         or      2,2,2;                            
480         or      2,2,2;                            
481         or      2,2,2;                            
482         or      2,2,2;                            
483 ##TYPE##_SECTION_ELSE                             
484 BEGIN_##TYPE##_SECTION_NESTED(94)                 
485         or      5,5,5;                            
486         or      5,5,5;                            
487         or      5,5,5;                            
488         or      5,5,5;                            
489 ##TYPE##_SECTION_ELSE_NESTED(94)                  
490         or      1,1,1;                            
491         or      1,1,1;                            
492         or      1,1,1;                            
493         or      1,1,1;                            
494 ALT_##TYPE##_SECTION_END_NESTED(0, 1, 94)         
495 ALT_##TYPE##_SECTION_END(0, 1)                    
496         or      1,1,1;                            
497         or      1,1,1;                            
498                                                   
499 #define MAKE_MACRO_TEST_EXPECTED(TYPE)            
500 globl(ftr_fixup_test_ ##TYPE##_macros_expected    
501         or      1,1,1;                            
502         /* Basic test, this section should all    
503 /* BEGIN_##TYPE##_SECTION */                      
504         nop;                                      
505         nop;                                      
506         nop;                                      
507 /* END_##TYPE##_SECTION(0, 1) */                  
508         or      1,1,1;                            
509         or      1,1,1;                            
510         /* Basic test, this section should NOT    
511 /* BEGIN_##TYPE##_SECTION */                      
512         or      2,2,2;                            
513         or      2,2,2;                            
514         or      2,2,2;                            
515 /* END_##TYPE##_SECTION(0, 0) */                  
516         or      1,1,1;                            
517         or      1,1,1;                            
518         /* Nesting test, inner section should     
519 /* BEGIN_##TYPE##_SECTION */                      
520         or      2,2,2;                            
521         or      2,2,2;                            
522 /* BEGIN_##TYPE##_SECTION_NESTED(80) */           
523         nop;                                      
524         nop;                                      
525 /* END_##TYPE##_SECTION_NESTED(0, 1, 80) */       
526         or      2,2,2;                            
527         or      2,2,2;                            
528 /* END_##TYPE##_SECTION(0, 0) */                  
529         or      1,1,1;                            
530         or      1,1,1;                            
531         /* Nesting test, whole section should     
532         /* NB. inner section is not nop'ed, bu    
533 /* BEGIN_##TYPE##_SECTION */                      
534         nop;                                      
535         nop;                                      
536 /* BEGIN_##TYPE##_SECTION_NESTED(80) */           
537         nop;                                      
538         nop;                                      
539 /* END_##TYPE##_SECTION_NESTED(0, 0, 80) */       
540         nop;                                      
541         nop;                                      
542 /* END_##TYPE##_SECTION(0, 1) */                  
543         or      1,1,1;                            
544         or      1,1,1;                            
545         /* Nesting test, none should be nop'ed    
546 /* BEGIN_##TYPE##_SECTION */                      
547         or      2,2,2;                            
548         or      2,2,2;                            
549 /* BEGIN_##TYPE##_SECTION_NESTED(80) */           
550         or      3,3,3;                            
551         or      3,3,3;                            
552 /* END_##TYPE##_SECTION_NESTED(0, 0, 80) */       
553         or      2,2,2;                            
554         or      2,2,2;                            
555 /* END_##TYPE##_SECTION(0, 0) */                  
556         or      1,1,1;                            
557         or      1,1,1;                            
558         /* Basic alt section test, default cas    
559 /* BEGIN_##TYPE##_SECTION */                      
560         or      3,3,3;                            
561         or      3,3,3;                            
562         or      3,3,3;                            
563 /* ##TYPE##_SECTION_ELSE */                       
564         /* or   5,5,5; */                         
565         /* or   5,5,5; */                         
566 /* ALT_##TYPE##_SECTION_END(0, 0) */              
567         or      1,1,1;                            
568         or      1,1,1;                            
569         /* Basic alt section test, else case s    
570 /* BEGIN_##TYPE##_SECTION */                      
571         /* or   3,3,3; */                         
572         /* or   3,3,3; */                         
573         /* or   3,3,3; */                         
574 /* ##TYPE##_SECTION_ELSE */                       
575         or      31,31,31;                         
576         or      31,31,31;                         
577         or      31,31,31;                         
578 /* ALT_##TYPE##_SECTION_END(0, 1) */              
579         or      1,1,1;                            
580         or      1,1,1;                            
581         /* Alt with smaller else case, should     
582 /* BEGIN_##TYPE##_SECTION */                      
583         /* or   3,3,3; */                         
584         /* or   3,3,3; */                         
585         /* or   3,3,3; */                         
586 /* ##TYPE##_SECTION_ELSE */                       
587         or      31,31,31;                         
588         nop;                                      
589         nop;                                      
590 /* ALT_##TYPE##_SECTION_END(0, 1) */              
591         or      1,1,1;                            
592         or      1,1,1;                            
593         /* Alt section with nested section in     
594         /* Default case should be taken, with     
595 /* BEGIN_##TYPE##_SECTION */                      
596         or      3,3,3;                            
597 /* BEGIN_##TYPE##_SECTION_NESTED(95) */           
598         nop;                                      
599         nop;                                      
600 /* END_##TYPE##_SECTION_NESTED(0, 1, 95) */       
601         or      3,3,3;                            
602 /* ##TYPE##_SECTION_ELSE */                       
603         /* or   2,2,2; */                         
604         /* or   2,2,2; */                         
605 /* ALT_##TYPE##_SECTION_END(0, 0) */              
606         or      1,1,1;                            
607         or      1,1,1;                            
608         /* Alt section with nested section in     
609 /* BEGIN_##TYPE##_SECTION */                      
610         or      3,3,3;                            
611         or      3,3,3;                            
612         or      3,3,3;                            
613 /* ##TYPE##_SECTION_ELSE */                       
614         /* or   5,5,5; */                         
615 /* BEGIN_##TYPE##_SECTION_NESTED(95) */           
616         /* or   3,3,3; */                         
617 /* END_##TYPE##_SECTION_NESTED(0, 1, 95) */       
618         /* or   5,5,5; */                         
619 /* ALT_##TYPE##_SECTION_END(0, 0) */              
620         or      1,1,1;                            
621         or      1,1,1;                            
622         /* Alt section with nested section in     
623 /* BEGIN_##TYPE##_SECTION */                      
624         /* or   3,3,3; */                         
625         /* or   3,3,3; */                         
626         /* or   3,3,3; */                         
627 /* ##TYPE##_SECTION_ELSE */                       
628         or      5,5,5;                            
629 /* BEGIN_##TYPE##_SECTION_NESTED(95) */           
630         nop;                                      
631 /* END_##TYPE##_SECTION_NESTED(0, 1, 95) */       
632         or      5,5,5;                            
633 /* ALT_##TYPE##_SECTION_END(0, 1) */              
634         or      1,1,1;                            
635         or      1,1,1;                            
636         /* Feature section with nested alt sec    
637 /* BEGIN_##TYPE##_SECTION */                      
638         or      2,2,2;                            
639 /* BEGIN_##TYPE##_SECTION_NESTED(95) */           
640         or      1,1,1;                            
641 /* ##TYPE##_SECTION_ELSE_NESTED(95) */            
642         /* or   5,5,5; */                         
643 /* ALT_##TYPE##_SECTION_END_NESTED(0, 0, 95) *    
644         or      2,2,2;                            
645 /* END_##TYPE##_SECTION(0, 0) */                  
646         or      1,1,1;                            
647         or      1,1,1;                            
648         /* Feature section with nested alt sec    
649 /* BEGIN_##TYPE##_SECTION */                      
650         or      2,2,2;                            
651 /* BEGIN_##TYPE##_SECTION_NESTED(95) */           
652         /* or   1,1,1; */                         
653 /* ##TYPE##_SECTION_ELSE_NESTED(95) */            
654         or      5,5,5;                            
655 /* ALT_##TYPE##_SECTION_END_NESTED(0, 1, 95) *    
656         or      2,2,2;                            
657 /* END_##TYPE##_SECTION(0, 0) */                  
658         or      1,1,1;                            
659         or      1,1,1;                            
660         /* Feature section with nested alt sec    
661 /* BEGIN_##TYPE##_SECTION */                      
662         nop;                                      
663 /* BEGIN_##TYPE##_SECTION_NESTED(95) */           
664         nop;                                      
665 /* ##TYPE##_SECTION_ELSE_NESTED(95) */            
666         /* or   5,5,5; */                         
667 /* ALT_##TYPE##_SECTION_END_NESTED(0, 0, 95) *    
668         nop;                                      
669 /* END_##TYPE##_SECTION(0, 1) */                  
670         or      1,1,1;                            
671         or      1,1,1;                            
672         /* Nested alt sections, default with i    
673 /* BEGIN_##TYPE##_SECTION */                      
674         or      2,2,2;                            
675 /* BEGIN_##TYPE##_SECTION_NESTED(95) */           
676         or      1,1,1;                            
677 /* ##TYPE##_SECTION_ELSE_NESTED(95) */            
678         /* or   5,5,5; */                         
679 /* ALT_##TYPE##_SECTION_END_NESTED(0, 0, 95) *    
680         or      2,2,2;                            
681 /* ##TYPE##_SECTION_ELSE */                       
682         /* or   31,31,31; */                      
683 /* BEGIN_##TYPE##_SECTION_NESTED(94) */           
684         /* or   5,5,5; */                         
685 /* ##TYPE##_SECTION_ELSE_NESTED(94) */            
686         /* or   1,1,1; */                         
687 /* ALT_##TYPE##_SECTION_END_NESTED(0, 0, 94) *    
688         /* or   31,31,31; */                      
689 /* ALT_##TYPE##_SECTION_END(0, 0) */              
690         or      1,1,1;                            
691         or      1,1,1;                            
692         /* Nested alt sections, default with i    
693 /* BEGIN_##TYPE##_SECTION */                      
694         or      2,2,2;                            
695 /* BEGIN_##TYPE##_SECTION_NESTED(95) */           
696         /* or   1,1,1; */                         
697 /* ##TYPE##_SECTION_ELSE_NESTED(95) */            
698         or      5,5,5;                            
699 /* ALT_##TYPE##_SECTION_END_NESTED(0, 1, 95) *    
700         or      2,2,2;                            
701 /* ##TYPE##_SECTION_ELSE */                       
702         /* or   31,31,31; */                      
703 /* BEGIN_##TYPE##_SECTION_NESTED(94) */           
704         /* or   5,5,5; */                         
705 /* ##TYPE##_SECTION_ELSE_NESTED(94) */            
706         /* or   1,1,1; */                         
707 /* ALT_##TYPE##_SECTION_END_NESTED(0, 0, 94) *    
708         /* or   31,31,31; */                      
709 /* ALT_##TYPE##_SECTION_END(0, 0) */              
710         or      1,1,1;                            
711         or      1,1,1;                            
712         /* Nested alt sections, else with inne    
713 /* BEGIN_##TYPE##_SECTION */                      
714         /* or   2,2,2; */                         
715 /* BEGIN_##TYPE##_SECTION_NESTED(95) */           
716         /* or   1,1,1; */                         
717 /* ##TYPE##_SECTION_ELSE_NESTED(95) */            
718         /* or   5,5,5; */                         
719 /* ALT_##TYPE##_SECTION_END_NESTED(0, 1, 95) *    
720         /* or   2,2,2; */                         
721 /* ##TYPE##_SECTION_ELSE */                       
722         or      31,31,31;                         
723 /* BEGIN_##TYPE##_SECTION_NESTED(94) */           
724         or      5,5,5;                            
725 /* ##TYPE##_SECTION_ELSE_NESTED(94) */            
726         /* or   1,1,1; */                         
727 /* ALT_##TYPE##_SECTION_END_NESTED(0, 0, 94) *    
728         or      31,31,31;                         
729 /* ALT_##TYPE##_SECTION_END(0, 1) */              
730         or      1,1,1;                            
731         or      1,1,1;                            
732         /* Nested alt sections, else with inne    
733 /* BEGIN_##TYPE##_SECTION */                      
734         /* or   2,2,2; */                         
735 /* BEGIN_##TYPE##_SECTION_NESTED(95) */           
736         /* or   1,1,1; */                         
737 /* ##TYPE##_SECTION_ELSE_NESTED(95) */            
738         /* or   5,5,5; */                         
739 /* ALT_##TYPE##_SECTION_END_NESTED(0, 1, 95) *    
740         /* or   2,2,2; */                         
741 /* ##TYPE##_SECTION_ELSE */                       
742         or      31,31,31;                         
743 /* BEGIN_##TYPE##_SECTION_NESTED(94) */           
744         /* or   5,5,5; */                         
745 /* ##TYPE##_SECTION_ELSE_NESTED(94) */            
746         or      1,1,1;                            
747 /* ALT_##TYPE##_SECTION_END_NESTED(0, 1, 94) *    
748         or      31,31,31;                         
749 /* ALT_##TYPE##_SECTION_END(0, 1) */              
750         or      1,1,1;                            
751         or      1,1,1;                            
752         /* Nested alt sections, else can have     
753 /* BEGIN_##TYPE##_SECTION */                      
754         /* or   2,2,2; */                         
755         /* or   2,2,2; */                         
756         /* or   2,2,2; */                         
757         /* or   2,2,2; */                         
758 /* ##TYPE##_SECTION_ELSE */                       
759 /* BEGIN_##TYPE##_SECTION_NESTED(94) */           
760         /* or   5,5,5; */                         
761         /* or   5,5,5; */                         
762         /* or   5,5,5; */                         
763         /* or   5,5,5; */                         
764 /* ##TYPE##_SECTION_ELSE_NESTED(94) */            
765         or      1,1,1;                            
766         or      1,1,1;                            
767         or      1,1,1;                            
768         or      1,1,1;                            
769 /* ALT_##TYPE##_SECTION_END_NESTED(0, 1, 94) *    
770 /* ALT_##TYPE##_SECTION_END(0, 1) */              
771         or      1,1,1;                            
772         or      1,1,1;                            
773                                                   
774 MAKE_MACRO_TEST(FTR);                             
775 MAKE_MACRO_TEST_EXPECTED(FTR);                    
776                                                   
777 #ifdef CONFIG_PPC64                               
778 MAKE_MACRO_TEST(FW_FTR);                          
779 MAKE_MACRO_TEST_EXPECTED(FW_FTR);                 
780 #endif                                            
781                                                   
782 globl(lwsync_fixup_test)                          
783 1:      or      1,1,1                             
784         LWSYNC                                    
785 globl(end_lwsync_fixup_test)                      
786                                                   
787 globl(lwsync_fixup_test_expected_LWSYNC)          
788 1:      or      1,1,1                             
789         lwsync                                    
790                                                   
791 globl(lwsync_fixup_test_expected_SYNC)            
792 1:      or      1,1,1                             
793         sync                                      
794                                                   
795 globl(ftr_fixup_prefix1)                          
796         or      1,1,1                             
797         .long OP_PREFIX << 26                     
798         .long 0x0000000                           
799         or      2,2,2                             
800 globl(end_ftr_fixup_prefix1)                      
801                                                   
802 globl(ftr_fixup_prefix1_orig)                     
803         or      1,1,1                             
804         .long OP_PREFIX << 26                     
805         .long 0x0000000                           
806         or      2,2,2                             
807                                                   
808 globl(ftr_fixup_prefix1_expected)                 
809         or      1,1,1                             
810         nop                                       
811         nop                                       
812         or      2,2,2                             
813                                                   
814 globl(ftr_fixup_prefix2)                          
815         or      1,1,1                             
816         .long OP_PREFIX << 26                     
817         .long 0x0000000                           
818         or      2,2,2                             
819 globl(end_ftr_fixup_prefix2)                      
820                                                   
821 globl(ftr_fixup_prefix2_orig)                     
822         or      1,1,1                             
823         .long OP_PREFIX << 26                     
824         .long 0x0000000                           
825         or      2,2,2                             
826                                                   
827 globl(ftr_fixup_prefix2_alt)                      
828         .long OP_PREFIX << 26                     
829         .long 0x0000001                           
830                                                   
831 globl(ftr_fixup_prefix2_expected)                 
832         or      1,1,1                             
833         .long OP_PREFIX << 26                     
834         .long 0x0000001                           
835         or      2,2,2                             
836                                                   
837 globl(ftr_fixup_prefix3)                          
838         or      1,1,1                             
839         .long OP_PREFIX << 26                     
840         .long 0x0000000                           
841         or      2,2,2                             
842         or      3,3,3                             
843 globl(end_ftr_fixup_prefix3)                      
844                                                   
845 globl(ftr_fixup_prefix3_orig)                     
846         or      1,1,1                             
847         .long OP_PREFIX << 26                     
848         .long 0x0000000                           
849         or      2,2,2                             
850         or      3,3,3                             
851                                                   
852 globl(ftr_fixup_prefix3_alt)                      
853         .long OP_PREFIX << 26                     
854         .long 0x0000001                           
855         nop                                       
856                                                   
857 globl(ftr_fixup_prefix3_expected)                 
858         or      1,1,1                             
859         .long OP_PREFIX << 26                     
860         .long 0x0000001                           
861         nop                                       
862         or      3,3,3                             
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php