 Directories
      ¶
      Directories
      ¶
    
    | Path | Synopsis | 
|---|---|
| Package bisect can be used by compilers and other programs to serve as a target for the bisect debugging tool. | Package bisect can be used by compilers and other programs to serve as a target for the bisect debugging tool. | 
| Package buildcfg provides access to the build configuration described by the current environment. | Package buildcfg provides access to the build configuration described by the current environment. | 
| Package cfg holds configuration shared by the Go command and github.com/go-asm/go/testenv. | Package cfg holds configuration shared by the Go command and github.com/go-asm/go/testenv. | 
| cmd
       | |
| 
          
            api
            
            
          
           Package api computes the exported API of a set of Go packages. | Package api computes the exported API of a set of Go packages. | 
| 
          
            archive
            
            
          
           Package archive implements reading of archive files generated by the Go toolchain. | Package archive implements reading of archive files generated by the Go toolchain. | 
| 
          
            asm/arch
            
            
          
           Package arch defines architecture-specific information and support functions. | Package arch defines architecture-specific information and support functions. | 
| 
          
            asm/asm
            
            
          
           Package asm implements the parser and instruction generator for the assembler. | Package asm implements the parser and instruction generator for the assembler. | 
| 
          
            asm/flags
            
            
          
           Package flags implements top-level flags and the usage message for the assembler. | Package flags implements top-level flags and the usage message for the assembler. | 
| 
          
            asm/lex
            
            
          
           Package lex implements lexical analysis for the assembler. | Package lex implements lexical analysis for the assembler. | 
| 
          
            bio
            
            
          
           Package bio implements common I/O abstractions used within the Go toolchain. | Package bio implements common I/O abstractions used within the Go toolchain. | 
| 
          
            browser
            
            
          
           Package browser provides utilities for interacting with users' browsers. | Package browser provides utilities for interacting with users' browsers. | 
| 
          
            cgo
            
            
          
           Cgo enables the creation of Go packages that call C code. | Cgo enables the creation of Go packages that call C code. | 
| 
          
            codesign
            
            
          
           Package codesign provides basic functionalities for ad-hoc code signing of Mach-O files. | Package codesign provides basic functionalities for ad-hoc code signing of Mach-O files. | 
| 
          
            compile/compare
            
            
          
           Package compare contains code for generating comparison routines for structs, strings and interfaces. | Package compare contains code for generating comparison routines for structs, strings and interfaces. | 
| 
          
            compile/devirtualize
            
            
          
           Package devirtualize implements two "devirtualization" optimization passes: | Package devirtualize implements two "devirtualization" optimization passes: | 
| 
          
            compile/importer
            
            
          
           package importer implements Import for gc-generated object files. | package importer implements Import for gc-generated object files. | 
| 
          
            compile/loopvar
            
            
          
           Package loopvar applies the proper variable capture, according to experiment, flags, language version, etc. | Package loopvar applies the proper variable capture, according to experiment, flags, language version, etc. | 
| 
          
            compile/pgo/internal/graph
            
            
          
           Package graph represents a pprof profile as a directed graph. | Package graph represents a pprof profile as a directed graph. | 
| 
          
            compile/ssa/_gen
            
            command
          
           The gen command generates Go code (in the parent directory) for all the architecture-specific opcodes, blocks, and rewrites. | The gen command generates Go code (in the parent directory) for all the architecture-specific opcodes, blocks, and rewrites. | 
| 
          
            compile/types2
            
            
          
           Package types declares the data types and implements the algorithms for type-checking of Go packages. | Package types declares the data types and implements the algorithms for type-checking of Go packages. | 
| 
          
            covdata
            
            
          
           Covdata is a program for manipulating and generating reports from 2nd-generation coverage testing output files, those produced from running applications or integration tests. | Covdata is a program for manipulating and generating reports from 2nd-generation coverage testing output files, those produced from running applications or integration tests. | 
| 
          
            dist
            
            
          
           Dist helps bootstrap, build, and test the Go distribution. | Dist helps bootstrap, build, and test the Go distribution. | 
| 
          
            doc
            
            
          
           Doc (usually run as go doc) accepts zero, one or two arguments. | Doc (usually run as go doc) accepts zero, one or two arguments. | 
