aboutsummaryrefslogtreecommitdiffstats
path: root/sysgen
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2015-12-23 19:05:48 +0100
committerDmitry Vyukov <dvyukov@google.com>2015-12-23 19:09:24 +0100
commit47e55508d006bacc34583c088c303f4a8fb2efcb (patch)
treee6bad609062459ab80cc2440bfcf4cdbb7498145 /sysgen
parentb4e2d91732f95688f492679496dc98ded41f97f8 (diff)
sys: sort new syscalls
Diffstat (limited to 'sysgen')
-rw-r--r--sysgen/sysgen.go21
1 files changed, 19 insertions, 2 deletions
diff --git a/sysgen/sysgen.go b/sysgen/sysgen.go
index 82e31f349..b6c54a7f9 100644
--- a/sysgen/sysgen.go
+++ b/sysgen/sysgen.go
@@ -440,6 +440,17 @@ func (a FlagArray) Len() int { return len(a) }
func (a FlagArray) Less(i, j int) bool { return a[i].name < a[j].name }
func (a FlagArray) Swap(i, j int) { a[i], a[j] = a[j], a[i] }
+type SortedSyscall struct {
+ name string
+ nr int
+}
+
+type SortedSyscallArray []SortedSyscall
+
+func (a SortedSyscallArray) Len() int { return len(a) }
+func (a SortedSyscallArray) Less(i, j int) bool { return a[i].name < a[j].name }
+func (a SortedSyscallArray) Swap(i, j int) { a[i], a[j] = a[j], a[i] }
+
func generateConsts(flags map[string]string, out io.Writer) {
var ff []F
for k, v := range flags {
@@ -456,9 +467,15 @@ func generateConsts(flags map[string]string, out io.Writer) {
fmt.Fprintf(out, ")\n")
fmt.Fprintf(out, "\n")
- fmt.Fprintf(out, "var NewSyscalls = map[string]int {\n")
+ var sorted []SortedSyscall
for call, nr := range NewSyscalls {
- fmt.Fprintf(out, " \"%v\": %v,\n", call, nr)
+ sorted = append(sorted, SortedSyscall{call, nr})
+ }
+ sort.Sort(SortedSyscallArray(sorted))
+
+ fmt.Fprintf(out, "var NewSyscalls = map[string]int {\n")
+ for _, s := range sorted {
+ fmt.Fprintf(out, " \"%v\": %v,\n", s.name, s.nr)
}
fmt.Fprintf(out, "}\n")
}