(command.CommandList children: [ (C {(Id.KW_Set set)} {(-e)}) (command.ShFunction name: do_command body: (command.BraceGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Id.Lit_LBracket '[')} {(-f)} {(${ Id.VSub_Name srctree) (/arch/) ($ Id.VSub_Number '$2') (/include/asm/Kbuild) } {(Id.Lit_RBracket ']')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:36) ) ] action: [ (C {(make)} {(Id.Lit_VarLike 'ARCH=') ($ Id.VSub_Number '$2')} {(Id.Lit_VarLike 'KBUILD_HEADERS=') ($ Id.VSub_Number '$1')} {(headers_) ($ Id.VSub_Number '$1')} ) ] spids: [22 38] ) ] else_action: [ (C {(printf)} {(DQ ('Ignoring arch: %s') (Id.Lit_Other '\\') (n))} {(${ Id.VSub_Name arch)} ) ] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:archs) op: assign_op.Equal rhs: { (braced_var_sub token: (Token id:Id.VSub_Name val:HDR_ARCH_LIST span_id:76) suffix_op: (suffix_op.Unary op_id: Id.VTest_ColonHyphen arg_word: { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:78) command_list: (command.CommandList children: [(C {(ls)} {(${ Id.VSub_Name srctree) (/arch)})] ) ) } ) ) } spids: [74] ) ] ) (command.ForEach iter_name: arch iter_words: [{(${ Id.VSub_Name archs)}] do_arg_iter: F body: (command.DoGroup children: [ (command.Case to_match: {(${ Id.VSub_Name arch)} arms: [ (case_arm pat_list:[{(um)}] spids:[112 113 119 -1]) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Id.Lit_LBracket '[')} {(-d)} {(${ Id.VSub_Name srctree) (/arch/) (${ Id.VSub_Name arch)} {(Id.Lit_RBracket ']')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:141) ) ] action: [ (C {(do_command)} {($ Id.VSub_Number '$1')} {(${ Id.VSub_Name arch)}) ] spids: [126 143] ) ] ) ] spids: [122 123 158 -1] ) ] ) ] ) ) ] )