| 
          
            dwarf
            
            
          
           Package dwarf generates DWARF debugging information. | Package dwarf generates DWARF debugging information. | 
| 
          
            edit
            
            
          
           Package edit implements buffered position-based editing of byte slices. | Package edit implements buffered position-based editing of byte slices. | 
| 
          
            fix
            
            
          
           Fix finds Go programs that use old APIs and rewrites them to use newer ones. | Fix finds Go programs that use old APIs and rewrites them to use newer ones. | 
| 
          
            gcprog
            
            
          
           Package gcprog implements an encoder for packed GC pointer bitmaps, known as GC programs. | Package gcprog implements an encoder for packed GC pointer bitmaps, known as GC programs. | 
| 
          
            go/auth
            
            
          
           Package auth provides access to user-provided authentication credentials. | Package auth provides access to user-provided authentication credentials. | 
| 
          
            go/base
            
            
          
           Package base defines shared basic pieces of the go command, in particular logging and the Command structure. | Package base defines shared basic pieces of the go command, in particular logging and the Command structure. | 
| 
          
            go/bug
            
            
          
           Package bug implements the “go bug” command. | Package bug implements the “go bug” command. | 
| 
          
            go/cache
            
            
          
           Package cache implements a build artifact cache. | Package cache implements a build artifact cache. | 
| 
          
            go/cfg
            
            
          
           Package cfg holds configuration shared by multiple parts of the go command. | Package cfg holds configuration shared by multiple parts of the go command. | 
| 
          
            go/clean
            
            
          
           Package clean implements the “go clean” command. | Package clean implements the “go clean” command. | 
| 
          
            go/cmdflag
            
            
          
           Package cmdflag handles flag processing common to several go tools. | Package cmdflag handles flag processing common to several go tools. | 
| 
          
            go/doc
            
            
          
           Package doc implements the “go doc” command. | Package doc implements the “go doc” command. | 
| 
          
            go/envcmd
            
            
          
           Package envcmd implements the “go env” command. | Package envcmd implements the “go env” command. | 
| 
          
            go/fix
            
            
          
           Package fix implements the “go fix” command. | Package fix implements the “go fix” command. | 
| 
          
            go/fmtcmd
            
            
          
           Package fmtcmd implements the “go fmt” command. | Package fmtcmd implements the “go fmt” command. | 
| 
          
            go/fsys
            
            
          
           Package fsys is an abstraction for reading files that allows for virtual overlays on top of the files on disk. | Package fsys is an abstraction for reading files that allows for virtual overlays on top of the files on disk. | 
| 
          
            go/generate
            
            
          
           Package generate implements the “go generate” command. | Package generate implements the “go generate” command. | 
| 
          
            go/get
            
            
          
           Package get implements the “go get” command. | Package get implements the “go get” command. | 
| 
          
            go/gover
            
            
          
           Package gover implements support for Go toolchain versions like 1.21.0 and 1.21rc1. | Package gover implements support for Go toolchain versions like 1.21.0 and 1.21rc1. | 
| 
          
            go/help
            
            
          
           Package help implements the “go help” command. | Package help implements the “go help” command. | 
| 
          
            go/list
            
            
          
           Package list implements the “go list” command. | Package list implements the “go list” command. | 
| 
          
            go/load
            
            
          
           Package load loads packages. | Package load loads packages. | 
| 
          
            go/lockedfile
            
            
          
           Package lockedfile creates and manipulates files whose contents should only change atomically. | Package lockedfile creates and manipulates files whose contents should only change atomically. | 
| 
          
            go/lockedfile/internal/filelock
            
            
          
           Package filelock provides a platform-independent API for advisory file locking. | Package filelock provides a platform-independent API for advisory file locking. | 
| 
          
            go/mmap
            
            
          
           The mmap package provides an abstraction for memory mapping files on different platforms. | The mmap package provides an abstraction for memory mapping files on different platforms. | 
| 
          
            go/modcmd
            
            
          
           Package modcmd implements the “go mod” command. | Package modcmd implements the “go mod” command. | 
| 
          
            go/modfetch/codehost
            
            
          
           Package codehost defines the interface implemented by a code hosting source, along with support code for use by implementations. | Package codehost defines the interface implemented by a code hosting source, along with support code for use by implementations. | 
