bounds.c 703 B

1234567891011121314151617181920212223242526
  1. /*
  2. * Generate definitions needed by the preprocessor.
  3. * This code generates raw asm output which is post-processed
  4. * to extract and format the required data.
  5. */
  6. #define __GENERATING_BOUNDS_H
  7. /* Include headers that define the enum constants of interest */
  8. #include <linux/page-flags.h>
  9. #include <linux/mmzone.h>
  10. #include <linux/kbuild.h>
  11. #include <linux/log2.h>
  12. #include <linux/spinlock_types.h>
  13. void foo(void)
  14. {
  15. /* The enum constants to put into include/generated/bounds.h */
  16. DEFINE(NR_PAGEFLAGS, __NR_PAGEFLAGS);
  17. DEFINE(MAX_NR_ZONES, __MAX_NR_ZONES);
  18. #ifdef CONFIG_SMP
  19. DEFINE(NR_CPUS_BITS, ilog2(CONFIG_NR_CPUS));
  20. #endif
  21. DEFINE(SPINLOCK_SIZE, sizeof(spinlock_t));
  22. /* End of constants */
  23. }