aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-powerpc/cputable.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-powerpc/cputable.h')
-rw-r--r--include/asm-powerpc/cputable.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/include/asm-powerpc/cputable.h b/include/asm-powerpc/cputable.h
index 4d22218739e0..65faf322ace0 100644
--- a/include/asm-powerpc/cputable.h
+++ b/include/asm-powerpc/cputable.h
@@ -434,30 +434,34 @@ static inline int cpu_has_feature(unsigned long feature)
434 434
435#ifdef __ASSEMBLY__ 435#ifdef __ASSEMBLY__
436 436
437#define BEGIN_FTR_SECTION 98: 437#define BEGIN_FTR_SECTION_NESTED(label) label:
438#define BEGIN_FTR_SECTION BEGIN_FTR_SECTION_NESTED(98)
438 439
439#ifndef __powerpc64__ 440#ifndef __powerpc64__
440#define END_FTR_SECTION(msk, val) \ 441#define END_FTR_SECTION_NESTED(msk, val, label) \
44199: \ 44299: \
442 .section __ftr_fixup,"a"; \ 443 .section __ftr_fixup,"a"; \
443 .align 2; \ 444 .align 2; \
444 .long msk; \ 445 .long msk; \
445 .long val; \ 446 .long val; \
446 .long 98b; \ 447 .long label##b; \
447 .long 99b; \ 448 .long 99b; \
448 .previous 449 .previous
449#else /* __powerpc64__ */ 450#else /* __powerpc64__ */
450#define END_FTR_SECTION(msk, val) \ 451#define END_FTR_SECTION_NESTED(msk, val, label) \
45199: \ 45299: \
452 .section __ftr_fixup,"a"; \ 453 .section __ftr_fixup,"a"; \
453 .align 3; \ 454 .align 3; \
454 .llong msk; \ 455 .llong msk; \
455 .llong val; \ 456 .llong val; \
456 .llong 98b; \ 457 .llong label##b; \
457 .llong 99b; \ 458 .llong 99b; \
458 .previous 459 .previous
459#endif /* __powerpc64__ */ 460#endif /* __powerpc64__ */
460 461
462#define END_FTR_SECTION(msk, val) \
463 END_FTR_SECTION_NESTED(msk, val, 98)
464
461#define END_FTR_SECTION_IFSET(msk) END_FTR_SECTION((msk), (msk)) 465#define END_FTR_SECTION_IFSET(msk) END_FTR_SECTION((msk), (msk))
462#define END_FTR_SECTION_IFCLR(msk) END_FTR_SECTION((msk), 0) 466#define END_FTR_SECTION_IFCLR(msk) END_FTR_SECTION((msk), 0)
463#endif /* __ASSEMBLY__ */ 467#endif /* __ASSEMBLY__ */