...

Source file src/github.com/bytedance/sonic/internal/native/avx2/native_subr_amd64.go

Documentation: github.com/bytedance/sonic/internal/native/avx2

     1  // +build !noasm !appengine
     2  // Code generated by asm2asm, DO NOT EDIT.
     3  
     4  package avx2
     5  
     6  import (
     7  	`github.com/bytedance/sonic/loader`
     8  )
     9  
    10  const (
    11      _entry__f32toa = 34640
    12      _entry__f64toa = 368
    13      _entry__format_significand = 39440
    14      _entry__format_integer = 3616
    15      _entry__fsm_exec = 22128
    16      _entry__advance_ns = 17856
    17      _entry__advance_string = 18592
    18      _entry__advance_string_default = 41024
    19      _entry__do_skip_number = 24624
    20      _entry__get_by_path = 29616
    21      _entry__skip_one_fast = 26736
    22      _entry__unescape = 41824
    23      _entry__unhex16_is = 11376
    24      _entry__html_escape = 11712
    25      _entry__i64toa = 4048
    26      _entry__u64toa = 4320
    27      _entry__lspace = 64
    28      _entry__quote = 5872
    29      _entry__skip_array = 22080
    30      _entry__skip_number = 26128
    31      _entry__skip_object = 24048
    32      _entry__skip_one = 26304
    33      _entry__unquote = 8816
    34      _entry__validate_one = 26368
    35      _entry__validate_utf8 = 30960
    36      _entry__validate_utf8_fast = 31920
    37      _entry__value = 16320
    38      _entry__vnumber = 19680
    39      _entry__atof_eisel_lemire64 = 13760
    40      _entry__atof_native = 15712
    41      _entry__decimal_to_f64 = 14240
    42      _entry__left_shift = 39920
    43      _entry__right_shift = 40464
    44      _entry__vsigned = 21328
    45      _entry__vstring = 18352
    46      _entry__vunsigned = 21696
    47  )
    48  
    49  const (
    50      _stack__f32toa = 64
    51      _stack__f64toa = 80
    52      _stack__format_significand = 24
    53      _stack__format_integer = 16
    54      _stack__fsm_exec = 136
    55      _stack__advance_ns = 8
    56      _stack__advance_string = 48
    57      _stack__advance_string_default = 48
    58      _stack__do_skip_number = 40
    59      _stack__get_by_path = 304
    60      _stack__skip_one_fast = 184
    61      _stack__unescape = 64
    62      _stack__unhex16_is = 8
    63      _stack__html_escape = 72
    64      _stack__i64toa = 16
    65      _stack__u64toa = 8
    66      _stack__lspace = 8
    67      _stack__quote = 72
    68      _stack__skip_array = 144
    69      _stack__skip_number = 96
    70      _stack__skip_object = 144
    71      _stack__skip_one = 144
    72      _stack__unquote = 112
    73      _stack__validate_one = 144
    74      _stack__validate_utf8 = 48
    75      _stack__validate_utf8_fast = 176
    76      _stack__value = 352
    77      _stack__vnumber = 264
    78      _stack__atof_eisel_lemire64 = 40
    79      _stack__atof_native = 144
    80      _stack__decimal_to_f64 = 88
    81      _stack__left_shift = 32
    82      _stack__right_shift = 16
    83      _stack__vsigned = 16
    84      _stack__vstring = 104
    85      _stack__vunsigned = 24
    86  )
    87  
    88  const (
    89      _size__f32toa = 3792
    90      _size__f64toa = 3248
    91      _size__format_significand = 480
    92      _size__format_integer = 432
    93      _size__fsm_exec = 1380
    94      _size__advance_ns = 496
    95      _size__advance_string = 1040
    96      _size__advance_string_default = 800
    97      _size__do_skip_number = 1300
    98      _size__get_by_path = 1344
    99      _size__skip_one_fast = 2360
   100      _size__unescape = 704
   101      _size__unhex16_is = 144
   102      _size__html_escape = 2048
   103      _size__i64toa = 272
   104      _size__u64toa = 1408
   105      _size__lspace = 256
   106      _size__quote = 2896
   107      _size__skip_array = 48
   108      _size__skip_number = 160
   109      _size__skip_object = 48
   110      _size__skip_one = 48
   111      _size__unquote = 2560
   112      _size__validate_one = 64
   113      _size__validate_utf8 = 688
   114      _size__validate_utf8_fast = 2672
   115      _size__value = 992
   116      _size__vnumber = 1648
   117      _size__atof_eisel_lemire64 = 416
   118      _size__atof_native = 608
   119      _size__decimal_to_f64 = 1472
   120      _size__left_shift = 544
   121      _size__right_shift = 496
   122      _size__vsigned = 368
   123      _size__vstring = 144
   124      _size__vunsigned = 368
   125  )
   126  
   127  var (
   128      _pcsp__f32toa = [][2]uint32{
   129          {1, 0},
   130          {4, 8},
   131          {6, 16},
   132          {8, 24},
   133          {10, 32},
   134          {12, 40},
   135          {13, 48},
   136          {3734, 64},
   137          {3738, 48},
   138          {3739, 40},
   139          {3741, 32},
   140          {3743, 24},
   141          {3745, 16},
   142          {3747, 8},
   143          {3751, 0},
   144          {3781, 64},
   145      }
   146      _pcsp__f64toa = [][2]uint32{
   147          {1, 0},
   148          {4, 8},
   149          {6, 16},
   150          {8, 24},
   151          {10, 32},
   152          {12, 40},
   153          {13, 48},
   154          {3124, 56},
   155          {3128, 48},
   156          {3129, 40},
   157          {3131, 32},
   158          {3133, 24},
   159          {3135, 16},
   160          {3137, 8},
   161          {3141, 0},
   162          {3234, 56},
   163      }
   164      _pcsp__format_significand = [][2]uint32{
   165          {1, 0},
   166          {4, 8},
   167          {6, 16},
   168          {468, 24},
   169          {469, 16},
   170          {471, 8},
   171          {473, 0},
   172      }
   173      _pcsp__format_integer = [][2]uint32{
   174          {1, 0},
   175          {4, 8},
   176          {412, 16},
   177          {413, 8},
   178          {414, 0},
   179          {423, 16},
   180          {424, 8},
   181          {426, 0},
   182      }
   183      _pcsp__fsm_exec = [][2]uint32{
   184          {1, 0},
   185          {4, 8},
   186          {6, 16},
   187          {8, 24},
   188          {10, 32},
   189          {12, 40},
   190          {13, 48},
   191          {1017, 88},
   192          {1021, 48},
   193          {1022, 40},
   194          {1024, 32},
   195          {1026, 24},
   196          {1028, 16},
   197          {1030, 8},
   198          {1031, 0},
   199          {1380, 88},
   200      }
   201      _pcsp__advance_ns = [][2]uint32{
   202          {1, 0},
   203          {442, 8},
   204          {446, 0},
   205          {467, 8},
   206          {471, 0},
   207          {489, 8},
   208      }
   209      _pcsp__advance_string = [][2]uint32{
   210          {14, 0},
   211          {18, 8},
   212          {20, 16},
   213          {22, 24},
   214          {24, 32},
   215          {26, 40},
   216          {396, 48},
   217          {397, 40},
   218          {399, 32},
   219          {401, 24},
   220          {403, 16},
   221          {405, 8},
   222          {409, 0},
   223          {1031, 48},
   224      }
   225      _pcsp__advance_string_default = [][2]uint32{
   226          {1, 0},
   227          {4, 8},
   228          {6, 16},
   229          {8, 24},
   230          {10, 32},
   231          {12, 40},
   232          {314, 48},
   233          {315, 40},
   234          {317, 32},
   235          {319, 24},
   236          {321, 16},
   237          {323, 8},
   238          {327, 0},
   239          {786, 48},
   240      }
   241      _pcsp__do_skip_number = [][2]uint32{
   242          {1, 0},
   243          {4, 8},
   244          {6, 16},
   245          {8, 24},
   246          {10, 32},
   247          {1253, 40},
   248          {1254, 32},
   249          {1256, 24},
   250          {1258, 16},
   251          {1260, 8},
   252          {1264, 0},
   253          {1300, 40},
   254      }
   255      _pcsp__get_by_path = [][2]uint32{
   256          {1, 0},
   257          {4, 8},
   258          {6, 16},
   259          {8, 24},
   260          {10, 32},
   261          {12, 40},
   262          {13, 48},
   263          {1293, 120},
   264          {1297, 48},
   265          {1298, 40},
   266          {1300, 32},
   267          {1302, 24},
   268          {1304, 16},
   269          {1306, 8},
   270          {1307, 0},
   271          {1344, 120},
   272      }
   273      _pcsp__skip_one_fast = [][2]uint32{
   274          {1, 0},
   275          {4, 8},
   276          {6, 16},
   277          {8, 24},
   278          {10, 32},
   279          {12, 40},
   280          {13, 48},
   281          {396, 176},
   282          {397, 168},
   283          {399, 160},
   284          {401, 152},
   285          {403, 144},
   286          {405, 136},
   287          {409, 128},
   288          {2360, 176},
   289      }
   290      _pcsp__unescape = [][2]uint32{
   291          {1, 0},
   292          {4, 8},
   293          {6, 16},
   294          {8, 24},
   295          {10, 32},
   296          {12, 40},
   297          {13, 48},
   298          {246, 56},
   299          {250, 48},
   300          {251, 40},
   301          {253, 32},
   302          {255, 24},
   303          {257, 16},
   304          {259, 8},
   305          {260, 0},
   306          {695, 56},
   307      }
   308      _pcsp__unhex16_is = [][2]uint32{
   309          {1, 0},
   310          {35, 8},
   311          {36, 0},
   312          {62, 8},
   313          {63, 0},
   314          {97, 8},
   315          {98, 0},
   316          {121, 8},
   317          {123, 0},
   318      }
   319      _pcsp__html_escape = [][2]uint32{
   320          {1, 0},
   321          {4, 8},
   322          {6, 16},
   323          {8, 24},
   324          {10, 32},
   325          {12, 40},
   326          {13, 48},
   327          {2017, 72},
   328          {2021, 48},
   329          {2022, 40},
   330          {2024, 32},
   331          {2026, 24},
   332          {2028, 16},
   333          {2030, 8},
   334          {2035, 0},
   335      }
   336      _pcsp__i64toa = [][2]uint32{
   337          {1, 0},
   338          {171, 8},
   339          {172, 0},
   340          {207, 8},
   341          {208, 0},
   342          {222, 8},
   343          {223, 0},
   344          {247, 8},
   345          {248, 0},
   346          {253, 8},
   347          {259, 0},
   348      }
   349      _pcsp__u64toa = [][2]uint32{
   350          {13, 0},
   351          {162, 8},
   352          {163, 0},
   353          {175, 8},
   354          {240, 0},
   355          {498, 8},
   356          {499, 0},
   357          {519, 8},
   358          {592, 0},
   359          {852, 8},
   360          {928, 0},
   361          {1376, 8},
   362          {1378, 0},
   363      }
   364      _pcsp__lspace = [][2]uint32{
   365          {1, 0},
   366          {186, 8},
   367          {190, 0},
   368          {199, 8},
   369          {203, 0},
   370          {210, 8},
   371          {214, 0},
   372          {232, 8},
   373      }
   374      _pcsp__quote = [][2]uint32{
   375          {1, 0},
   376          {4, 8},
   377          {6, 16},
   378          {8, 24},
   379          {10, 32},
   380          {12, 40},
   381          {13, 48},
   382          {2828, 72},
   383          {2832, 48},
   384          {2833, 40},
   385          {2835, 32},
   386          {2837, 24},
   387          {2839, 16},
   388          {2841, 8},
   389          {2845, 0},
   390          {2876, 72},
   391      }
   392      _pcsp__skip_array = [][2]uint32{
   393          {1, 0},
   394          {28, 8},
   395          {34, 0},
   396      }
   397      _pcsp__skip_number = [][2]uint32{
   398          {1, 0},
   399          {4, 8},
   400          {6, 16},
   401          {8, 24},
   402          {10, 32},
   403          {12, 40},
   404          {13, 48},
   405          {107, 56},
   406          {111, 48},
   407          {112, 40},
   408          {114, 32},
   409          {116, 24},
   410          {118, 16},
   411          {120, 8},
   412          {121, 0},
   413          {145, 56},
   414      }
   415      _pcsp__skip_object = [][2]uint32{
   416          {1, 0},
   417          {28, 8},
   418          {34, 0},
   419      }
   420      _pcsp__skip_one = [][2]uint32{
   421          {1, 0},
   422          {28, 8},
   423          {34, 0},
   424      }
   425      _pcsp__unquote = [][2]uint32{
   426          {1, 0},
   427          {4, 8},
   428          {6, 16},
   429          {8, 24},
   430          {10, 32},
   431          {12, 40},
   432          {13, 48},
   433          {1836, 104},
   434          {1840, 48},
   435          {1841, 40},
   436          {1843, 32},
   437          {1845, 24},
   438          {1847, 16},
   439          {1849, 8},
   440          {1853, 0},
   441          {2554, 104},
   442      }
   443      _pcsp__validate_one = [][2]uint32{
   444          {1, 0},
   445          {33, 8},
   446          {39, 0},
   447      }
   448      _pcsp__validate_utf8 = [][2]uint32{
   449          {1, 0},
   450          {4, 8},
   451          {6, 16},
   452          {8, 24},
   453          {10, 32},
   454          {11, 40},
   455          {639, 48},
   456          {643, 40},
   457          {644, 32},
   458          {646, 24},
   459          {648, 16},
   460          {650, 8},
   461          {651, 0},
   462          {682, 48},
   463      }
   464      _pcsp__validate_utf8_fast = [][2]uint32{
   465          {1, 0},
   466          {4, 8},
   467          {5, 16},
   468          {1706, 176},
   469          {1707, 168},
   470          {1711, 160},
   471          {2003, 176},
   472          {2004, 168},
   473          {2008, 160},
   474          {2656, 176},
   475      }
   476      _pcsp__value = [][2]uint32{
   477          {1, 0},
   478          {4, 8},
   479          {6, 16},
   480          {8, 24},
   481          {10, 32},
   482          {12, 40},
   483          {13, 48},
   484          {974, 88},
   485          {978, 48},
   486          {979, 40},
   487          {981, 32},
   488          {983, 24},
   489          {985, 16},
   490          {987, 8},
   491          {992, 0},
   492      }
   493      _pcsp__vnumber = [][2]uint32{
   494          {1, 0},
   495          {4, 8},
   496          {6, 16},
   497          {8, 24},
   498          {10, 32},
   499          {12, 40},
   500          {13, 48},
   501          {150, 120},
   502          {154, 48},
   503          {155, 40},
   504          {157, 32},
   505          {159, 24},
   506          {161, 16},
   507          {163, 8},
   508          {164, 0},
   509          {1638, 120},
   510      }
   511      _pcsp__atof_eisel_lemire64 = [][2]uint32{
   512          {1, 0},
   513          {4, 8},
   514          {6, 16},
   515          {8, 24},
   516          {10, 32},
   517          {315, 40},
   518          {316, 32},
   519          {318, 24},
   520          {320, 16},
   521          {322, 8},
   522          {323, 0},
   523          {387, 40},
   524      }
   525      _pcsp__atof_native = [][2]uint32{
   526          {1, 0},
   527          {4, 8},
   528          {596, 56},
   529          {600, 8},
   530          {602, 0},
   531      }
   532      _pcsp__decimal_to_f64 = [][2]uint32{
   533          {1, 0},
   534          {4, 8},
   535          {6, 16},
   536          {8, 24},
   537          {10, 32},
   538          {12, 40},
   539          {13, 48},
   540          {1431, 56},
   541          {1435, 48},
   542          {1436, 40},
   543          {1438, 32},
   544          {1440, 24},
   545          {1442, 16},
   546          {1444, 8},
   547          {1448, 0},
   548          {1460, 56},
   549      }
   550      _pcsp__left_shift = [][2]uint32{
   551          {1, 0},
   552          {4, 8},
   553          {6, 16},
   554          {8, 24},
   555          {418, 32},
   556          {419, 24},
   557          {421, 16},
   558          {423, 8},
   559          {424, 0},
   560          {539, 32},
   561      }
   562      _pcsp__right_shift = [][2]uint32{
   563          {1, 0},
   564          {4, 8},
   565          {452, 16},
   566          {453, 8},
   567          {454, 0},
   568          {462, 16},
   569          {463, 8},
   570          {464, 0},
   571          {472, 16},
   572          {473, 8},
   573          {475, 0},
   574      }
   575      _pcsp__vsigned = [][2]uint32{
   576          {1, 0},
   577          {4, 8},
   578          {113, 16},
   579          {114, 8},
   580          {115, 0},
   581          {126, 16},
   582          {127, 8},
   583          {128, 0},
   584          {278, 16},
   585          {279, 8},
   586          {280, 0},
   587          {284, 16},
   588          {285, 8},
   589          {286, 0},
   590          {340, 16},
   591          {341, 8},
   592          {342, 0},
   593          {353, 16},
   594          {354, 8},
   595          {356, 0},
   596      }
   597      _pcsp__vstring = [][2]uint32{
   598          {1, 0},
   599          {4, 8},
   600          {6, 16},
   601          {8, 24},
   602          {10, 32},
   603          {11, 40},
   604          {105, 56},
   605          {109, 40},
   606          {110, 32},
   607          {112, 24},
   608          {114, 16},
   609          {116, 8},
   610          {118, 0},
   611      }
   612      _pcsp__vunsigned = [][2]uint32{
   613          {1, 0},
   614          {4, 8},
   615          {6, 16},
   616          {74, 24},
   617          {75, 16},
   618          {77, 8},
   619          {78, 0},
   620          {89, 24},
   621          {90, 16},
   622          {92, 8},
   623          {93, 0},
   624          {116, 24},
   625          {117, 16},
   626          {119, 8},
   627          {120, 0},
   628          {281, 24},
   629          {282, 16},
   630          {284, 8},
   631          {285, 0},
   632          {336, 24},
   633          {337, 16},
   634          {339, 8},
   635          {340, 0},
   636          {348, 24},
   637          {349, 16},
   638          {351, 8},
   639          {353, 0},
   640      }
   641  )
   642  
   643  var Funcs = []loader.CFunc{
   644      {"__native_entry__", 0, 67, 0, nil},
   645      {"_f32toa", _entry__f32toa, _size__f32toa, _stack__f32toa, _pcsp__f32toa},
   646      {"_f64toa", _entry__f64toa, _size__f64toa, _stack__f64toa, _pcsp__f64toa},
   647      {"_format_significand", _entry__format_significand, _size__format_significand, _stack__format_significand, _pcsp__format_significand},
   648      {"_format_integer", _entry__format_integer, _size__format_integer, _stack__format_integer, _pcsp__format_integer},
   649      {"_fsm_exec", _entry__fsm_exec, _size__fsm_exec, _stack__fsm_exec, _pcsp__fsm_exec},
   650      {"_advance_ns", _entry__advance_ns, _size__advance_ns, _stack__advance_ns, _pcsp__advance_ns},
   651      {"_advance_string", _entry__advance_string, _size__advance_string, _stack__advance_string, _pcsp__advance_string},
   652      {"_advance_string_default", _entry__advance_string_default, _size__advance_string_default, _stack__advance_string_default, _pcsp__advance_string_default},
   653      {"_do_skip_number", _entry__do_skip_number, _size__do_skip_number, _stack__do_skip_number, _pcsp__do_skip_number},
   654      {"_get_by_path", _entry__get_by_path, _size__get_by_path, _stack__get_by_path, _pcsp__get_by_path},
   655      {"_skip_one_fast", _entry__skip_one_fast, _size__skip_one_fast, _stack__skip_one_fast, _pcsp__skip_one_fast},
   656      {"_unescape", _entry__unescape, _size__unescape, _stack__unescape, _pcsp__unescape},
   657      {"_unhex16_is", _entry__unhex16_is, _size__unhex16_is, _stack__unhex16_is, _pcsp__unhex16_is},
   658      {"_html_escape", _entry__html_escape, _size__html_escape, _stack__html_escape, _pcsp__html_escape},
   659      {"_i64toa", _entry__i64toa, _size__i64toa, _stack__i64toa, _pcsp__i64toa},
   660      {"_u64toa", _entry__u64toa, _size__u64toa, _stack__u64toa, _pcsp__u64toa},
   661      {"_lspace", _entry__lspace, _size__lspace, _stack__lspace, _pcsp__lspace},
   662      {"_quote", _entry__quote, _size__quote, _stack__quote, _pcsp__quote},
   663      {"_skip_array", _entry__skip_array, _size__skip_array, _stack__skip_array, _pcsp__skip_array},
   664      {"_skip_number", _entry__skip_number, _size__skip_number, _stack__skip_number, _pcsp__skip_number},
   665      {"_skip_object", _entry__skip_object, _size__skip_object, _stack__skip_object, _pcsp__skip_object},
   666      {"_skip_one", _entry__skip_one, _size__skip_one, _stack__skip_one, _pcsp__skip_one},
   667      {"_unquote", _entry__unquote, _size__unquote, _stack__unquote, _pcsp__unquote},
   668      {"_validate_one", _entry__validate_one, _size__validate_one, _stack__validate_one, _pcsp__validate_one},
   669      {"_validate_utf8", _entry__validate_utf8, _size__validate_utf8, _stack__validate_utf8, _pcsp__validate_utf8},
   670      {"_validate_utf8_fast", _entry__validate_utf8_fast, _size__validate_utf8_fast, _stack__validate_utf8_fast, _pcsp__validate_utf8_fast},
   671      {"_value", _entry__value, _size__value, _stack__value, _pcsp__value},
   672      {"_vnumber", _entry__vnumber, _size__vnumber, _stack__vnumber, _pcsp__vnumber},
   673      {"_atof_eisel_lemire64", _entry__atof_eisel_lemire64, _size__atof_eisel_lemire64, _stack__atof_eisel_lemire64, _pcsp__atof_eisel_lemire64},
   674      {"_atof_native", _entry__atof_native, _size__atof_native, _stack__atof_native, _pcsp__atof_native},
   675      {"_decimal_to_f64", _entry__decimal_to_f64, _size__decimal_to_f64, _stack__decimal_to_f64, _pcsp__decimal_to_f64},
   676      {"_left_shift", _entry__left_shift, _size__left_shift, _stack__left_shift, _pcsp__left_shift},
   677      {"_right_shift", _entry__right_shift, _size__right_shift, _stack__right_shift, _pcsp__right_shift},
   678      {"_vsigned", _entry__vsigned, _size__vsigned, _stack__vsigned, _pcsp__vsigned},
   679      {"_vstring", _entry__vstring, _size__vstring, _stack__vstring, _pcsp__vstring},
   680      {"_vunsigned", _entry__vunsigned, _size__vunsigned, _stack__vunsigned, _pcsp__vunsigned},
   681  }
   682  

View as plain text