├── README.md └── opcodes ├── v10.0.0_opcode.json ├── v10.1.0_opcode.json ├── v10.10.0_opcode.json ├── v10.11.0_opcode.json ├── v10.12.0_opcode.json ├── v10.13.0_opcode.json ├── v10.14.0_opcode.json ├── v10.14.1_opcode.json ├── v10.14.2_opcode.json ├── v10.15.0_opcode.json ├── v10.15.1_opcode.json ├── v10.15.2_opcode.json ├── v10.15.3_opcode.json ├── v10.16.0_opcode.json ├── v10.16.1_opcode.json ├── v10.16.2_opcode.json ├── v10.16.3_opcode.json ├── v10.17.0_opcode.json ├── v10.18.0_opcode.json ├── v10.18.1_opcode.json ├── v10.19.0_opcode.json ├── v10.2.0_opcode.json ├── v10.2.1_opcode.json ├── v10.20.0_opcode.json ├── v10.20.1_opcode.json ├── v10.21.0_opcode.json ├── v10.22.0_opcode.json ├── v10.22.1_opcode.json ├── v10.23.0_opcode.json ├── v10.23.1_opcode.json ├── v10.23.2_opcode.json ├── v10.23.3_opcode.json ├── v10.24.0_opcode.json ├── v10.24.1_opcode.json ├── v10.3.0_opcode.json ├── v10.4.0_opcode.json ├── v10.4.1_opcode.json ├── v10.5.0_opcode.json ├── v10.6.0_opcode.json ├── v10.7.0_opcode.json ├── v10.8.0_opcode.json ├── v10.9.0_opcode.json ├── v11.0.0_opcode.json ├── v11.1.0_opcode.json ├── v11.10.0_opcode.json ├── v11.10.1_opcode.json ├── v11.11.0_opcode.json ├── v11.12.0_opcode.json ├── v11.13.0_opcode.json ├── v11.14.0_opcode.json ├── v11.15.0_opcode.json ├── v11.2.0_opcode.json ├── v11.3.0_opcode.json ├── v11.4.0_opcode.json ├── v11.5.0_opcode.json ├── v11.6.0_opcode.json ├── v11.7.0_opcode.json ├── v11.8.0_opcode.json ├── v11.9.0_opcode.json ├── v12.0.0_opcode.json ├── v12.1.0_opcode.json ├── v12.10.0_opcode.json ├── v12.11.0_opcode.json ├── v12.11.1_opcode.json ├── v12.12.0_opcode.json ├── v12.13.0_opcode.json ├── v12.13.1_opcode.json ├── v12.14.0_opcode.json ├── v12.14.1_opcode.json ├── v12.15.0_opcode.json ├── v12.16.0_opcode.json ├── v12.16.1_opcode.json ├── v12.16.2_opcode.json ├── v12.16.3_opcode.json ├── v12.17.0_opcode.json ├── v12.18.0_opcode.json ├── v12.18.1_opcode.json ├── v12.18.2_opcode.json ├── v12.18.3_opcode.json ├── v12.18.4_opcode.json ├── v12.19.0_opcode.json ├── v12.19.1_opcode.json ├── v12.2.0_opcode.json ├── v12.20.0_opcode.json ├── v12.20.1_opcode.json ├── v12.20.2_opcode.json ├── v12.21.0_opcode.json ├── v12.22.0_opcode.json ├── v12.22.1_opcode.json ├── v12.22.2_opcode.json ├── v12.22.3_opcode.json ├── v12.22.4_opcode.json ├── v12.22.5_opcode.json ├── v12.22.6_opcode.json ├── v12.22.7_opcode.json ├── v12.22.8_opcode.json ├── v12.22.9_opcode.json ├── v12.3.0_opcode.json ├── v12.3.1_opcode.json ├── v12.4.0_opcode.json ├── v12.5.0_opcode.json ├── v12.6.0_opcode.json ├── v12.7.0_opcode.json ├── v12.8.0_opcode.json ├── v12.8.1_opcode.json ├── v12.9.0_opcode.json ├── v12.9.1_opcode.json ├── v13.0.0_opcode.json ├── v13.0.1_opcode.json ├── v13.1.0_opcode.json ├── v13.10.0_opcode.json ├── v13.10.1_opcode.json ├── v13.11.0_opcode.json ├── v13.12.0_opcode.json ├── v13.13.0_opcode.json ├── v13.14.0_opcode.json ├── v13.2.0_opcode.json ├── v13.3.0_opcode.json ├── v13.4.0_opcode.json ├── v13.5.0_opcode.json ├── v13.6.0_opcode.json ├── v13.7.0_opcode.json ├── v13.8.0_opcode.json ├── v13.9.0_opcode.json ├── v14.0.0_opcode.json ├── v14.1.0_opcode.json ├── v14.10.0_opcode.json ├── v14.10.1_opcode.json ├── v14.11.0_opcode.json ├── v14.12.0_opcode.json ├── v14.13.0_opcode.json ├── v14.13.1_opcode.json ├── v14.14.0_opcode.json ├── v14.15.0_opcode.json ├── v14.15.1_opcode.json ├── v14.15.2_opcode.json ├── v14.15.3_opcode.json ├── v14.15.4_opcode.json ├── v14.15.5_opcode.json ├── v14.16.0_opcode.json ├── v14.16.1_opcode.json ├── v14.17.0_opcode.json ├── v14.17.1_opcode.json ├── v14.17.2_opcode.json ├── v14.17.3_opcode.json ├── v14.17.4_opcode.json ├── v14.17.5_opcode.json ├── v14.17.6_opcode.json ├── v14.18.0_opcode.json ├── v14.18.1_opcode.json ├── v14.18.2_opcode.json ├── v14.18.3_opcode.json ├── v14.2.0_opcode.json ├── v14.3.0_opcode.json ├── v14.4.0_opcode.json ├── v14.5.0_opcode.json ├── v14.6.0_opcode.json ├── v14.7.0_opcode.json ├── v14.8.0_opcode.json ├── v14.9.0_opcode.json ├── v15.0.0_opcode.json ├── v15.0.1_opcode.json ├── v15.1.0_opcode.json ├── v15.10.0_opcode.json ├── v15.11.0_opcode.json ├── v15.12.0_opcode.json ├── v15.13.0_opcode.json ├── v15.14.0_opcode.json ├── v15.2.0_opcode.json ├── v15.2.1_opcode.json ├── v15.3.0_opcode.json ├── v15.4.0_opcode.json ├── v15.5.0_opcode.json ├── v15.5.1_opcode.json ├── v15.6.0_opcode.json ├── v15.7.0_opcode.json ├── v15.8.0_opcode.json ├── v15.9.0_opcode.json ├── v16.0.0_opcode.json ├── v16.1.0_opcode.json ├── v16.10.0_opcode.json ├── v16.11.0_opcode.json ├── v16.11.1_opcode.json ├── v16.12.0_opcode.json ├── v16.13.0_opcode.json ├── v16.13.1_opcode.json ├── v16.13.2_opcode.json ├── v16.2.0_opcode.json ├── v16.3.0_opcode.json ├── v16.4.0_opcode.json ├── v16.4.1_opcode.json ├── v16.4.2_opcode.json ├── v16.5.0_opcode.json ├── v16.6.0_opcode.json ├── v16.6.1_opcode.json ├── v16.6.2_opcode.json ├── v16.7.0_opcode.json ├── v16.8.0_opcode.json ├── v16.9.0_opcode.json ├── v16.9.1_opcode.json ├── v17.0.0_opcode.json ├── v17.0.1_opcode.json ├── v17.1.0_opcode.json ├── v17.2.0_opcode.json ├── v17.3.0_opcode.json ├── v17.3.1_opcode.json ├── v17.4.0_opcode.json ├── v6.0.0_opcode.json ├── v6.1.0_opcode.json ├── v6.10.0_opcode.json ├── v6.10.1_opcode.json ├── v6.10.2_opcode.json ├── v6.10.3_opcode.json ├── v6.11.0_opcode.json ├── v6.11.1_opcode.json ├── v6.11.2_opcode.json ├── v6.11.3_opcode.json ├── v6.11.4_opcode.json ├── v6.11.5_opcode.json ├── v6.12.0_opcode.json ├── v6.12.1_opcode.json ├── v6.12.2_opcode.json ├── v6.12.3_opcode.json ├── v6.13.0_opcode.json ├── v6.13.1_opcode.json ├── v6.14.0_opcode.json ├── v6.14.1_opcode.json ├── v6.14.2_opcode.json ├── v6.14.3_opcode.json ├── v6.14.4_opcode.json ├── v6.15.0_opcode.json ├── v6.15.1_opcode.json ├── v6.16.0_opcode.json ├── v6.17.0_opcode.json ├── v6.17.1_opcode.json ├── v6.2.0_opcode.json ├── v6.2.1_opcode.json ├── v6.2.2_opcode.json ├── v6.3.0_opcode.json ├── v6.3.1_opcode.json ├── v6.4.0_opcode.json ├── v6.5.0_opcode.json ├── v6.6.0_opcode.json ├── v6.7.0_opcode.json ├── v6.8.0_opcode.json ├── v6.8.1_opcode.json ├── v6.9.0_opcode.json ├── v6.9.1_opcode.json ├── v6.9.2_opcode.json ├── v6.9.3_opcode.json ├── v6.9.4_opcode.json ├── v6.9.5_opcode.json ├── v7.0.0_opcode.json ├── v7.1.0_opcode.json ├── v7.10.0_opcode.json ├── v7.10.1_opcode.json ├── v7.2.0_opcode.json ├── v7.2.1_opcode.json ├── v7.3.0_opcode.json ├── v7.4.0_opcode.json ├── v7.5.0_opcode.json ├── v7.6.0_opcode.json ├── v7.7.0_opcode.json ├── v7.7.1_opcode.json ├── v7.7.2_opcode.json ├── v7.7.3_opcode.json ├── v7.7.4_opcode.json ├── v7.8.0_opcode.json ├── v7.9.0_opcode.json ├── v8.0.0_opcode.json ├── v8.1.0_opcode.json ├── v8.1.1_opcode.json ├── v8.1.2_opcode.json ├── v8.1.3_opcode.json ├── v8.1.4_opcode.json ├── v8.10.0_opcode.json ├── v8.11.0_opcode.json ├── v8.11.1_opcode.json ├── v8.11.2_opcode.json ├── v8.11.3_opcode.json ├── v8.11.4_opcode.json ├── v8.12.0_opcode.json ├── v8.13.0_opcode.json ├── v8.14.0_opcode.json ├── v8.14.1_opcode.json ├── v8.15.0_opcode.json ├── v8.15.1_opcode.json ├── v8.16.0_opcode.json ├── v8.16.1_opcode.json ├── v8.16.2_opcode.json ├── v8.17.0_opcode.json ├── v8.2.0_opcode.json ├── v8.2.1_opcode.json ├── v8.3.0_opcode.json ├── v8.4.0_opcode.json ├── v8.5.0_opcode.json ├── v8.6.0_opcode.json ├── v8.7.0_opcode.json ├── v8.8.0_opcode.json ├── v8.8.1_opcode.json ├── v8.9.0_opcode.json ├── v8.9.1_opcode.json ├── v8.9.2_opcode.json ├── v8.9.3_opcode.json ├── v8.9.4_opcode.json ├── v9.0.0_opcode.json ├── v9.1.0_opcode.json ├── v9.10.0_opcode.json ├── v9.10.1_opcode.json ├── v9.11.0_opcode.json ├── v9.11.1_opcode.json ├── v9.11.2_opcode.json ├── v9.2.0_opcode.json ├── v9.2.1_opcode.json ├── v9.3.0_opcode.json ├── v9.4.0_opcode.json ├── v9.5.0_opcode.json ├── v9.6.0_opcode.json ├── v9.6.1_opcode.json ├── v9.7.0_opcode.json ├── v9.7.1_opcode.json ├── v9.8.0_opcode.json └── v9.9.0_opcode.json /opcodes/v6.10.0_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } -------------------------------------------------------------------------------- /opcodes/v6.10.1_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } -------------------------------------------------------------------------------- /opcodes/v6.10.2_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } -------------------------------------------------------------------------------- /opcodes/v6.10.3_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } -------------------------------------------------------------------------------- /opcodes/v6.11.0_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } -------------------------------------------------------------------------------- /opcodes/v6.11.1_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } -------------------------------------------------------------------------------- /opcodes/v6.11.2_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } -------------------------------------------------------------------------------- /opcodes/v6.11.3_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } -------------------------------------------------------------------------------- /opcodes/v6.11.4_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } -------------------------------------------------------------------------------- /opcodes/v6.11.5_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } -------------------------------------------------------------------------------- /opcodes/v6.12.0_opcode.json: -------------------------------------------------------------------------------- 1 | { 2 | "Wide": { 3 | "args_count": 0, 4 | "args": [], 5 | "opcode": 0, 6 | "opcode_hex": "0x0" 7 | }, 8 | "ExtraWide": { 9 | "args_count": 0, 10 | "args": [], 11 | "opcode": 1, 12 | "opcode_hex": "0x1" 13 | }, 14 | "LdaZero": { 15 | "args_count": 0, 16 | "args": [], 17 | "opcode": 2, 18 | "opcode_hex": "0x2" 19 | }, 20 | "LdaSmi": { 21 | "args_count": 1, 22 | "args": [ 23 | "OperandType::kImm" 24 | ], 25 | "opcode": 3, 26 | "opcode_hex": "0x3" 27 | }, 28 | "LdaUndefined": { 29 | "args_count": 0, 30 | "args": [], 31 | "opcode": 4, 32 | "opcode_hex": "0x4" 33 | }, 34 | "LdaNull": { 35 | "args_count": 0, 36 | "args": [], 37 | "opcode": 5, 38 | "opcode_hex": "0x5" 39 | }, 40 | "LdaTheHole": { 41 | "args_count": 0, 42 | "args": [], 43 | "opcode": 6, 44 | "opcode_hex": "0x6" 45 | }, 46 | "LdaTrue": { 47 | "args_count": 0, 48 | "args": [], 49 | "opcode": 7, 50 | "opcode_hex": "0x7" 51 | }, 52 | "LdaFalse": { 53 | "args_count": 0, 54 | "args": [], 55 | "opcode": 8, 56 | "opcode_hex": "0x8" 57 | }, 58 | "LdaConstant": { 59 | "args_count": 1, 60 | "args": [ 61 | "OperandType::kIdx" 62 | ], 63 | "opcode": 9, 64 | "opcode_hex": "0x9" 65 | }, 66 | "LdaGlobal": { 67 | "args_count": 2, 68 | "args": [ 69 | "OperandType::kIdx", 70 | "OperandType::kIdx" 71 | ], 72 | "opcode": 10, 73 | "opcode_hex": "0xa" 74 | }, 75 | "LdaGlobalInsideTypeof": { 76 | "args_count": 2, 77 | "args": [ 78 | "OperandType::kIdx", 79 | "OperandType::kIdx" 80 | ], 81 | "opcode": 11, 82 | "opcode_hex": "0xb" 83 | }, 84 | "StaGlobalSloppy": { 85 | "args_count": 2, 86 | "args": [ 87 | "OperandType::kIdx", 88 | "OperandType::kIdx" 89 | ], 90 | "opcode": 12, 91 | "opcode_hex": "0xc" 92 | }, 93 | "StaGlobalStrict": { 94 | "args_count": 2, 95 | "args": [ 96 | "OperandType::kIdx", 97 | "OperandType::kIdx" 98 | ], 99 | "opcode": 13, 100 | "opcode_hex": "0xd" 101 | }, 102 | "PushContext": { 103 | "args_count": 1, 104 | "args": [ 105 | "OperandType::kReg" 106 | ], 107 | "opcode": 14, 108 | "opcode_hex": "0xe" 109 | }, 110 | "PopContext": { 111 | "args_count": 1, 112 | "args": [ 113 | "OperandType::kReg" 114 | ], 115 | "opcode": 15, 116 | "opcode_hex": "0xf" 117 | }, 118 | "LdaContextSlot": { 119 | "args_count": 2, 120 | "args": [ 121 | "OperandType::kReg", 122 | "OperandType::kIdx" 123 | ], 124 | "opcode": 16, 125 | "opcode_hex": "0x10" 126 | }, 127 | "StaContextSlot": { 128 | "args_count": 2, 129 | "args": [ 130 | "OperandType::kReg", 131 | "OperandType::kIdx" 132 | ], 133 | "opcode": 17, 134 | "opcode_hex": "0x11" 135 | }, 136 | "LdaLookupSlot": { 137 | "args_count": 1, 138 | "args": [ 139 | "OperandType::kIdx" 140 | ], 141 | "opcode": 18, 142 | "opcode_hex": "0x12" 143 | }, 144 | "LdaLookupSlotInsideTypeof": { 145 | "args_count": 1, 146 | "args": [ 147 | "OperandType::kIdx" 148 | ], 149 | "opcode": 19, 150 | "opcode_hex": "0x13" 151 | }, 152 | "StaLookupSlotSloppy": { 153 | "args_count": 1, 154 | "args": [ 155 | "OperandType::kIdx" 156 | ], 157 | "opcode": 20, 158 | "opcode_hex": "0x14" 159 | }, 160 | "StaLookupSlotStrict": { 161 | "args_count": 1, 162 | "args": [ 163 | "OperandType::kIdx" 164 | ], 165 | "opcode": 21, 166 | "opcode_hex": "0x15" 167 | }, 168 | "Ldar": { 169 | "args_count": 1, 170 | "args": [ 171 | "OperandType::kReg" 172 | ], 173 | "opcode": 22, 174 | "opcode_hex": "0x16" 175 | }, 176 | "Star": { 177 | "args_count": 1, 178 | "args": [ 179 | "OperandType::kRegOut" 180 | ], 181 | "opcode": 23, 182 | "opcode_hex": "0x17" 183 | }, 184 | "Mov": { 185 | "args_count": 2, 186 | "args": [ 187 | "OperandType::kReg", 188 | "OperandType::kRegOut" 189 | ], 190 | "opcode": 24, 191 | "opcode_hex": "0x18" 192 | }, 193 | "LoadIC": { 194 | "args_count": 3, 195 | "args": [ 196 | "OperandType::kReg", 197 | "OperandType::kIdx", 198 | "OperandType::kIdx" 199 | ], 200 | "opcode": 25, 201 | "opcode_hex": "0x19" 202 | }, 203 | "KeyedLoadIC": { 204 | "args_count": 2, 205 | "args": [ 206 | "OperandType::kReg", 207 | "OperandType::kIdx" 208 | ], 209 | "opcode": 26, 210 | "opcode_hex": "0x1a" 211 | }, 212 | "StoreICSloppy": { 213 | "args_count": 3, 214 | "args": [ 215 | "OperandType::kReg", 216 | "OperandType::kIdx", 217 | "OperandType::kIdx" 218 | ], 219 | "opcode": 27, 220 | "opcode_hex": "0x1b" 221 | }, 222 | "StoreICStrict": { 223 | "args_count": 3, 224 | "args": [ 225 | "OperandType::kReg", 226 | "OperandType::kIdx", 227 | "OperandType::kIdx" 228 | ], 229 | "opcode": 28, 230 | "opcode_hex": "0x1c" 231 | }, 232 | "KeyedStoreICSloppy": { 233 | "args_count": 3, 234 | "args": [ 235 | "OperandType::kReg", 236 | "OperandType::kReg", 237 | "OperandType::kIdx" 238 | ], 239 | "opcode": 29, 240 | "opcode_hex": "0x1d" 241 | }, 242 | "KeyedStoreICStrict": { 243 | "args_count": 3, 244 | "args": [ 245 | "OperandType::kReg", 246 | "OperandType::kReg", 247 | "OperandType::kIdx" 248 | ], 249 | "opcode": 30, 250 | "opcode_hex": "0x1e" 251 | }, 252 | "Add": { 253 | "args_count": 1, 254 | "args": [ 255 | "OperandType::kReg" 256 | ], 257 | "opcode": 31, 258 | "opcode_hex": "0x1f" 259 | }, 260 | "Sub": { 261 | "args_count": 1, 262 | "args": [ 263 | "OperandType::kReg" 264 | ], 265 | "opcode": 32, 266 | "opcode_hex": "0x20" 267 | }, 268 | "Mul": { 269 | "args_count": 1, 270 | "args": [ 271 | "OperandType::kReg" 272 | ], 273 | "opcode": 33, 274 | "opcode_hex": "0x21" 275 | }, 276 | "Div": { 277 | "args_count": 1, 278 | "args": [ 279 | "OperandType::kReg" 280 | ], 281 | "opcode": 34, 282 | "opcode_hex": "0x22" 283 | }, 284 | "Mod": { 285 | "args_count": 1, 286 | "args": [ 287 | "OperandType::kReg" 288 | ], 289 | "opcode": 35, 290 | "opcode_hex": "0x23" 291 | }, 292 | "BitwiseOr": { 293 | "args_count": 1, 294 | "args": [ 295 | "OperandType::kReg" 296 | ], 297 | "opcode": 36, 298 | "opcode_hex": "0x24" 299 | }, 300 | "BitwiseXor": { 301 | "args_count": 1, 302 | "args": [ 303 | "OperandType::kReg" 304 | ], 305 | "opcode": 37, 306 | "opcode_hex": "0x25" 307 | }, 308 | "BitwiseAnd": { 309 | "args_count": 1, 310 | "args": [ 311 | "OperandType::kReg" 312 | ], 313 | "opcode": 38, 314 | "opcode_hex": "0x26" 315 | }, 316 | "ShiftLeft": { 317 | "args_count": 1, 318 | "args": [ 319 | "OperandType::kReg" 320 | ], 321 | "opcode": 39, 322 | "opcode_hex": "0x27" 323 | }, 324 | "ShiftRight": { 325 | "args_count": 1, 326 | "args": [ 327 | "OperandType::kReg" 328 | ], 329 | "opcode": 40, 330 | "opcode_hex": "0x28" 331 | }, 332 | "ShiftRightLogical": { 333 | "args_count": 1, 334 | "args": [ 335 | "OperandType::kReg" 336 | ], 337 | "opcode": 41, 338 | "opcode_hex": "0x29" 339 | }, 340 | "Inc": { 341 | "args_count": 0, 342 | "args": [], 343 | "opcode": 42, 344 | "opcode_hex": "0x2a" 345 | }, 346 | "Dec": { 347 | "args_count": 0, 348 | "args": [], 349 | "opcode": 43, 350 | "opcode_hex": "0x2b" 351 | }, 352 | "LogicalNot": { 353 | "args_count": 0, 354 | "args": [], 355 | "opcode": 44, 356 | "opcode_hex": "0x2c" 357 | }, 358 | "TypeOf": { 359 | "args_count": 0, 360 | "args": [], 361 | "opcode": 45, 362 | "opcode_hex": "0x2d" 363 | }, 364 | "DeletePropertyStrict": { 365 | "args_count": 1, 366 | "args": [ 367 | "OperandType::kReg" 368 | ], 369 | "opcode": 46, 370 | "opcode_hex": "0x2e" 371 | }, 372 | "DeletePropertySloppy": { 373 | "args_count": 1, 374 | "args": [ 375 | "OperandType::kReg" 376 | ], 377 | "opcode": 47, 378 | "opcode_hex": "0x2f" 379 | }, 380 | "Call": { 381 | "args_count": 4, 382 | "args": [ 383 | "OperandType::kReg", 384 | "OperandType::kReg", 385 | "OperandType::kRegCount", 386 | "OperandType::kIdx" 387 | ], 388 | "opcode": 48, 389 | "opcode_hex": "0x30" 390 | }, 391 | "TailCall": { 392 | "args_count": 4, 393 | "args": [ 394 | "OperandType::kReg", 395 | "OperandType::kReg", 396 | "OperandType::kRegCount", 397 | "OperandType::kIdx" 398 | ], 399 | "opcode": 49, 400 | "opcode_hex": "0x31" 401 | }, 402 | "CallRuntime": { 403 | "args_count": 3, 404 | "args": [ 405 | "OperandType::kRuntimeId", 406 | "OperandType::kMaybeReg", 407 | "OperandType::kRegCount" 408 | ], 409 | "opcode": 50, 410 | "opcode_hex": "0x32" 411 | }, 412 | "CallRuntimeForPair": { 413 | "args_count": 4, 414 | "args": [ 415 | "OperandType::kRuntimeId", 416 | "OperandType::kMaybeReg", 417 | "OperandType::kRegCount", 418 | "OperandType::kRegOutPair" 419 | ], 420 | "opcode": 51, 421 | "opcode_hex": "0x33" 422 | }, 423 | "CallJSRuntime": { 424 | "args_count": 3, 425 | "args": [ 426 | "OperandType::kIdx", 427 | "OperandType::kReg", 428 | "OperandType::kRegCount" 429 | ], 430 | "opcode": 52, 431 | "opcode_hex": "0x34" 432 | }, 433 | "InvokeIntrinsic": { 434 | "args_count": 3, 435 | "args": [ 436 | "OperandType::kRuntimeId", 437 | "OperandType::kMaybeReg", 438 | "OperandType::kRegCount" 439 | ], 440 | "opcode": 53, 441 | "opcode_hex": "0x35" 442 | }, 443 | "New": { 444 | "args_count": 3, 445 | "args": [ 446 | "OperandType::kReg", 447 | "OperandType::kMaybeReg", 448 | "OperandType::kRegCount" 449 | ], 450 | "opcode": 54, 451 | "opcode_hex": "0x36" 452 | }, 453 | "TestEqual": { 454 | "args_count": 1, 455 | "args": [ 456 | "OperandType::kReg" 457 | ], 458 | "opcode": 55, 459 | "opcode_hex": "0x37" 460 | }, 461 | "TestNotEqual": { 462 | "args_count": 1, 463 | "args": [ 464 | "OperandType::kReg" 465 | ], 466 | "opcode": 56, 467 | "opcode_hex": "0x38" 468 | }, 469 | "TestEqualStrict": { 470 | "args_count": 1, 471 | "args": [ 472 | "OperandType::kReg" 473 | ], 474 | "opcode": 57, 475 | "opcode_hex": "0x39" 476 | }, 477 | "TestLessThan": { 478 | "args_count": 1, 479 | "args": [ 480 | "OperandType::kReg" 481 | ], 482 | "opcode": 58, 483 | "opcode_hex": "0x3a" 484 | }, 485 | "TestGreaterThan": { 486 | "args_count": 1, 487 | "args": [ 488 | "OperandType::kReg" 489 | ], 490 | "opcode": 59, 491 | "opcode_hex": "0x3b" 492 | }, 493 | "TestLessThanOrEqual": { 494 | "args_count": 1, 495 | "args": [ 496 | "OperandType::kReg" 497 | ], 498 | "opcode": 60, 499 | "opcode_hex": "0x3c" 500 | }, 501 | "TestGreaterThanOrEqual": { 502 | "args_count": 1, 503 | "args": [ 504 | "OperandType::kReg" 505 | ], 506 | "opcode": 61, 507 | "opcode_hex": "0x3d" 508 | }, 509 | "TestInstanceOf": { 510 | "args_count": 1, 511 | "args": [ 512 | "OperandType::kReg" 513 | ], 514 | "opcode": 62, 515 | "opcode_hex": "0x3e" 516 | }, 517 | "TestIn": { 518 | "args_count": 1, 519 | "args": [ 520 | "OperandType::kReg" 521 | ], 522 | "opcode": 63, 523 | "opcode_hex": "0x3f" 524 | }, 525 | "ToName": { 526 | "args_count": 0, 527 | "args": [], 528 | "opcode": 64, 529 | "opcode_hex": "0x40" 530 | }, 531 | "ToNumber": { 532 | "args_count": 0, 533 | "args": [], 534 | "opcode": 65, 535 | "opcode_hex": "0x41" 536 | }, 537 | "ToObject": { 538 | "args_count": 0, 539 | "args": [], 540 | "opcode": 66, 541 | "opcode_hex": "0x42" 542 | }, 543 | "CreateRegExpLiteral": { 544 | "args_count": 3, 545 | "args": [ 546 | "OperandType::kIdx", 547 | "OperandType::kIdx", 548 | "OperandType::kFlag8" 549 | ], 550 | "opcode": 67, 551 | "opcode_hex": "0x43" 552 | }, 553 | "CreateArrayLiteral": { 554 | "args_count": 3, 555 | "args": [ 556 | "OperandType::kIdx", 557 | "OperandType::kIdx", 558 | "OperandType::kFlag8" 559 | ], 560 | "opcode": 68, 561 | "opcode_hex": "0x44" 562 | }, 563 | "CreateObjectLiteral": { 564 | "args_count": 3, 565 | "args": [ 566 | "OperandType::kIdx", 567 | "OperandType::kIdx", 568 | "OperandType::kFlag8" 569 | ], 570 | "opcode": 69, 571 | "opcode_hex": "0x45" 572 | }, 573 | "CreateClosure": { 574 | "args_count": 2, 575 | "args": [ 576 | "OperandType::kIdx", 577 | "OperandType::kFlag8" 578 | ], 579 | "opcode": 70, 580 | "opcode_hex": "0x46" 581 | }, 582 | "CreateMappedArguments": { 583 | "args_count": 0, 584 | "args": [], 585 | "opcode": 71, 586 | "opcode_hex": "0x47" 587 | }, 588 | "CreateUnmappedArguments": { 589 | "args_count": 0, 590 | "args": [], 591 | "opcode": 72, 592 | "opcode_hex": "0x48" 593 | }, 594 | "CreateRestParameter": { 595 | "args_count": 0, 596 | "args": [], 597 | "opcode": 73, 598 | "opcode_hex": "0x49" 599 | }, 600 | "Jump": { 601 | "args_count": 1, 602 | "args": [ 603 | "OperandType::kImm" 604 | ], 605 | "opcode": 74, 606 | "opcode_hex": "0x4a" 607 | }, 608 | "JumpConstant": { 609 | "args_count": 1, 610 | "args": [ 611 | "OperandType::kIdx" 612 | ], 613 | "opcode": 75, 614 | "opcode_hex": "0x4b" 615 | }, 616 | "JumpIfTrue": { 617 | "args_count": 1, 618 | "args": [ 619 | "OperandType::kImm" 620 | ], 621 | "opcode": 76, 622 | "opcode_hex": "0x4c" 623 | }, 624 | "JumpIfTrueConstant": { 625 | "args_count": 1, 626 | "args": [ 627 | "OperandType::kIdx" 628 | ], 629 | "opcode": 77, 630 | "opcode_hex": "0x4d" 631 | }, 632 | "JumpIfFalse": { 633 | "args_count": 1, 634 | "args": [ 635 | "OperandType::kImm" 636 | ], 637 | "opcode": 78, 638 | "opcode_hex": "0x4e" 639 | }, 640 | "JumpIfFalseConstant": { 641 | "args_count": 1, 642 | "args": [ 643 | "OperandType::kIdx" 644 | ], 645 | "opcode": 79, 646 | "opcode_hex": "0x4f" 647 | }, 648 | "JumpIfToBooleanTrue": { 649 | "args_count": 1, 650 | "args": [ 651 | "OperandType::kImm" 652 | ], 653 | "opcode": 80, 654 | "opcode_hex": "0x50" 655 | }, 656 | "JumpIfToBooleanTrueConstant": { 657 | "args_count": 1, 658 | "args": [ 659 | "OperandType::kIdx" 660 | ], 661 | "opcode": 81, 662 | "opcode_hex": "0x51" 663 | }, 664 | "JumpIfToBooleanFalse": { 665 | "args_count": 1, 666 | "args": [ 667 | "OperandType::kImm" 668 | ], 669 | "opcode": 82, 670 | "opcode_hex": "0x52" 671 | }, 672 | "JumpIfToBooleanFalseConstant": { 673 | "args_count": 1, 674 | "args": [ 675 | "OperandType::kIdx" 676 | ], 677 | "opcode": 83, 678 | "opcode_hex": "0x53" 679 | }, 680 | "JumpIfNull": { 681 | "args_count": 1, 682 | "args": [ 683 | "OperandType::kImm" 684 | ], 685 | "opcode": 84, 686 | "opcode_hex": "0x54" 687 | }, 688 | "JumpIfNullConstant": { 689 | "args_count": 1, 690 | "args": [ 691 | "OperandType::kIdx" 692 | ], 693 | "opcode": 85, 694 | "opcode_hex": "0x55" 695 | }, 696 | "JumpIfUndefined": { 697 | "args_count": 1, 698 | "args": [ 699 | "OperandType::kImm" 700 | ], 701 | "opcode": 86, 702 | "opcode_hex": "0x56" 703 | }, 704 | "JumpIfUndefinedConstant": { 705 | "args_count": 1, 706 | "args": [ 707 | "OperandType::kIdx" 708 | ], 709 | "opcode": 87, 710 | "opcode_hex": "0x57" 711 | }, 712 | "JumpIfNotHole": { 713 | "args_count": 1, 714 | "args": [ 715 | "OperandType::kImm" 716 | ], 717 | "opcode": 88, 718 | "opcode_hex": "0x58" 719 | }, 720 | "JumpIfNotHoleConstant": { 721 | "args_count": 1, 722 | "args": [ 723 | "OperandType::kIdx" 724 | ], 725 | "opcode": 89, 726 | "opcode_hex": "0x59" 727 | }, 728 | "ForInPrepare": { 729 | "args_count": 1, 730 | "args": [ 731 | "OperandType::kRegOutTriple" 732 | ], 733 | "opcode": 90, 734 | "opcode_hex": "0x5a" 735 | }, 736 | "ForInDone": { 737 | "args_count": 2, 738 | "args": [ 739 | "OperandType::kReg", 740 | "OperandType::kReg" 741 | ], 742 | "opcode": 91, 743 | "opcode_hex": "0x5b" 744 | }, 745 | "ForInNext": { 746 | "args_count": 4, 747 | "args": [ 748 | "OperandType::kReg", 749 | "OperandType::kReg", 750 | "OperandType::kRegPair", 751 | "OperandType::kIdx" 752 | ], 753 | "opcode": 92, 754 | "opcode_hex": "0x5c" 755 | }, 756 | "ForInStep": { 757 | "args_count": 1, 758 | "args": [ 759 | "OperandType::kReg" 760 | ], 761 | "opcode": 93, 762 | "opcode_hex": "0x5d" 763 | }, 764 | "StackCheck": { 765 | "args_count": 0, 766 | "args": [], 767 | "opcode": 94, 768 | "opcode_hex": "0x5e" 769 | }, 770 | "Throw": { 771 | "args_count": 0, 772 | "args": [], 773 | "opcode": 95, 774 | "opcode_hex": "0x5f" 775 | }, 776 | "ReThrow": { 777 | "args_count": 0, 778 | "args": [], 779 | "opcode": 96, 780 | "opcode_hex": "0x60" 781 | }, 782 | "Return": { 783 | "args_count": 0, 784 | "args": [], 785 | "opcode": 97, 786 | "opcode_hex": "0x61" 787 | }, 788 | "Debugger": { 789 | "args_count": 0, 790 | "args": [], 791 | "opcode": 98, 792 | "opcode_hex": "0x62" 793 | }, 794 | "Illegal": { 795 | "args_count": 0, 796 | "args": [], 797 | "opcode": 99, 798 | "opcode_hex": "0x63" 799 | } 800 | } --------------------------------------------------------------------------------