...

Source file src/golang.org/x/arch/x86/xeddata/doc.go

Documentation: golang.org/x/arch/x86/xeddata

     1  // Copyright 2018 The Go Authors. All rights reserved.
     2  // Use of this source code is governed by a BSD-style
     3  // license that can be found in the LICENSE file.
     4  
     5  // Package xeddata provides utilities to work with XED datafiles.
     6  //
     7  // Main features:
     8  //   - Fundamental XED enumerations (CPU modes, operand sizes, ...)
     9  //   - XED objects and their components
    10  //   - XED datafiles reader (see below)
    11  //   - Utility functions like ExpandStates
    12  //
    13  // The amount of file formats that is understood is a minimal
    14  // set required to generate x86.csv from XED tables:
    15  //   - states - simple macro substitutions used in patterns
    16  //   - widths - mappings from width names to their size
    17  //   - element-types - XED xtype information
    18  //   - objects - XED objects that constitute "the tables"
    19  //
    20  // Collectively, those files are called "datafiles".
    21  //
    22  // Terminology is borrowed from XED itself,
    23  // where appropriate, x86csv names are provided
    24  // as an alternative.
    25  //
    26  // "$XED/foo/bar.txt" notation is used to specify a path to "foo/bar.txt"
    27  // file under local XED source repository folder.
    28  //
    29  // The default usage scheme:
    30  //  1. Open "XED database" to load required metadata.
    31  //  2. Read XED file with objects definitions.
    32  //  3. Operate on XED objects.
    33  //
    34  // See example_test.go for complete examples.
    35  //
    36  // It is required to build Intel XED before attempting to use
    37  // its datafiles, as this package expects "all" versions that
    38  // are a concatenated final versions of datafiles.
    39  // If "$XED/obj/dgen/" does not contain relevant files,
    40  // then either this documentation is stale or your XED is not built.
    41  //
    42  // To see examples of "XED objects" see "testdata/xed_objects.txt".
    43  //
    44  // Intel XED https://github.com/intelxed/xed provides all documentation
    45  // that can be required to understand datafiles.
    46  // The "$XED/misc/engineering-notes.txt" is particularly useful.
    47  // For convenience, the most important notes are spread across package comments.
    48  //
    49  // Tested with XED 088c48a2efa447872945168272bcd7005a7ddd91.
    50  package xeddata
    51  

View as plain text