Import changeset
[linux-flexiantxendom0-3.2.10.git] / arch / ia64 / tools / print_offsets.awk
1 BEGIN {
2         print "#ifndef _ASM_IA64_OFFSETS_H"
3         print "#define _ASM_IA64_OFFSETS_H"
4         print "/*"
5         print " * DO NOT MODIFY"
6         print " *"
7         print " * This file was generated by arch/ia64/tools/print_offsets.awk."
8         print " *"
9         print " */"
10         #
11         # This is a cheesy hack.  Make sure that
12         # PT_PTRACED == 1<<PT_PTRACED_BIT.
13         #
14         print "#define PT_PTRACED_BIT           0"
15         print "#define PT_TRACESYS_BIT          1"
16 }
17
18 # look for .tab:
19 #       stringz "name"
20 #       data value
21 # sequence
22
23 /.*[.]size/ {
24         inside_table = 0
25 }
26
27 /\/\/ end/ {
28         inside_table = 0
29 }
30
31 {
32         if (inside_table) {
33                 if ($1 == "//") getline;
34                 name=$2
35                 getline
36                 getline
37                 if ($1 == "//") getline;
38                 value=$2
39                 len = length(name)
40                 name = substr(name, 2, len - 2)
41                 len -= 2
42                 if (len == 0)
43                         print ""
44                 else {
45                         len += 8
46                         if (len >= 40) {
47                                 space=" "
48                         } else {
49                                 space=""
50                                 while (len < 40) {
51                                         len += 8
52                                         space = space"\t"
53                                 }
54                         }
55                         printf("#define %s%s%lu\t/* 0x%lx */\n", name, space, value, value)
56                 }
57         }
58 }
59
60 /tab:/ {
61         inside_table = 1
62 }
63
64 /tab#:/ {
65         inside_table = 1
66 }
67
68 END {
69         print ""
70         print "#endif /* _ASM_IA64_OFFSETS_H */"
71 }