chromium/third_party/nasm/include/rdoff.h

/* ----------------------------------------------------------------------- *
 *   
 *   Copyright 1996-2017 The NASM Authors - All Rights Reserved
 *   See the file AUTHORS included with the NASM distribution for
 *   the specific copyright holders.
 *
 *   Redistribution and use in source and binary forms, with or without
 *   modification, are permitted provided that the following
 *   conditions are met:
 *
 *   * Redistributions of source code must retain the above copyright
 *     notice, this list of conditions and the following disclaimer.
 *   * Redistributions in binary form must reproduce the above
 *     copyright notice, this list of conditions and the following
 *     disclaimer in the documentation and/or other materials provided
 *     with the distribution.
 *     
 *     THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
 *     CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
 *     INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
 *     MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 *     DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
 *     CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 *     SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
 *     NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 *     LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 *     HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 *     CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
 *     OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 *     EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 *
 * ----------------------------------------------------------------------- */

/*
 * rdoff.h	RDOFF Object File manipulation routines header file
 */

#ifndef RDOFF_H
#define RDOFF_H

/*
 * RDOFF definitions. They are used by RDOFF utilities and by NASM's
 * 'outrdf2.c' output module.
 */

/* RDOFF format revision (currently used only when printing the version) */
#define RDOFF2_REVISION

/* RDOFF2 file signature */
#define RDOFF2_SIGNATURE

/* Maximum size of an import/export label (including trailing zero) */
#define EXIM_LABEL_MAX

/* Maximum size of library or module name (including trailing zero) */
#define MODLIB_NAME_MAX

/* Maximum number of segments that we can handle in one file */
#define RDF_MAXSEGS

/* Record types that may present the RDOFF header */
#define RDFREC_GENERIC
#define RDFREC_RELOC
#define RDFREC_IMPORT
#define RDFREC_GLOBAL
#define RDFREC_DLL
#define RDFREC_BSS
#define RDFREC_SEGRELOC
#define RDFREC_FARIMPORT
#define RDFREC_MODNAME
#define RDFREC_COMMON

/*
 * Generic record - contains the type and length field, plus a 128 byte
 * array 'data'
 */
struct GenericRec {};

/*
 * Relocation record
 */
struct RelocRec {};

/*
 * Extern/import record
 */
struct ImportRec {};

/*
 * Public/export record
 */
struct ExportRec {};

/*
 * DLL record
 */
struct DLLRec {};

/*
 * BSS record
 */
struct BSSRec {};

/*
 * Module name record
 */
struct ModRec {};

/*
 * Common variable record
 */
struct CommonRec {};

/* Flags for ExportRec */
#define SYM_DATA
#define SYM_FUNCTION
#define SYM_GLOBAL
#define SYM_IMPORT

#endif                          /* RDOFF_H */