(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_pkgname) op:Equal rhs:{(llvm)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(4.0.0)} spids:[15])]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_majorver)
          op: Equal
          rhs: 
            {
              (BracedVarSub
                token: <VSub_Name pkgver>
                suffix_op: (StringUnary op_id:VOp1_DPercent arg_word:{(".*")})
                spids: [19 23]
              )
            }
          spids: [18]
        )
      ]
      spids: [18]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgname)
          op: Equal
          rhs: {($ VSub_Name "$_pkgname") ($ VSub_Name "$_majorver")}
          spids: [25]
        )
      ]
      spids: [25]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(5)} spids:[29])]
      spids: [29]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: 
            {(DQ ("Low Level Virtual Machine compiler system, version ") ($ VSub_Name "$_majorver"))}
          spids: [32]
        )
      ]
      spids: [32]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[38])]
      spids: [38]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://llvm.org/"))}
          spids: [43]
        )
      ]
      spids: [43]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (UOI-NCSA))} spids:[48])]
      spids: [48]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:depends_dev)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$pkgname") ("=") ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel"))
            }
          spids: [53]
        )
      ]
      spids: [53]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"binutils-dev chrpath cmake file libffi-dev paxmark python2 py-setuptools zlib-dev"
                )
              )
            }
          spids: [62]
        )
      ]
      spids: [62]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$pkgname") ("-static ") ($ VSub_Name "$pkgname") ("-libs ") 
                ($ VSub_Name "$pkgname") ("-dev ") ($ VSub_Name "$pkgname") ("-test-utils:_test_utils")
              )
            }
          spids: [67]
        )
      ]
      spids: [67]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ("http://llvm.org/releases/") ($ VSub_Name "$pkgver") (/llvm-) ($ VSub_Name "$pkgver") 
                (".src.tar.xz\n") ("\tllvm-fix-build-with-musl-libc.patch\n") 
                ("\tllvm-fix-DynamicLibrary-to-build-with-musl-libc.patch\n") ("\tcmake-fix-libLLVM-name.patch\n") ("\tdisable-FileSystemTest.CreateDir-perms-assert.patch\n") 
                ("\tsilent-amdgpu-test-failing.patch\n") ("\tfix-CheckAtomic.cmake.patch\n") ("\t")
              )
            }
          spids: [79]
        )
      ]
      spids: [79]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$srcdir") (/) ($ VSub_Name "$_pkgname") (-) ($ VSub_Name "$pkgver") (.src))
            }
          spids: [95]
        )
      ]
      spids: [95]
    )
    (Case
      to_match: {(DQ ($ VSub_Name "$CARCH"))}
      arms: [
        (case_arm
          pat_list: [{(arm) (Lit_Other "*")}]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:options)
                  op: Equal
                  rhs: {(DQ ("!check"))}
                  spids: [125]
                )
              ]
              spids: [125]
            )
          ]
          spids: [121 123 129 -1]
        )
      ]
      spids: [112 118 131]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_default_llvm) op:Equal rhs:{(DQ (yes))} spids:[137])]
      spids: [137]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$_default_llvm"))} {(Lit_Other "=")} {(yes)} 
                  {(Lit_Other "]")}
                )
              terminator: <Op_Semi ";">
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:provides)
                  op: Equal
                  rhs: {(DQ ("llvm=") ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel"))}
                  spids: [161]
                )
              ]
              spids: [161]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:replaces)
                  op: Equal
                  rhs: {(DQ (llvm))}
                  spids: [170]
                )
              ]
              spids: [170]
            )
          ]
          spids: [-1 158]
        )
      ]
      spids: [-1 175]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_prefix)
          op: Equal
          rhs: {(DQ (usr/lib/llvm) ($ VSub_Name "$_majorver"))}
          spids: [232]
        )
      ]
      spids: [232]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {(default_prepare)})
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(rm)} {(test/tools/llvm-symbolizer/print_context.c)})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$builddir")) (/build)})
          ]
          spids: [243]
        )
      spids: [239 242]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/build)})
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:ffi_include_dir)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (Pipeline
                                  children: [
                                    (C {(pkg-config)} {(--cflags-only-I)} {(libffi)})
                                    (C {(sed)} {(SQ <"s|^-I||g">)})
                                  ]
                                  negated: False
                                )
                              ]
                            )
                          left_token: <Left_CommandSub "$(">
                          spids: [303 317]
                        )
                      )
                    }
                  spids: [301]
                )
              ]
              spids: [299]
            )
            (C {(cmake)} {(-G)} {(DQ ("Unix Makefiles"))} {(-Wno-dev)} 
              {(-DCMAKE_BUILD_TYPE) (Lit_Other "=") (Release)} {(-DCMAKE_INSTALL_PREFIX) (Lit_Other "=") (/) ($ VSub_Name "$_prefix")} 
              {(-DCMAKE_VERBOSE_MAKEFILE) (Lit_Other "=") (NO)} {(-DFFI_INCLUDE_DIR) (Lit_Other "=") (DQ ($ VSub_Name "$ffi_include_dir"))} 
              {(-DLLVM_BINUTILS_INCDIR) (Lit_Other "=") (/usr/include)} {(-DLLVM_BUILD_DOCS) (Lit_Other "=") (OFF)} {(-DLLVM_BUILD_EXAMPLES) (Lit_Other "=") (OFF)} 
              {(-DLLVM_BUILD_EXTERNAL_COMPILER_RT) (Lit_Other "=") (ON)} {(-DLLVM_BUILD_LLVM_DYLIB) (Lit_Other "=") (ON)} {(-DLLVM_BUILD_TESTS) (Lit_Other "=") (ON)} 
              {(-DLLVM_DEFAULT_TARGET_TRIPLE) (Lit_Other "=") (DQ ($ VSub_Name "$CBUILD"))} {(-DLLVM_DYLIB_EXPORT_ALL) (Lit_Other "=") (ON)} {(-DLLVM_ENABLE_ASSERTIONS) (Lit_Other "=") (OFF)} 
              {(-DLLVM_ENABLE_CXX1Y) (Lit_Other "=") (ON)} {(-DLLVM_ENABLE_FFI) (Lit_Other "=") (ON)} {(-DLLVM_ENABLE_LIBCXX) (Lit_Other "=") (OFF)} 
              {(-DLLVM_ENABLE_PIC) (Lit_Other "=") (ON)} {(-DLLVM_ENABLE_RTTI) (Lit_Other "=") (ON)} {(-DLLVM_ENABLE_SPHINX) (Lit_Other "=") (OFF)} 
              {(-DLLVM_ENABLE_TERMINFO) (Lit_Other "=") (ON)} {(-DLLVM_ENABLE_ZLIB) (Lit_Other "=") (ON)} 
              {(-DLLVM_HOST_TRIPLE) (Lit_Other "=") (DQ ($ VSub_Name "$CHOST"))} {(-DLLVM_INCLUDE_EXAMPLES) (Lit_Other "=") (OFF)} {(-DLLVM_LINK_LLVM_DYLIB) (Lit_Other "=") (ON)} 
              {(-DLLVM_TARGETS_TO_BUILD) (Lit_Other "=") 
                (SQ <"X86;ARM;AArch64;PowerPC;SystemZ;AMDGPU;NVPTX;Mips;BPF">)
              } {(DQ ($ VSub_Name "$builddir"))}
            )
            (C {(make)} {(llvm-tblgen)})
            (C {(make)})
            (C {(paxmark)} {(m)} {(bin/llvm-rtdyld)} {(bin/lli)} {(bin/lli-child-target)} 
              {(unittests/ExecutionEngine/MCJIT/MCJITTests)} {(unittests/ExecutionEngine/Orc/OrcJITTests)} {(unittests/Support/SupportTests)}
            )
            (C {(python2)} {(../utils/lit/setup.py)} {(build)})
          ]
          spids: [283]
        )
      spids: [279 282]
    )
    (FuncDef
      name: check
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/build)})
            (Case
              to_match: {(DQ ($ VSub_Name "$CARCH"))}
              arms: [
                (case_arm
                  pat_list: [{(s390x)}]
                  action: [(AndOr children:[(C {(make)} {(check-llvm)})(C {(true)})] op_id:Op_DPipe)]
                  spids: [580 581 590 -1]
                )
                (case_arm
                  pat_list: [{(Lit_Other "*")}]
                  action: [(C {(make)} {(check-llvm)})]
                  spids: [593 594 599 -1]
                )
              ]
              spids: [571 577 602]
            )
          ]
          spids: [551]
        )
      spids: [547 550]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/build)})
            (C {(make)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(install)})
            (C {(cd)} {(DQ ($ VSub_Name "$pkgdir")) (/) ($ VSub_Name "$_prefix")})
            (Pipeline
              children: [
                (C {(file)} {(lib/) (Lit_Other "*") (.so)} {(bin/) (Lit_Other "*")})
                (C {(awk)} {(-F) (Lit_Other ":")} {(SQ <"$2~/ELF/{print $1}">)})
                (C {(xargs)} {(-r)} {(chrpath)} {(-d)})
              ]
              negated: False
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin)})
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair lhs:(LhsName name:name) op:Equal spids:[700])
                (assign_pair lhs:(LhsName name:newname) op:Equal spids:[702])
                (assign_pair lhs:(LhsName name:path) op:Equal spids:[704])
              ]
              spids: [698]
            )
            (ForEach
              iter_name: path
              iter_words: [{(bin/) (Lit_Other "*")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:name)
                          op: Equal
                          rhs: 
                            {
                              (BracedVarSub
                                token: <VSub_Name path>
                                suffix_op: 
                                  (StringUnary
                                    op_id: VOp1_DPound
                                    arg_word: {("*") (Lit_Slash /)}
                                  )
                                spids: [721 726]
                              )
                            }
                          spids: [720]
                        )
                      ]
                      spids: [720]
                    )
                    (Case
                      to_match: {(DQ ($ VSub_Name "$name"))}
                      arms: [
                        (case_arm
                          pat_list: [{(llvm-) (Lit_Other "*")}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:newname)
                                  op: Equal
                                  rhs: 
                                    {
                                      (DQ (llvm) ($ VSub_Name "$_majorver") (-) 
                                        (BracedVarSub
                                          token: <VSub_Name name>
                                          suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{(llvm-)})
                                          spids: [751 755]
                                        )
                                      )
                                    }
                                  spids: [746]
                                )
                              ]
                              spids: [746]
                            )
                          ]
                          spids: [742 744 757 -1]
                        )
                        (case_arm
                          pat_list: [{(Lit_Other "*")}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:newname)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name "$name") ($ VSub_Name "$_majorver"))}
                                  spids: [763]
                                )
                              ]
                              spids: [763]
                            )
                          ]
                          spids: [760 761 768 -1]
                        )
                      ]
                      spids: [733 739 771]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$_default_llvm"))} 
                                  {(Lit_Other "=")} {(yes)} {(Lit_Other "]")}
                                )
                              terminator: <Op_Semi ";">
                            )
                          ]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:newname)
                                  op: Equal
                                  rhs: {($ VSub_Name "$name")}
                                  spids: [800]
                                )
                              ]
                              spids: [800]
                            )
                          ]
                          spids: [-1 797]
                        )
                      ]
                      spids: [-1 804]
                    )
                    (Case
                      to_match: {(DQ ($ VSub_Name "$name"))}
                      arms: [
                        (case_arm
                          pat_list: [{(FileCheck)} {(obj2yaml)} {(yaml2obj)}]
                          action: [(ControlFlow token:<ControlFlow_Continue continue>)]
                          spids: [816 825 828 -1]
                        )
                      ]
                      spids: [807 813 831]
                    )
                    (C {(ln)} {(-s)} 
                      {(../lib/llvm) ($ VSub_Name "$_majorver") (/bin/) ($ VSub_Name "$name")} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/) ($ VSub_Name "$newname")}
                    )
                  ]
                  spids: [717 850]
                )
              spids: [712 715]
            )
            (C {(_mv)} {(include/) (Lit_Other "*")} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/include/) ($ VSub_Name "$pkgname") (/)}
            )
            (C {(rmdir)} {(include)})
            (C {(ln)} {(-s)} {(../../include/) ($ VSub_Name "$pkgname")} {(include)})
            (C {(_mv)} {(lib/cmake/llvm/) (Lit_Other "*")} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/cmake/) ($ VSub_Name "$pkgname") (/)}
            )
            (C {(rmdir)} {(lib/cmake/llvm)})
            (C {(ln)} {(-s)} {(../../../cmake/) ($ VSub_Name "$pkgname")} {(lib/cmake/llvm)})
          ]
          spids: [611]
        )
      spids: [607 610]
    )
    (FuncDef
      name: static
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("LLVM ") ($ VSub_Name "$_majorver") (" static libraries"))}
                  spids: [936]
                )
              ]
              spids: [936]
            )
            (C {(_common_subpkg)})
            (C {(_mv)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/) ($ VSub_Name "$_prefix") (/lib/) (Lit_Other "*") (.a)} {(DQ ($ VSub_Name "$subpkgdir")) (/) ($ VSub_Name "$_prefix") (/lib/)}
            )
          ]
          spids: [933]
        )
      spids: [929 932]
    )
    (FuncDef
      name: libs
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("LLVM ") ($ VSub_Name "$_majorver") (" runtime library"))}
                  spids: [976]
                )
              ]
              spids: [976]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:soname)
                  op: Equal
                  rhs: {(DQ (libLLVM-) ($ VSub_Name "$_majorver") (.0.so))}
                  spids: [986]
                )
              ]
              spids: [984]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:soname2)
                  op: Equal
                  rhs: {(DQ (libLLVM-) ($ VSub_Name "$pkgver") (.so))}
                  spids: [996]
                )
              ]
              spids: [994]
            )
            (C {(_common_subpkg)})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir"))})
            (C {(cd)} {(DQ ($ VSub_Name "$subpkgdir"))})
            (C {(_mv)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/) ($ VSub_Name "$_prefix") (/lib/) 
                ($ VSub_Name "$soname")
              } {(usr/lib/)}
            )
            (C {(ln)} {(-s)} {($ VSub_Name "$soname")} {(usr/lib/) ($ VSub_Name "$soname2")})
            (C {(mkdir)} {(-p)} {($ VSub_Name "$_prefix") (/lib)})
            (C {(ln)} {(-s)} {(../../) ($ VSub_Name "$soname")} 
              {($ VSub_Name "$_prefix") (/lib/) ($ VSub_Name "$soname")}
            )
            (C {(ln)} {(-s)} {(../../) ($ VSub_Name "$soname")} 
              {($ VSub_Name "$_prefix") (/lib/) ($ VSub_Name "$soname2")}
            )
          ]
          spids: [973]
        )
      spids: [969 972]
    )
    (FuncDef
      name: dev
      body: 
        (BraceGroup
          children: [
            (C {(_common_subpkg)})
            (C {(default_dev)})
            (C {(cd)} {(DQ ($ VSub_Name "$subpkgdir"))})
            (C {(_mv)} {(DQ ($ VSub_Name "$pkgdir")) (/) ($ VSub_Name "$_prefix") (/lib)} 
              {($ VSub_Name "$_prefix") (/)}
            )
            (C {(_mv)} {(DQ ($ VSub_Name "$pkgdir")) (/) ($ VSub_Name "$_prefix") (/include)} 
              {($ VSub_Name "$_prefix") (/)}
            )
            (C {(_mv)} {(DQ ($ VSub_Name "$pkgdir")) (/) ($ VSub_Name "$_prefix") (/bin/llvm-config)} 
              {($ VSub_Name "$_prefix") (/bin/)}
            )
          ]
          spids: [1099]
        )
      spids: [1095 1098]
    )
    (FuncDef
      name: _test_utils
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: 
                    {
                      (DQ ("LLVM ") ($ VSub_Name "$_majorver") 
                        (" utilities for executing LLVM and Clang style test suites")
                      )
                    }
                  spids: [1165]
                )
              ]
              spids: [1165]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ ("python2 py-setuptools"))}
                  spids: [1173]
                )
              ]
              spids: [1173]
            )
            (C {(_common_subpkg)})
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:replaces) op:Equal rhs:{(DQ )} spids:[1182])]
              spids: [1182]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:litver)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (SimpleCommand
                                    words: [
                                      {(python2)}
                                      {(DQ ($ VSub_Name "$builddir")) (/utils/lit/setup.py)}
                                      {(--version)}
                                    ]
                                    redirects: [
                                      (Redir
                                        op_id: Redir_Great
                                        fd: 2
                                        arg_word: {(/dev/null)}
                                        spids: [1201]
                                      )
                                    ]
                                  )
                                  (C {(sed)} {(SQ <"s/\\.dev.*$//">)})
                                ]
                                negated: False
                              )
                            ]
                          )
                        left_token: <Left_CommandSub "$(">
                        spids: [1191 1213]
                      )
                    }
                  spids: [1190]
                )
              ]
              spids: [1188]
            )
            (AndOr
              children: [
                (C {(test)} {(-n)} {(DQ ($ VSub_Name "$litver"))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:provides)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$provides") (" lit=") ($ VSub_Name "$litver") (-r) 
                        ($ VSub_Name "$pkgrel")
                      )
                    }
                  spids: [1231]
                )
              ]
              spids: [1231]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/build)})
            (C {(install)} {(-D)} {(-m)} {(755)} {(bin/FileCheck)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/) ($ VSub_Name "$_prefix") (/bin/FileCheck)}
            )
            (C {(install)} {(-D)} {(-m)} {(755)} {(bin/not)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/) ($ VSub_Name "$_prefix") (/bin/not)}
            )
            (C {(python2)} {(../utils/lit/setup.py)} {(install)} {(--prefix) (Lit_Other "=") (/usr)} 
              {(--root) (Lit_Other "=") (DQ ($ VSub_Name "$subpkgdir"))}
            )
            (C {(ln)} {(-s)} {(../../../bin/lit)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/) ($ VSub_Name "$_prefix") (/bin/lit)}
            )
          ]
          spids: [1162]
        )
      spids: [1158 1161]
    )
    (FuncDef
      name: _common_subpkg
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$_default_llvm"))} {(Lit_Other "=")} 
                          {(yes)} {(Lit_Other "]")}
                        )
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:replaces)
                          op: Equal
                          rhs: 
                            {
                              (DQ (llvm) 
                                (BracedVarSub
                                  token: <VSub_Name subpkgname>
                                  suffix_op: 
                                    (StringUnary
                                      op_id: VOp1_Pound
                                      arg_word: {($ VSub_Name "$pkgname")}
                                    )
                                  spids: [1349 1353]
                                )
                              )
                            }
                          spids: [1346]
                        )
                      ]
                      spids: [1346]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:provides)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name "$replaces") ("=") ($ VSub_Name "$pkgver") (-r) 
                                ($ VSub_Name "$pkgrel")
                              )
                            }
                          spids: [1357]
                        )
                      ]
                      spids: [1357]
                    )
                  ]
                  spids: [-1 1343]
                )
              ]
              spids: [-1 1367]
            )
          ]
          spids: [1325]
        )
      spids: [1321 1324]
    )
    (FuncDef
      name: _mv
      body: 
        (BraceGroup
          children: [
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:dest) op:Equal spids:[1381])]
                  spids: [1379]
                )
              terminator: <Op_Semi ";">
            )
            (ForEach
              iter_name: dest
              do_arg_iter: True
              body: 
                (DoGroup
                  children: [(Sentence child:(C {(true)}) terminator:<Op_Semi ";">)]
                  spids: [1389 1394]
                )
              spids: [-1 -1]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$dest"))})
            (C {(mv)} {($ VSub_At "$@")})
          ]
          spids: [1376]
        )
      spids: [1372 1375]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"cf681f0626ef6d568d951cdc3e143471a1d7715a0ba11e52aa273cf5d8d421e1357ef2645cc85879eaefcd577e99e74d07b01566825b3d0461171ef2cbfc7704  llvm-4.0.0.src.tar.xz\n"
                ) 
                (
"f84cd65d7042e89826ba6e8d48c4c302bf4980da369d7f19a55f217e51c00ca8ed178d453df3a3cee76598a7cecb94aed0775a6d24fe73266f82749913fc3e71  llvm-fix-build-with-musl-libc.patch\n"
                ) 
                (
"19bfb9282455d39d07dbb2b1293b03a45c57d522fbb9c5e58dac034200669628b97e7a90cd4ff5d52d9bb79acfccbef653d8a1140a7f0589ecd6f9b7c4ba0eb6  llvm-fix-DynamicLibrary-to-build-with-musl-libc.patch\n"
                ) 
                (
"6d1a716e5aa24e6b9a3acf4cc11e2504b1b01abf574074e9e5617b991de87d5e4e687eb18e85e73d5e632568afe2fc357771c4c96f9e136502071991496fb78c  cmake-fix-libLLVM-name.patch\n"
                ) 
                (
"49c47f125014b60d0ea7870f981a2c1708ad705793f89287ed846ee881a837a4dc0170bf467e03f2ef56177473128945287749ac80dc2d13cfabcf8b929ba58a  disable-FileSystemTest.CreateDir-perms-assert.patch\n"
                ) 
                (
"97f788110abbb9e6add2e3a3d3b606dc2817ab726b74ead71241fc5433ba42d5d58e23be91a3b2444eb687c4f56a7c879bf5453e96f9785ce3541301329dda9c  silent-amdgpu-test-failing.patch\n"
                ) 
                (
"3bcfeccc1f14567f99029a131b1289290226d48855857f2eb6a251e041981a8b8b2d7965099df16ebf0a406e48130679f97235ef3f3524577413bb51cf40e613  fix-CheckAtomic.cmake.patch"
                )
              )
            }
          spids: [1416]
        )
      ]
      spids: [1416]
    )
  ]
)