| 
          
            go/modget
            
            
          
           Package modget implements the module-aware “go get” command. | Package modget implements the module-aware “go get” command. | 
| 
          
            go/mvs
            
            
          
           Package mvs implements Minimal Version Selection. | Package mvs implements Minimal Version Selection. | 
| 
          
            go/par
            
            
          
           Package par implements parallel execution helpers. | Package par implements parallel execution helpers. | 
| 
          
            go/robustio
            
            
          
           Package robustio wraps I/O functions that are prone to failure on Windows, transparently retrying errors up to an arbitrary timeout. | Package robustio wraps I/O functions that are prone to failure on Windows, transparently retrying errors up to an arbitrary timeout. | 
| 
          
            go/run
            
            
          
           Package run implements the “go run” command. | Package run implements the “go run” command. | 
| 
          
            go/script
            
            
          
           Package script implements a small, customizable, platform-agnostic scripting language. | Package script implements a small, customizable, platform-agnostic scripting language. | 
| 
          
            go/script/scripttest
            
            
          
           Package scripttest adapts the script engine for use in tests. | Package scripttest adapts the script engine for use in tests. | 
| 
          
            go/str
            
            
          
           Package str provides string manipulation utilities. | Package str provides string manipulation utilities. | 
| 
          
            go/tool
            
            
          
           Package tool implements the “go tool” command. | Package tool implements the “go tool” command. | 
| 
          
            go/toolchain
            
            
          
           Package toolchain implements dynamic switching of Go toolchains. | Package toolchain implements dynamic switching of Go toolchains. | 
| 
          
            go/vcweb
            
            
          
           Package vcweb serves version control repos for testing the go command. | Package vcweb serves version control repos for testing the go command. | 
| 
          
            go/vcweb/vcstest
            
            
          
           Package vcstest serves the repository scripts in cmd/go/testdata/vcstest using the [vcweb] script engine. | Package vcstest serves the repository scripts in cmd/go/testdata/vcstest using the [vcweb] script engine. | 
| 
          
            go/version
            
            
          
           Package version implements the “go version” command. | Package version implements the “go version” command. | 
| 
          
            go/vet
            
            
          
           Package vet implements the “go vet” command. | Package vet implements the “go vet” command. | 
| 
          
            go/web
            
            
          
           Package web defines minimal helper routines for accessing HTTP/HTTPS resources without requiring external dependencies on the net package. | Package web defines minimal helper routines for accessing HTTP/HTTPS resources without requiring external dependencies on the net package. | 
| 
          
            go/workcmd
            
            
          
           Package workcmd implements the “go work” command. | Package workcmd implements the “go work” command. | 
| 
          
            gofmt
            
            
          
           Gofmt formats Go programs. | Gofmt formats Go programs. | 
| 
          
            link/benchmark
            
            
          
           Package benchmark provides a Metrics object that enables memory and CPU profiling for the linker. | Package benchmark provides a Metrics object that enables memory and CPU profiling for the linker. | 
| 
          
            link/loadelf
            
            
          
           Package loadelf implements an ELF file reader. | Package loadelf implements an ELF file reader. | 
| 
          
            link/loadmacho
            
            
          
           Package loadmacho implements a Mach-O file reader. | Package loadmacho implements a Mach-O file reader. | 
| 
          
            link/loadpe
            
            
          
           Package loadpe implements a PE/COFF file reader. | Package loadpe implements a PE/COFF file reader. | 
| 
          
            link/loadxcoff
            
            
          
           Package loadxcoff implements a XCOFF file reader. | Package loadxcoff implements a XCOFF file reader. | 
| 
          
            nm
            
            
          
           Nm lists the symbols defined or used by an object file, archive, or executable. | Nm lists the symbols defined or used by an object file, archive, or executable. | 
| 
          
            notsha256
            
            
          
           Package notsha256 implements the NOTSHA256 algorithm, a hash defined as bitwise NOT of SHA256. | Package notsha256 implements the NOTSHA256 algorithm, a hash defined as bitwise NOT of SHA256. | 
| 
          
            obj/arm64
            
            
          
           Package arm64 implements an ARM64 assembler. | Package arm64 implements an ARM64 assembler. | 
