(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:SCRIPT_NAME) op: assign_op.Equal rhs: {<elf>} spids: [7] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OUTPUT_FORMAT) op: assign_op.Equal rhs: {(DQ <elf32-sh64-linux>)} spids: [10] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:NO_REL_RELOCS) op: assign_op.Equal rhs: {<yes>} spids: [15] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TEXT_START_ADDR) op: assign_op.Equal rhs: {<0x400000>} spids: [18] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:MAXPAGESIZE) op: assign_op.Equal rhs: {(DQ <'CONSTANT (MAXPAGESIZE)'>)} spids: [21] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMMONPAGESIZE) op: assign_op.Equal rhs: {(DQ <'CONSTANT (COMMONPAGESIZE)'>)} spids: [26] ) ] ) (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:ARCH) op:assign_op.Equal rhs:{<sh>} spids:[31])] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:MACHINE) op: assign_op.Equal rhs: {<sh5>} spids: [34] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:ALIGNMENT) op: assign_op.Equal rhs: {<8>} spids: [37] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TEMPLATE_NAME) op: assign_op.Equal rhs: {<elf32>} spids: [40] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:GENERATE_SHLIB_SCRIPT) op: assign_op.Equal rhs: {<yes>} spids: [43] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:GENERATE_PIE_SCRIPT) op: assign_op.Equal rhs: {<yes>} spids: [46] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:DATA_START_SYMBOLS) op: assign_op.Equal rhs: {(SQ <'PROVIDE (___data = .);'>)} spids: [51] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OTHER_READONLY_SECTIONS) op: assign_op.Equal rhs: { (SQ <'\n'> <'PROVIDE (___rodata = DEFINED (.rodata) ? .rodata : 0);\n'> <'. = ALIGN (8);\n'> ) } spids: [63] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OTHER_GOT_SECTIONS) op: assign_op.Equal rhs: {(SQ <'. = ALIGN (8);'>)} spids: [74] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CTOR_START) op: assign_op.Equal rhs: {(SQ <'___ctors = .;'>)} spids: [80] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CTOR_END) op: assign_op.Equal rhs: {(SQ <'___ctors_end = .;'>)} spids: [85] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:DTOR_START) op: assign_op.Equal rhs: {(SQ <'___dtors = .;'>)} spids: [90] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:DTOR_END) op: assign_op.Equal rhs: {(SQ <'___dtors_end = .;'>)} spids: [95] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {<test>} {<-z>} {(DQ ($ Id.VSub_DollarName '$OTHER_RELOCATING_SECTIONS'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:OTHER_RELOCATING_SECTIONS) op: assign_op.Equal rhs: {(SQ <'\n'> <' .cranges 0 : { *(.cranges) }\n'>)} spids: [120] ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXTRA_EM_FILE) op: assign_op.Equal rhs: { (braced_var_sub token: <Id.VSub_Name EXTRA_EM_FILE> suffix_op: (suffix_op.Unary tok:<Id.VTest_Hyphen -> arg_word:{<sh64elf>}) ) } spids: [133] ) ] ) ] )