blob: e8ca97b5c386dc8a7e5374ab0aae48091fc30b6d [file] [log] [blame]
Christoph Lameter1cdf25d2008-04-28 02:12:44 -07001/*
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
7#define __GENERATING_BOUNDS_H
8/* Include headers that define the enum constants of interest */
Christoph Lameter9223b412008-04-28 02:12:48 -07009#include <linux/page-flags.h>
Christoph Lameter97965472008-04-28 02:12:54 -070010#include <linux/mmzone.h>
Christoph Lameter37487a52008-04-29 01:03:49 -070011#include <linux/kbuild.h>
Johannes Weiner6b3ae582011-03-23 16:42:30 -070012#include <linux/page_cgroup.h>
Peter Zijlstra90572892013-10-07 11:29:20 +010013#include <linux/log2.h>
Christoph Lameter1cdf25d2008-04-28 02:12:44 -070014
15void foo(void)
16{
Sam Ravnborg01fc0ac2009-04-19 21:57:19 +020017 /* The enum constants to put into include/generated/bounds.h */
Christoph Lameter9223b412008-04-28 02:12:48 -070018 DEFINE(NR_PAGEFLAGS, __NR_PAGEFLAGS);
Christoph Lameter97965472008-04-28 02:12:54 -070019 DEFINE(MAX_NR_ZONES, __MAX_NR_ZONES);
Johannes Weiner6b3ae582011-03-23 16:42:30 -070020 DEFINE(NR_PCG_FLAGS, __NR_PCG_FLAGS);
Peter Zijlstra90572892013-10-07 11:29:20 +010021#ifdef CONFIG_SMP
22 DEFINE(NR_CPUS_BITS, ilog2(CONFIG_NR_CPUS));
23#endif
Christoph Lameter1cdf25d2008-04-28 02:12:44 -070024 /* End of constants */
25}