| 
          
            obj/ppc64
            
            
          
           Package ppc64 implements a PPC64 assembler that assembles Go asm into the corresponding PPC64 instructions as defined by the Power ISA 3.0B. | Package ppc64 implements a PPC64 assembler that assembles Go asm into the corresponding PPC64 instructions as defined by the Power ISA 3.0B. | 
| 
          
            obj/riscv
            
            
          
           Code generated by parse.py -go rv64_a rv64_d rv64_f rv64_i rv64_m rv64_q rv_a rv_d rv_f rv_i rv_m rv_q rv_s rv_system rv_zicsr; DO NOT EDIT. | Code generated by parse.py -go rv64_a rv64_d rv64_f rv64_i rv64_m rv64_q rv_a rv_d rv_f rv_i rv_m rv_q rv_s rv_system rv_zicsr; DO NOT EDIT. | 
| 
          
            objdump
            
            
          
           Objdump disassembles executable files. | Objdump disassembles executable files. | 
| 
          
            objfile
            
            
          
           Package objfile implements portable access to OS-specific executable files. | Package objfile implements portable access to OS-specific executable files. | 
| 
          
            osinfo
            
            
          
           Package osinfo provides OS metadata. | Package osinfo provides OS metadata. | 
| 
          
            pack
            
            
          
           Pack is a simple version of the traditional Unix ar tool. | Pack is a simple version of the traditional Unix ar tool. | 
| 
          
            pkgpath
            
            
          
           Package pkgpath determines the package path used by gccgo/GoLLVM symbols. | Package pkgpath determines the package path used by gccgo/GoLLVM symbols. | 
| 
          
            pprof
            
            
          
           Pprof interprets and displays profiles of Go programs. | Pprof interprets and displays profiles of Go programs. | 
| 
          
            quoted
            
            
          
           Package quoted provides string manipulation utilities. | Package quoted provides string manipulation utilities. | 
| 
          
            test2json
            
            
          
           Package test2json implements conversion of test binary output to JSON. | Package test2json implements conversion of test binary output to JSON. | 
| 
          
            trace
            
            
          
           Trace is a tool for viewing trace files. | Trace is a tool for viewing trace files. | 
| 
          
            traceviewer
            
            
          
           Package traceviewer provides definitions of the JSON data structures used by the Chrome trace viewer. | Package traceviewer provides definitions of the JSON data structures used by the Chrome trace viewer. | 
