(CommandList children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {($ VSub_Pound '$#')} {(-gt)} {(1)}) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(DQ ($ VSub_Number '$1'))} {(Lit_Other '=')} {(DQ (-topdir))}) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:TOPDIR) op: Equal rhs: {(DQ ($ VSub_Number '$2'))} spids: [98] ) ] spids: [98] ) (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>) (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>) ] spids: [-1 95] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:TOPDIR) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(llvm-config)} {(--src-root)})]) left_token: <Left_Backtick '`'> spids: [115 119] ) } spids: [114] ) ] spids: [114] ) ] spids: [111 122] ) ] spids: [-1 76] ) ] spids: [-1 124] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(-d)} {(DQ ($ VSub_Name '$TOPDIR'))}) terminator: <Op_Semi ';'> ) ] action: [ (C {(cd)} {($ VSub_Name '$TOPDIR')}) (Pipeline children: [ (C {(./utils/llvmdo)} {(-topdir)} {(DQ ($ VSub_Name '$TOPDIR'))} {(-dirs)} {(DQ ('include lib tools test utils examples'))} {(-code-only)} {(wc)} {(-l)} ) (C {(awk)} { (SQ <'\\\n'> <' BEGIN { loc=0; } \\\n'> <' { loc += $1; } \\\n'> <' END { print loc; }'> ) } ) ] negated: False ) ] spids: [-1 139] ) ] else_action: [(C {(echo)} {(DQ ("Can't find LLVM top directory"))})] spids: [178 187] ) ] )