Changeset 439 for EcnlProtoTool/trunk/mruby-2.1.1/include/mruby/dump.h
- Timestamp:
- Jul 9, 2020, 8:51:43 AM (4 years ago)
- Location:
- EcnlProtoTool/trunk/mruby-2.1.1
- Files:
-
- 1 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
EcnlProtoTool/trunk/mruby-2.1.1/include/mruby/dump.h
r331 r439 1 /* 2 ** mruby/dump.h - mruby binary dumper (mrbc binary format)1 /** 2 ** @file mruby/dump.h - mruby binary dumper (mrbc binary format) 3 3 ** 4 4 ** See Copyright Notice in mruby.h … … 32 32 #endif 33 33 MRB_API mrb_irep *mrb_read_irep(mrb_state*, const uint8_t*); 34 MRB_API mrb_irep *mrb_read_irep_buf(mrb_state*, const void*, size_t); 34 35 35 36 /* dump/load error code … … 53 54 #define RITE_BINARY_IDENT "RITE" 54 55 #define RITE_BINARY_IDENT_LIL "ETIR" 55 #define RITE_BINARY_FORMAT_VER "000 4"56 #define RITE_BINARY_FORMAT_VER "0006" 56 57 #define RITE_COMPILER_NAME "MATZ" 57 58 #define RITE_COMPILER_VERSION "0000" 58 59 59 #define RITE_VM_VER "000 0"60 #define RITE_VM_VER "0002" 60 61 61 62 #define RITE_BINARY_EOF "END\0" 62 63 #define RITE_SECTION_IREP_IDENT "IREP" 63 #define RITE_SECTION_LINENO_IDENT "LINE"64 64 #define RITE_SECTION_DEBUG_IDENT "DBG\0" 65 65 #define RITE_SECTION_LV_IDENT "LVAR" … … 67 67 #define MRB_DUMP_DEFAULT_STR_LEN 128 68 68 #define MRB_DUMP_ALIGNMENT sizeof(uint32_t) 69 70 #ifdef __CA850__71 #pragma pack(1)72 #elif __RX73 #pragma pack74 #elif _MSC_VER75 #pragma pack(push, 1)76 #endif77 #ifndef __GNUC__78 #define __attribute__(x)79 #endif // !__GNUC__80 69 81 70 /* binary header */ … … 87 76 uint8_t compiler_name[4]; /* Compiler name */ 88 77 uint8_t compiler_version[4]; 89 } __attribute__((packed));78 }; 90 79 91 80 /* section header */ … … 96 85 struct rite_section_header { 97 86 RITE_SECTION_HEADER; 98 } __attribute__((packed));87 }; 99 88 100 89 struct rite_section_irep_header { … … 102 91 103 92 uint8_t rite_version[4]; /* Rite Instruction Specification Version */ 104 } __attribute__((packed)); 105 106 struct rite_section_lineno_header { 107 RITE_SECTION_HEADER; 108 } __attribute__((packed)); 93 }; 109 94 110 95 struct rite_section_debug_header { 111 96 RITE_SECTION_HEADER; 112 } __attribute__((packed));97 }; 113 98 114 99 struct rite_section_lv_header { 115 100 RITE_SECTION_HEADER; 116 } __attribute__((packed));101 }; 117 102 118 103 #define RITE_LV_NULL_MARK UINT16_MAX … … 120 105 struct rite_binary_footer { 121 106 RITE_SECTION_HEADER; 122 } __attribute__((packed)); 123 124 #ifdef __CA850__ 125 #pragma pack(8) 126 #elif __RX 127 #pragma unpack 128 #elif _MSC_VER 129 #pragma pack(pop) 130 #endif 107 }; 131 108 132 109 static inline int
Note:
See TracChangeset
for help on using the changeset viewer.