(CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:in) op:Equal rhs:{(DQ ($ VSub_Number "$1"))} spids:[4])] spids: [4] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arch) op: Equal rhs: {(DQ ($ VSub_Number "$2"))} spids: [9] ) ] spids: [9] ) (FuncDef name: syscall_macro body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:nr) op: Equal rhs: {(DQ ($ VSub_Number "$1"))} spids: [22] ) ] spids: [22] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:name) op: Equal rhs: {(DQ ($ VSub_Number "$2"))} spids: [28] ) ] spids: [28] ) (C {(echo)} { (DQ ("\t[") ($ VSub_Name "$nr") ("] = ") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) ($ VSub_Name "$name") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) (",") ) } ) ] spids: [19] ) spids: [15 18] ) (FuncDef name: emit body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:nr) op: Equal rhs: {(DQ ($ VSub_Number "$1"))} spids: [57] ) ] spids: [57] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:entry) op: Equal rhs: {(DQ ($ VSub_Number "$2"))} spids: [63] ) ] spids: [63] ) (C {(syscall_macro)} {(DQ ($ VSub_Name "$nr"))} {(DQ ($ VSub_Name "$entry"))}) ] spids: [54] ) spids: [50 53] ) (C {(echo)} {(DQ ("static const char *syscalltbl_") (${ VSub_Name arch) ("[] = {"))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sorted_table) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(mktemp)} {(/tmp/syscalltbl.XXXXXX)})]) left_token: <Left_CommandSub "$("> spids: [95 99] ) } spids: [94] ) ] spids: [94] ) (Pipeline children: [ (C {(grep)} {(SQ <"^[0-9]">)} {(DQ ($ VSub_Name "$in"))}) (SimpleCommand words: [{(sort)} {(-n)}] redirects: [ (Redir op_id: Redir_Great fd: -1 arg_word: {($ VSub_Name "$sorted_table")} spids: [117] ) ] ) ] negated: False ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:max_nr) op:Equal rhs:{(0)} spids:[122])] spids: [122] ) (While cond: [ (Sentence child: (C {(read)} {(nr)} {(abi)} {(name)} {(entry)} {(compat)}) terminator: <Op_Semi ";"> ) ] body: (DoGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {($ VSub_Name "$nr")} {(-ge)} {(512)} {(Lit_Other "]")}) terminator: <Op_Semi ";"> ) ] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [-1 157] ) ] spids: [-1 166] ) (C {(emit)} {(DQ ($ VSub_Name "$nr"))} {(DQ ($ VSub_Name "$name"))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:max_nr) op: Equal rhs: {($ VSub_Name "$nr")} spids: [181] ) ] spids: [181] ) ] spids: [140 184] ) redirects: [(Redir op_id:Redir_Less fd:-1 arg_word:{($ VSub_Name "$sorted_table")} spids:[186])] ) (C {(rm)} {(-f)} {($ VSub_Name "$sorted_table")}) (C {(echo)} {(DQ ("};"))}) (C {(echo)} {(DQ ("#define SYSCALLTBL_") (${ VSub_Name arch) ("_MAX_ID ") (${ VSub_Name max_nr))}) ] )