github.com/cloudwego/dynamicgo@v0.2.6-0.20240519101509-707f41b6b834/internal/native/avx/native_subr_amd64.go (about) 1 // +build !noasm !appengine 2 // Code generated by asm2asm, DO NOT EDIT. 3 4 package avx 5 6 import ( 7 `github.com/bytedance/sonic/loader` 8 ) 9 10 const ( 11 _entry__f64toa = 480 12 _entry__format_significand = 48672 13 _entry__format_integer = 3328 14 _entry__hm_get = 27776 15 _entry__i64toa = 3760 16 _entry__u64toa = 3872 17 _entry__j2t_fsm_exec = 39408 18 _entry__advance_ns = 12672 19 _entry__fsm_exec = 19376 20 _entry__validate_string = 21568 21 _entry__utf8_validate = 22912 22 _entry__advance_string = 14880 23 _entry__skip_number = 18160 24 _entry__j2t_number = 34352 25 _entry__vnumber = 15872 26 _entry__atof_eisel_lemire64 = 10448 27 _entry__atof_native = 12000 28 _entry__decimal_to_f64 = 10816 29 _entry__right_shift = 49632 30 _entry__left_shift = 49136 31 _entry__j2t_string = 34944 32 _entry__unquote = 6864 33 _entry__b64decode = 24208 34 _entry__j2t_field_vm = 37712 35 _entry__tb_write_default_or_empty = 31200 36 _entry__j2t_write_unset_fields = 33488 37 _entry__j2t_find_field_key = 36688 38 _entry__quote = 5152 39 _entry__tb_skip = 47632 40 _entry__tb_write_i64 = 29328 41 _entry__trie_get = 28592 42 ) 43 44 const ( 45 _stack__f64toa = 80 46 _stack__format_significand = 24 47 _stack__format_integer = 16 48 _stack__hm_get = 16 49 _stack__i64toa = 16 50 _stack__u64toa = 8 51 _stack__j2t_fsm_exec = 592 52 _stack__advance_ns = 16 53 _stack__fsm_exec = 208 54 _stack__validate_string = 120 55 _stack__utf8_validate = 32 56 _stack__advance_string = 64 57 _stack__skip_number = 48 58 _stack__j2t_number = 296 59 _stack__vnumber = 240 60 _stack__atof_eisel_lemire64 = 32 61 _stack__atof_native = 136 62 _stack__decimal_to_f64 = 80 63 _stack__right_shift = 8 64 _stack__left_shift = 24 65 _stack__j2t_string = 160 66 _stack__unquote = 88 67 _stack__b64decode = 160 68 _stack__j2t_field_vm = 312 69 _stack__tb_write_default_or_empty = 56 70 _stack__j2t_write_unset_fields = 176 71 _stack__j2t_find_field_key = 32 72 _stack__quote = 56 73 _stack__tb_skip = 48 74 _stack__tb_write_i64 = 8 75 _stack__trie_get = 32 76 ) 77 78 const ( 79 _size__f64toa = 2848 80 _size__format_significand = 464 81 _size__format_integer = 432 82 _size__hm_get = 464 83 _size__i64toa = 48 84 _size__u64toa = 1232 85 _size__j2t_fsm_exec = 7700 86 _size__advance_ns = 688 87 _size__fsm_exec = 1416 88 _size__validate_string = 1344 89 _size__utf8_validate = 416 90 _size__advance_string = 944 91 _size__skip_number = 924 92 _size__j2t_number = 548 93 _size__vnumber = 1536 94 _size__atof_eisel_lemire64 = 368 95 _size__atof_native = 608 96 _size__decimal_to_f64 = 1184 97 _size__right_shift = 400 98 _size__left_shift = 496 99 _size__j2t_string = 848 100 _size__unquote = 2272 101 _size__b64decode = 2832 102 _size__j2t_field_vm = 1632 103 _size__tb_write_default_or_empty = 1092 104 _size__j2t_write_unset_fields = 864 105 _size__j2t_find_field_key = 752 106 _size__quote = 1696 107 _size__tb_skip = 968 108 _size__tb_write_i64 = 64 109 _size__trie_get = 304 110 ) 111 112 var ( 113 _pcsp__f64toa = [][2]uint32{ 114 {1, 0}, 115 {4, 8}, 116 {6, 16}, 117 {8, 24}, 118 {10, 32}, 119 {12, 40}, 120 {13, 48}, 121 {2788, 56}, 122 {2792, 48}, 123 {2793, 40}, 124 {2795, 32}, 125 {2797, 24}, 126 {2799, 16}, 127 {2801, 8}, 128 {2805, 0}, 129 {2843, 56}, 130 } 131 _pcsp__format_significand = [][2]uint32{ 132 {1, 0}, 133 {4, 8}, 134 {6, 16}, 135 {452, 24}, 136 {453, 16}, 137 {455, 8}, 138 {457, 0}, 139 } 140 _pcsp__format_integer = [][2]uint32{ 141 {1, 0}, 142 {4, 8}, 143 {412, 16}, 144 {413, 8}, 145 {414, 0}, 146 {423, 16}, 147 {424, 8}, 148 {426, 0}, 149 } 150 _pcsp__hm_get = [][2]uint32{ 151 {1, 0}, 152 {4, 8}, 153 {387, 16}, 154 {388, 8}, 155 {390, 0}, 156 {450, 16}, 157 {451, 8}, 158 {452, 0}, 159 {458, 16}, 160 {459, 8}, 161 {461, 0}, 162 } 163 _pcsp__i64toa = [][2]uint32{ 164 {14, 0}, 165 {34, 8}, 166 {36, 0}, 167 } 168 _pcsp__u64toa = [][2]uint32{ 169 {1, 0}, 170 {161, 8}, 171 {162, 0}, 172 {457, 8}, 173 {458, 0}, 174 {756, 8}, 175 {757, 0}, 176 {1221, 8}, 177 {1223, 0}, 178 } 179 _pcsp__j2t_fsm_exec = [][2]uint32{ 180 {1, 0}, 181 {4, 8}, 182 {6, 16}, 183 {8, 24}, 184 {10, 32}, 185 {12, 40}, 186 {13, 48}, 187 {6408, 280}, 188 {6415, 48}, 189 {6416, 40}, 190 {6418, 32}, 191 {6420, 24}, 192 {6422, 16}, 193 {6424, 8}, 194 {6428, 0}, 195 {7700, 280}, 196 } 197 _pcsp__advance_ns = [][2]uint32{ 198 {1, 0}, 199 {4, 8}, 200 {659, 16}, 201 {660, 8}, 202 {661, 0}, 203 {685, 16}, 204 {686, 8}, 205 {688, 0}, 206 } 207 _pcsp__fsm_exec = [][2]uint32{ 208 {1, 0}, 209 {4, 8}, 210 {6, 16}, 211 {8, 24}, 212 {10, 32}, 213 {12, 40}, 214 {13, 48}, 215 {1220, 88}, 216 {1224, 48}, 217 {1225, 40}, 218 {1227, 32}, 219 {1229, 24}, 220 {1231, 16}, 221 {1233, 8}, 222 {1234, 0}, 223 {1416, 88}, 224 } 225 _pcsp__validate_string = [][2]uint32{ 226 {1, 0}, 227 {4, 8}, 228 {6, 16}, 229 {8, 24}, 230 {10, 32}, 231 {12, 40}, 232 {13, 48}, 233 {643, 88}, 234 {647, 48}, 235 {648, 40}, 236 {650, 32}, 237 {652, 24}, 238 {654, 16}, 239 {656, 8}, 240 {657, 0}, 241 {1341, 88}, 242 } 243 _pcsp__utf8_validate = [][2]uint32{ 244 {1, 0}, 245 {4, 8}, 246 {6, 16}, 247 {8, 24}, 248 {409, 32}, 249 {410, 24}, 250 {412, 16}, 251 {414, 8}, 252 {416, 0}, 253 } 254 _pcsp__advance_string = [][2]uint32{ 255 {1, 0}, 256 {4, 8}, 257 {6, 16}, 258 {8, 24}, 259 {10, 32}, 260 {12, 40}, 261 {13, 48}, 262 {552, 64}, 263 {556, 48}, 264 {557, 40}, 265 {559, 32}, 266 {561, 24}, 267 {563, 16}, 268 {565, 8}, 269 {566, 0}, 270 {931, 64}, 271 } 272 _pcsp__skip_number = [][2]uint32{ 273 {1, 0}, 274 {4, 8}, 275 {6, 16}, 276 {8, 24}, 277 {10, 32}, 278 {12, 40}, 279 {849, 48}, 280 {850, 40}, 281 {852, 32}, 282 {854, 24}, 283 {856, 16}, 284 {858, 8}, 285 {859, 0}, 286 {924, 48}, 287 } 288 _pcsp__j2t_number = [][2]uint32{ 289 {1, 0}, 290 {4, 8}, 291 {6, 16}, 292 {8, 24}, 293 {10, 32}, 294 {12, 40}, 295 {13, 48}, 296 {531, 56}, 297 {535, 48}, 298 {536, 40}, 299 {538, 32}, 300 {540, 24}, 301 {542, 16}, 302 {544, 8}, 303 {548, 0}, 304 } 305 _pcsp__vnumber = [][2]uint32{ 306 {1, 0}, 307 {4, 8}, 308 {6, 16}, 309 {8, 24}, 310 {10, 32}, 311 {12, 40}, 312 {13, 48}, 313 {787, 104}, 314 {791, 48}, 315 {792, 40}, 316 {794, 32}, 317 {796, 24}, 318 {798, 16}, 319 {800, 8}, 320 {801, 0}, 321 {1531, 104}, 322 } 323 _pcsp__atof_eisel_lemire64 = [][2]uint32{ 324 {1, 0}, 325 {4, 8}, 326 {6, 16}, 327 {8, 24}, 328 {292, 32}, 329 {293, 24}, 330 {295, 16}, 331 {297, 8}, 332 {298, 0}, 333 {362, 32}, 334 } 335 _pcsp__atof_native = [][2]uint32{ 336 {1, 0}, 337 {4, 8}, 338 {587, 56}, 339 {591, 8}, 340 {593, 0}, 341 } 342 _pcsp__decimal_to_f64 = [][2]uint32{ 343 {1, 0}, 344 {4, 8}, 345 {6, 16}, 346 {8, 24}, 347 {10, 32}, 348 {12, 40}, 349 {13, 48}, 350 {1144, 56}, 351 {1148, 48}, 352 {1149, 40}, 353 {1151, 32}, 354 {1153, 24}, 355 {1155, 16}, 356 {1157, 8}, 357 {1158, 0}, 358 {1169, 56}, 359 } 360 _pcsp__right_shift = [][2]uint32{ 361 {1, 0}, 362 {318, 8}, 363 {319, 0}, 364 {387, 8}, 365 {388, 0}, 366 {396, 8}, 367 {398, 0}, 368 } 369 _pcsp__left_shift = [][2]uint32{ 370 {1, 0}, 371 {4, 8}, 372 {6, 16}, 373 {363, 24}, 374 {364, 16}, 375 {366, 8}, 376 {367, 0}, 377 {470, 24}, 378 {471, 16}, 379 {473, 8}, 380 {474, 0}, 381 {486, 24}, 382 } 383 _pcsp__j2t_string = [][2]uint32{ 384 {1, 0}, 385 {4, 8}, 386 {6, 16}, 387 {8, 24}, 388 {10, 32}, 389 {12, 40}, 390 {13, 48}, 391 {638, 72}, 392 {642, 48}, 393 {643, 40}, 394 {645, 32}, 395 {647, 24}, 396 {649, 16}, 397 {651, 8}, 398 {655, 0}, 399 {834, 72}, 400 } 401 _pcsp__unquote = [][2]uint32{ 402 {1, 0}, 403 {4, 8}, 404 {6, 16}, 405 {8, 24}, 406 {10, 32}, 407 {12, 40}, 408 {13, 48}, 409 {1684, 88}, 410 {1688, 48}, 411 {1689, 40}, 412 {1691, 32}, 413 {1693, 24}, 414 {1695, 16}, 415 {1697, 8}, 416 {1698, 0}, 417 {2270, 88}, 418 } 419 _pcsp__b64decode = [][2]uint32{ 420 {1, 0}, 421 {4, 8}, 422 {6, 16}, 423 {8, 24}, 424 {10, 32}, 425 {12, 40}, 426 {13, 48}, 427 {2813, 160}, 428 {2817, 48}, 429 {2818, 40}, 430 {2820, 32}, 431 {2822, 24}, 432 {2824, 16}, 433 {2826, 8}, 434 {2828, 0}, 435 } 436 _pcsp__j2t_field_vm = [][2]uint32{ 437 {1, 0}, 438 {4, 8}, 439 {6, 16}, 440 {8, 24}, 441 {10, 32}, 442 {12, 40}, 443 {13, 48}, 444 {343, 72}, 445 {347, 48}, 446 {348, 40}, 447 {350, 32}, 448 {352, 24}, 449 {354, 16}, 450 {356, 8}, 451 {357, 0}, 452 {669, 72}, 453 {673, 48}, 454 {674, 40}, 455 {676, 32}, 456 {678, 24}, 457 {680, 16}, 458 {682, 8}, 459 {686, 0}, 460 {1632, 72}, 461 } 462 _pcsp__tb_write_default_or_empty = [][2]uint32{ 463 {1, 0}, 464 {4, 8}, 465 {6, 16}, 466 {8, 24}, 467 {10, 32}, 468 {12, 40}, 469 {13, 48}, 470 {1011, 56}, 471 {1015, 48}, 472 {1016, 40}, 473 {1018, 32}, 474 {1020, 24}, 475 {1022, 16}, 476 {1024, 8}, 477 {1028, 0}, 478 {1092, 56}, 479 } 480 _pcsp__j2t_write_unset_fields = [][2]uint32{ 481 {1, 0}, 482 {4, 8}, 483 {6, 16}, 484 {8, 24}, 485 {10, 32}, 486 {12, 40}, 487 {13, 48}, 488 {835, 120}, 489 {839, 48}, 490 {840, 40}, 491 {842, 32}, 492 {844, 24}, 493 {846, 16}, 494 {848, 8}, 495 {850, 0}, 496 } 497 _pcsp__j2t_find_field_key = [][2]uint32{ 498 {1, 0}, 499 {4, 8}, 500 {6, 16}, 501 {8, 24}, 502 {721, 32}, 503 {722, 24}, 504 {724, 16}, 505 {726, 8}, 506 {727, 0}, 507 {738, 32}, 508 } 509 _pcsp__quote = [][2]uint32{ 510 {1, 0}, 511 {4, 8}, 512 {6, 16}, 513 {8, 24}, 514 {10, 32}, 515 {12, 40}, 516 {13, 48}, 517 {1649, 56}, 518 {1653, 48}, 519 {1654, 40}, 520 {1656, 32}, 521 {1658, 24}, 522 {1660, 16}, 523 {1662, 8}, 524 {1663, 0}, 525 {1690, 56}, 526 } 527 _pcsp__tb_skip = [][2]uint32{ 528 {1, 0}, 529 {4, 8}, 530 {6, 16}, 531 {8, 24}, 532 {10, 32}, 533 {12, 40}, 534 {944, 48}, 535 {945, 40}, 536 {947, 32}, 537 {949, 24}, 538 {951, 16}, 539 {953, 8}, 540 {954, 0}, 541 {968, 48}, 542 } 543 _pcsp__tb_write_i64 = [][2]uint32{ 544 {1, 0}, 545 {33, 8}, 546 {34, 0}, 547 {51, 8}, 548 {53, 0}, 549 } 550 _pcsp__trie_get = [][2]uint32{ 551 {1, 0}, 552 {4, 8}, 553 {6, 16}, 554 {8, 24}, 555 {286, 32}, 556 {287, 24}, 557 {289, 16}, 558 {291, 8}, 559 {293, 0}, 560 } 561 ) 562 563 var Funcs = []loader.CFunc{ 564 {"__native_entry__", 0, 67, 0, nil}, 565 {"_f64toa", _entry__f64toa, _size__f64toa, _stack__f64toa, _pcsp__f64toa}, 566 {"_format_significand", _entry__format_significand, _size__format_significand, _stack__format_significand, _pcsp__format_significand}, 567 {"_format_integer", _entry__format_integer, _size__format_integer, _stack__format_integer, _pcsp__format_integer}, 568 {"_hm_get", _entry__hm_get, _size__hm_get, _stack__hm_get, _pcsp__hm_get}, 569 {"_i64toa", _entry__i64toa, _size__i64toa, _stack__i64toa, _pcsp__i64toa}, 570 {"_u64toa", _entry__u64toa, _size__u64toa, _stack__u64toa, _pcsp__u64toa}, 571 {"_j2t_fsm_exec", _entry__j2t_fsm_exec, _size__j2t_fsm_exec, _stack__j2t_fsm_exec, _pcsp__j2t_fsm_exec}, 572 {"_advance_ns", _entry__advance_ns, _size__advance_ns, _stack__advance_ns, _pcsp__advance_ns}, 573 {"_fsm_exec", _entry__fsm_exec, _size__fsm_exec, _stack__fsm_exec, _pcsp__fsm_exec}, 574 {"_validate_string", _entry__validate_string, _size__validate_string, _stack__validate_string, _pcsp__validate_string}, 575 {"_utf8_validate", _entry__utf8_validate, _size__utf8_validate, _stack__utf8_validate, _pcsp__utf8_validate}, 576 {"_advance_string", _entry__advance_string, _size__advance_string, _stack__advance_string, _pcsp__advance_string}, 577 {"_skip_number", _entry__skip_number, _size__skip_number, _stack__skip_number, _pcsp__skip_number}, 578 {"_j2t_number", _entry__j2t_number, _size__j2t_number, _stack__j2t_number, _pcsp__j2t_number}, 579 {"_vnumber", _entry__vnumber, _size__vnumber, _stack__vnumber, _pcsp__vnumber}, 580 {"_atof_eisel_lemire64", _entry__atof_eisel_lemire64, _size__atof_eisel_lemire64, _stack__atof_eisel_lemire64, _pcsp__atof_eisel_lemire64}, 581 {"_atof_native", _entry__atof_native, _size__atof_native, _stack__atof_native, _pcsp__atof_native}, 582 {"_decimal_to_f64", _entry__decimal_to_f64, _size__decimal_to_f64, _stack__decimal_to_f64, _pcsp__decimal_to_f64}, 583 {"_right_shift", _entry__right_shift, _size__right_shift, _stack__right_shift, _pcsp__right_shift}, 584 {"_left_shift", _entry__left_shift, _size__left_shift, _stack__left_shift, _pcsp__left_shift}, 585 {"_j2t_string", _entry__j2t_string, _size__j2t_string, _stack__j2t_string, _pcsp__j2t_string}, 586 {"_unquote", _entry__unquote, _size__unquote, _stack__unquote, _pcsp__unquote}, 587 {"_b64decode", _entry__b64decode, _size__b64decode, _stack__b64decode, _pcsp__b64decode}, 588 {"_j2t_field_vm", _entry__j2t_field_vm, _size__j2t_field_vm, _stack__j2t_field_vm, _pcsp__j2t_field_vm}, 589 {"_tb_write_default_or_empty", _entry__tb_write_default_or_empty, _size__tb_write_default_or_empty, _stack__tb_write_default_or_empty, _pcsp__tb_write_default_or_empty}, 590 {"_j2t_write_unset_fields", _entry__j2t_write_unset_fields, _size__j2t_write_unset_fields, _stack__j2t_write_unset_fields, _pcsp__j2t_write_unset_fields}, 591 {"_j2t_find_field_key", _entry__j2t_find_field_key, _size__j2t_find_field_key, _stack__j2t_find_field_key, _pcsp__j2t_find_field_key}, 592 {"_quote", _entry__quote, _size__quote, _stack__quote, _pcsp__quote}, 593 {"_tb_skip", _entry__tb_skip, _size__tb_skip, _stack__tb_skip, _pcsp__tb_skip}, 594 {"_tb_write_i64", _entry__tb_write_i64, _size__tb_write_i64, _stack__tb_write_i64, _pcsp__tb_write_i64}, 595 {"_trie_get", _entry__trie_get, _size__trie_get, _stack__trie_get, _pcsp__trie_get}, 596 }