| Package cpu implements processor feature detection used by the Go standard library. | Package cpu implements processor feature detection used by the Go standard library. | 
| Package dag implements a language for expressing directed acyclic graphs. | Package dag implements a language for expressing directed acyclic graphs. | 
| Package fmtsort provides a general stable ordering mechanism for maps, on behalf of the fmt and text/template packages. | Package fmtsort provides a general stable ordering mechanism for maps, on behalf of the fmt and text/template packages. | 
| Package fuzz provides common fuzzing functionality for tests built with "go test" and for programs that use fuzzing functionality in the testing package. | Package fuzz provides common fuzzing functionality for tests built with "go test" and for programs that use fuzzing functionality in the testing package. | 
| package goarch contains GOARCH-specific constants. | package goarch contains GOARCH-specific constants. | 
| Package godebug makes the settings in the $GODEBUG environment variable available to other packages. | Package godebug makes the settings in the $GODEBUG environment variable available to other packages. | 
| Package godebugs provides a table of known GODEBUG settings, for use by a variety of other packages, including github.com/go-asm/go/godebug, runtime, runtime/metrics, and github.com/go-asm/go/cmd/go/load. | Package godebugs provides a table of known GODEBUG settings, for use by a variety of other packages, including github.com/go-asm/go/godebug, runtime, runtime/metrics, and github.com/go-asm/go/cmd/go/load. | 
| Package goexperiment implements support for toolchain experiments. | Package goexperiment implements support for toolchain experiments. | 
| package goos contains GOOS-specific constants. | package goos contains GOOS-specific constants. | 
| Package intern lets you make smaller comparable values by boxing a larger comparable value (such as a 16 byte string header) down into a globally unique 8 byte pointer. | Package intern lets you make smaller comparable values by boxing a larger comparable value (such as a 16 byte string header) down into a globally unique 8 byte pointer. | 
| Package lazyregexp is a thin wrapper over regexp, allowing the use of global regexp variables without forcing them to be compiled at init. | Package lazyregexp is a thin wrapper over regexp, allowing the use of global regexp variables without forcing them to be compiled at init. | 
| Package lazytemplate is a thin wrapper over text/template, allowing the use of global template variables without forcing them to be parsed at init. | Package lazytemplate is a thin wrapper over text/template, allowing the use of global template variables without forcing them to be parsed at init. | 
| Package nettrace contains internal hooks for tracing activity in the net package. | Package nettrace contains internal hooks for tracing activity in the net package. | 
| Package obscuretestdata contains functionality used by tests to more easily work with testdata that must be obscured primarily due to golang.org/issue/34986. | Package obscuretestdata contains functionality used by tests to more easily work with testdata that must be obscured primarily due to golang.org/issue/34986. | 
| Package oserror defines errors values used in the os package. | Package oserror defines errors values used in the os package. | 
| Package pkgbits implements low-level coding abstractions for Unified IR's export data format. | Package pkgbits implements low-level coding abstractions for Unified IR's export data format. | 
| Package poll supports non-blocking I/O on file descriptors with polling. | Package poll supports non-blocking I/O on file descriptors with polling. | 
| Package profile provides a representation of github.com/google/pprof/proto/profile.proto and methods to encode/decode/merge profiles in this format. | Package profile provides a representation of github.com/google/pprof/proto/profile.proto and methods to encode/decode/merge profiles in this format. | 
| Package race contains helper functions for manually instrumenting code for the race detector. | Package race contains helper functions for manually instrumenting code for the race detector. | 
| Package reflectlite implements lightweight version of reflect, not using any package except for "runtime", "unsafe", and "github.com/go-asm/go/abi" | Package reflectlite implements lightweight version of reflect, not using any package except for "runtime", "unsafe", and "github.com/go-asm/go/abi" | 
| Package safefilepath manipulates operating-system file paths. | Package safefilepath manipulates operating-system file paths. | 
| Package saferio provides I/O functions that avoid allocating large amounts of memory unnecessarily. | Package saferio provides I/O functions that avoid allocating large amounts of memory unnecessarily. | 
| Package singleflight provides a duplicate function call suppression mechanism. | Package singleflight provides a duplicate function call suppression mechanism. | 
| syscall
       | |
| 
          
            windows/registry
            
            
          
           Package registry provides access to the Windows registry. | Package registry provides access to the Windows registry. | 
| 
          
            windows/sysdll
            
            
          
           Package sysdll is an internal leaf package that records and reports which Windows DLL names are used by Go itself. | Package sysdll is an internal leaf package that records and reports which Windows DLL names are used by Go itself. | 
| Package sysinfo implements high level hardware information gathering that can be used for debugging or information purposes. | Package sysinfo implements high level hardware information gathering that can be used for debugging or information purposes. | 
| Package testenv provides information about what functionality is available in different testing environments run by the Go team. | Package testenv provides information about what functionality is available in different testing environments run by the Go team. | 
| Package testlog provides a back-channel communication path between tests and package os, so that cmd/go can see which environment variables and files a test consults. | Package testlog provides a back-channel communication path between tests and package os, so that cmd/go can see which environment variables and files a test consults. | 
| Package testpty is a simple pseudo-terminal package for Unix systems, implemented by calling C functions via cgo. | Package testpty is a simple pseudo-terminal package for Unix systems, implemented by calling C functions via cgo. | 
| Package txtar implements a trivial text-based file archive format. | Package txtar implements a trivial text-based file archive format. | 
| types
       | |
| Package unsafeheader contains header declarations for the Go runtime's slice and string implementations. | Package unsafeheader contains header declarations for the Go runtime's slice and string implementations. | 
| Package xcoff implements access to XCOFF (Extended Common Object File Format) files. | Package xcoff implements access to XCOFF (Extended Common Object File Format) files. | 
| Package zstd provides a decompressor for zstd streams, described in RFC 8878. | Package zstd provides a decompressor for zstd streams, described in RFC 8878. | 
 Click to show internal directories. 
   Click to hide internal directories.