cv4f.h
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 839 行 · 第 1/2 页
H
839 行
u2 index;
}ct_dimvaru;
typedef struct {
u2 rank;
u2 index;
}ct_dimvarlu;
typedef struct {
u2 type;
cv_fldattr attr;
}ct_bclass;
typedef struct { /*direct & indirect */
u2 btype;
u2 vtype;
cv_fldattr attr;
}ct_vbclass;
typedef ct_vbclass ct_ivbclass;
typedef struct {
cv_fldattr attr;
}ct_enumerate;
typedef struct {
u2 type;
}ct_friendfcn;
typedef struct {
u2 index;
}ct_index;
typedef struct {
u2 type;
cv_fldattr attr;
}ct_member;
typedef struct {
u2 type;
cv_fldattr attr;
}ct_stmember;
typedef struct {
u2 count;
u2 mList;
}ct_method;
typedef struct {
u2 index;
}ct_nestedtype;
typedef struct {
u2 type;
}ct_vfunctab;
typedef struct {
u2 type;
}ct_friendcls;
typedef struct {
cv_fldattr attr;
u2 type;
}ct_onemethod;
typedef struct {
u2 type;
u4 offset;
}ct_vfuncoff;
typedef enum {
LANG_C =0,
LANG_CPP =1,
LANG_FORTRAN =2,
LANG_MASM =3,
LANG_PASCAL =4,
LANG_BASIC =5,
LANG_COBOL =6,
}cv_lang;
typedef enum {
AMBIENT_NEAR =0,
AMBIENT_FAR =1,
AMBIENT_HUGE =2,
}cv_ambient;
typedef enum {
FLOAT_PACKAGE_HARDWARE =0,
FLOAT_PACKAGE_EMULATOR =1,
FLOAT_PACKAGE_ALTMATH =2,
}cv_float_package;
typedef enum {
MACH_INTEL_8080 = 0x00,
MACH_INTEL_8086 = 0x01,
MACH_INTEL_80286 = 0x02,
MACH_INTEL_80386 = 0x03,
MACH_INTEL_80486 = 0x04,
MACH_INTEL_PENTIUM = 0x05,
MACH_MIPS_R4000 = 0x10,
MACH_MC68000 = 0x20,
MACH_MC68010 = 0x21,
MACH_MC68020 = 0x22,
MACH_MC68030 = 0x23,
MACH_MC68040 = 0x24,
MACH_DECALPHA = 0x30,
}cv_machine_class;
typedef union {
struct {
u2 PCodePresent:1;
u2 FloatPrecision:2;
u2 FloatPackage:2;
u2 AmbientData:3;
u2 AmbientCode:3;
u2 Mode32:1;
u2 Reserved:4;
}f;
u2 s;
}cv_compile;
typedef struct {
u1 machine;
u1 language;
cv_compile flags;
// u1 version[1];
} cs_compile;
typedef struct {
u2 type;
u2 reg;
// u1 name[1];
} cs_register;
typedef struct {
u2 type;
// u1 value[1];
// u1 name[1];
} cs_constant;
typedef struct {
u2 type;
// u1 name[1];
} cs_udt;
typedef struct {
u4 sym_off;
u2 segment;
} cs_ssearch;
typedef struct {
u4 signature;
// u1 name[1];
} cs_objname;
typedef struct {
u2 type;
// u1 name[1];
} cs_coboludt;
typedef struct {
u2 type;
u1 count;
// u1 reglist[count];
// u1 name[1];
} cs_manyreg;
typedef union {
struct {
u1 cstyle : 1;
u1 rsclean : 1;
} f;
u2 s;
} cv_return_flags;
typedef enum {
CVRET_VOID,
CVRET_DIRECT,
CVRET_CALLOC_NEAR,
CVRET_CALLOC_FAR,
CVRET_RALLOC_NEAR,
CVRET_RALLOC_FAR
} cv_return_style;
typedef struct {
cv_return_flags flags;
u1 style;
// u1 data;
} cs_return;
typedef struct {
i2 offset;
u2 type;
// u1 name[1];
} cs_bprel16;
typedef struct {
i2 offset;
u2 reg;
u2 type;
// u1 name[1];
} cs_regrel16;
typedef struct {
u2 offset;
u2 segment;
u2 type;
// u1 name[1];
} cs_ldata16,cs_gdata16;
typedef struct {
u2 offset;
u2 segment;
u2 type;
// u1 name[1];
} cs_pub16;
typedef union cv_proc{
struct {
u1 fpo :1;
u1 interr :1;
u1 far_ret :1;
u1 never :1;
u1 unused :4;
}f;
u1 s;
}cv_proc;
typedef struct {
u4 pParent;
u4 pEnd;
u4 pNext;
u2 proc_length;
u2 debug_start;
u2 debug_end;
u2 offset;
u2 segment;
u2 proctype;
cv_proc flags;
// u1 name[1];
} cs_lproc16,cs_gproc16;
typedef enum {
NOTYPE = 0,
ADJUSTOR = 1,
VCALL = 2,
PCODE = 3,
}cv_ordinal;
typedef union {
struct {
u2 delta;
char thisnm[1];
}adjustor;
u2 vcall;
struct {
u2 offset;
u2 segment;
}pcode;
}cv_ord_variant;
typedef struct {
u4 pParent;
u4 pEnd;
u4 pNext;
u2 offset;
u2 segment;
u2 length;
unsigned_8 ordinal;
u1 name[1];
// u1 varient[1];
} cs_thunk16;
typedef struct {
u4 pParent;
u4 pEnd;
u2 length;
u2 offset;
u2 segment;
// u1 name[1];
} cs_block16;
typedef struct {
u4 pParent;
u4 pEnd;
u2 length;
u2 offset;
u2 segment;
// u1 value[1];
} cs_with16;
typedef struct {
u2 offset;
u2 segment;
unsigned_8 near_far;
// u1 name[1];
} cs_label16;
typedef struct {
u2 offset;
u2 segment;
u2 model;
// u1 varient[1];
} cs_cexmodel16;
typedef struct {
u2 offset;
u2 segment;
u2 root;
u2 path;
} cs_vftpath16;
typedef struct {
i4 offset;
u2 type;
// u1 name[1];
} cs_bprel32;
typedef struct {
i4 offset;
u2 reg;
u2 type;
// u1 name[1];
} cs_regrel32;
typedef struct {
u4 offset;
u2 segment;
u2 type;
// u1 name[1];
} cs_lthread32, cs_gthread32;
typedef struct {
u4 offset;
u2 segment;
u2 type;
// u1 name[1];
} cs_ldata32,cs_gdata32;
typedef struct {
u4 offset;
u2 segment;
u2 type;
// u1 name[1];
} cs_pub32;
typedef struct {
u4 pParent;
u4 pEnd;
u4 pNext;
u4 proc_length;
u4 debug_start;
u4 debug_end;
u4 offset;
u2 segment;
u2 proctype;
cv_proc flags;
// u1 name[1];
} cs_lproc32,cs_gproc32;
typedef struct {
u4 pParent;
u4 pEnd;
u4 pNext;
u4 offset;
u2 segment;
u2 length;
u2 ordinal;
// u1 name[1];
// u1 varient[1];
} cs_thunk32;
typedef struct {
u4 pParent;
u4 pEnd;
u4 length;
u4 offset;
u2 segment;
// u1 name[1];
} cs_block32;
typedef struct {
u4 pParent;
u4 pEnd;
u4 length;
u4 offset;
u2 segment;
// u1 value[1];
} cs_with32;
typedef struct {
u4 offset;
u2 segment;
unsigned_8 near_far;
// u1 name[1];
} cs_label32;
typedef struct {
u4 offset;
u2 segment;
u2 model;
// u1 varient[1];
} cs_cexmodel32;
typedef struct {
u4 offset;
u2 segment;
u2 root;
u2 path;
} cs_vftpath32;
typedef struct {
u4 checksum;
u4 offset;
u2 module;
} cs_procref, cs_dataref;
#pragma pack()
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?