(CommandList children: [ (FuncDef name: escape_eregexp body: (BraceGroup children: [ (C {(sed)} {(-r)} {(SQ <'s/(\\*|\\.|\\[|\\^|\\$|\\[|\\]|\\||\\{|\\}|\\?|\\+|\\(|\\)|\\\\)/\\\\\\1/g'>)} ) ] spids: [16] ) spids: [11 15] ) (FuncDef name: escapefn_eregexp body: (BraceGroup children: [ (Pipeline children: [(C {(echo)} {(DQ ($ VSub_Number '$1'))}) (C {(escape_eregexp)})] negated: False ) ] spids: [43] ) spids: [38 42] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line_regexp) op: Equal rhs: {(SQ <'^[0-9a-f]* <([^>]*)>'>)} spids: [68] ) ] spids: [68] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:alloc_site_regexp) op: Equal rhs: {(DQ (${ VSub_Name line_regexp) ('.*')) (SQ <'call.*alloc'>)} spids: [73] ) ] spids: [73] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:allocation_sites) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(objdump)} {(--prefix-addresses)} {(-d)} {(DQ ($ VSub_Number '$1'))}) (C {(egrep)} {(DQ ($ VSub_Name '$alloc_site_regexp'))}) (C {(sed)} {(-r)} { (DQ (s/) (${ VSub_Name alloc_site_regexp) ('.*/') (EscapedLiteralPart token: <Lit_EscapedChar '\\1'> ) (/) ) } ) ] negated: False ) ] ) left_token: <Left_CommandSub '$('> spids: [86 124] ) ) } spids: [84] ) ] spids: [84] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:objdump_output) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(objdump)} {(--prefix-addresses)} {(-dS)} {(DQ ($ VSub_Number '$1'))}) ] ) left_token: <Left_CommandSub '$('> spids: [136 148] ) ) } spids: [134] ) ] spids: [134] ) (While cond: [(Sentence child:(C {(read)} {(sym)} {(offset)}) terminator:<Op_Semi ';'>)] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:regexp) op: Equal rhs: { (DQ ('<') (CommandSubPart command_list: (CommandList children: [(C {(escapefn_eregexp)} {(DQ ($ VSub_Name '$sym'))})] ) left_token: <Left_CommandSub '$('> spids: [175 183] ) (EscapedLiteralPart token:<Lit_EscapedChar '\\+'>) (CommandSubPart command_list: (CommandList children: [(C {(escapefn_eregexp)} {(DQ ($ VSub_Name '$offset'))})] ) left_token: <Left_CommandSub '$('> spids: [185 192] ) ('>') ) } spids: [172] ) ] spids: [172] ) (SimpleCommand words: [{(echo)} {(DQ ('regexp: ') ($ VSub_Name '$regexp'))}] redirects: [(Redir op_id:Redir_GreatAnd fd:1 arg_word:{(2)} spids:[204])] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:context) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(DQ ($ VSub_Name '$objdump_output'))}) (C {(egrep)} {(-B200)} {(DQ ($ VSub_Name '$regexp'))}) ] negated: False ) ] ) left_token: <Left_CommandSub '$('> spids: [218 236] ) ) } spids: [216] ) ] spids: [216] ) (SimpleCommand words: [{(echo)} {(DQ ('context: ') ($ VSub_Name '$context'))}] redirects: [(Redir op_id:Redir_GreatAnd fd:1 arg_word:{(2)} spids:[250])] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(DQ ($ VSub_Name '$context'))}) (C {(egrep)} {(-v)} {(DQ ($ VSub_Name '$line_regexp'))}) (C {(tr)} {(SQ <'\\n'>)} {(SQ <' '>)}) ] negated: False ) ] ) left_token: <Left_CommandSub '$('> spids: [260 290] ) ) } spids: [258] ) ] spids: [258] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:token) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(DQ ($ VSub_Name '$source'))}) (C {(egrep)} {(SQ <'(new|sizeof)([^0-9a-z_]|$)'>)}) (C {(sed)} {(-r)} {(SQ <'s/.*(new|sizeof)([^0-9a-zA-Z_]|$)/\\2/'>)}) (C {(sed)} {(-r)} {(SQ <'s/[^0-9a-zA-Z_]*([a-zA-Z0-9_ \\*]+).*/\\1/'>)} ) ] negated: False ) ] ) left_token: <Left_CommandSub '$('> spids: [307 343] ) ) } spids: [305] ) ] spids: [305] ) (SimpleCommand words: [{(echo)} {(DQ ('token: ') ($ VSub_Name '$token'))}] redirects: [(Redir op_id:Redir_GreatAnd fd:1 arg_word:{(2)} spids:[357])] ) (C {(echo)} { (DQ ('Guessed that site <') (${ VSub_Name sym) ('+') (${ VSub_Name offset) ('> allocated: ') (${ VSub_Name token) ) } ) ] spids: [161 382] ) redirects: [ (Redir op_id: Redir_TLess fd: -1 arg_word: { (DQ (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(DQ ($ VSub_Name '$allocation_sites'))}) (C {(sed)} {(-r)} {(SQ <'s/\\+(0x[0-9a-f]*)$/ \\1/'>)}) ] negated: False ) ] ) left_token: <Left_CommandSub '$('> spids: [386 404] ) ) } spids: [384] ) ] ) ] )